Bandwidth Manager Использование Squid
Я пытаюсь создать программное обеспечение для распространения через Интернет для интернет-провайдера (интернет-дистрибьютора, школы или других подобных организаций), например, здесь
Он будет иметь ограничения и политики для пользователей по ограничению пропускной способности / скорости / продолжительности и т. Д. В соответствии с их пакетом интернет-соединения. Кроме того, администратор должен иметь возможность отслеживать их скорость и блокировать / разрешать пользователям и обновлять пакеты.
Архитектура похожа на:
Не https клиентский запрос работает нормально. Но запрос https дает SSL_ERROR, как и ожидалось.
Я читал, что Squid не может обрабатывать соединения https в режиме прозрачного прокси, но я не хочу, чтобы пользователи каждый раз устанавливали прокси в своем браузере.
Есть ли другой способ, чтобы мы могли подсчитать весь трафик, включая зашифрованный трафик, используемый пользователем, и соответствующим образом сформировать трафик?
1 ответ
Это не ограничение Squid, это ограничение самого протокола HTTPS. Если вы попытаетесь настроить прозрачный HTTPS-прокси, вам непременно потребуется разорвать канал шифрования, иначе прокси не сможет узнать, какой веб-сайт загрузить. Таким образом, вы в основном выбираете между
- настройка HTTP-прокси в браузерах (что может быть сделано с помощью автоматического обнаружения BTW)
- нарушение безопасности HTTPS путем прекращения канала шифрования на вашем прокси Squid - BumpSSLServerFirst был написан с учетом этого. Чтобы это работало, ваши клиенты должны были бы доверять CA Squid для подписи любого сертификата - он должен быть установлен в качестве доверенного корневого CA на каждом клиенте.
Поскольку установка доверенных сертификатов CA на всех клиентах кажется более трудоемкой, чем просто установка HTTPS-прокси в настройках браузера, это будет иметь смысл, только если вы планируете работать с расшифрованными данными в ACL или для проверки тела запроса / ответа.