В соответствии с Википедия:
HTTP CONNECT туннелирование
Разновидностью HTTP-туннелирования при использовании прокси-сервера HTTP является использование HTTP-метода «CONNECT».1[2] В этом механизме клиент просит прокси-сервер HTTP перенаправить TCP-соединение в желаемый пункт назначения. Затем сервер устанавливает соединение от имени клиента. После того, как соединение было установлено сервером, прокси-сервер продолжает проксировать поток TCP к клиенту и от него. Обратите внимание, что только первоначальный запрос на соединение является HTTP - после этого сервер просто проксирует установленное TCP-соединение.
Этот механизм позволяет клиенту за HTTP-прокси получать доступ к веб-сайтам с использованием SSL или TLS (например, HTTPS).
Не все прокси-серверы HTTP поддерживают эту функцию, и даже те, которые поддерживают, могут ограничивать поведение (например, разрешая только соединения с портом HTTPS по умолчанию 443 или блокируя трафик, который не является SSL).
У меня вопрос:
Могу ли я заблокировать доступ к веб-сайту, даже если (позже) доступ и трафик HTTPS, но с начальным HTTP-запросом?
Я пытаюсь сделать что-то подобное, но ничего не получается:
acl social_networks dstdomain "/etc/squid3/acls/social_networks.acl"
http_access deny CONNECT social_networks all
Доступ к веб-сайтам в этом ACL все еще работает, хотя я рассматриваю CONNECT
метод.
да, с помощью squid acls можно заблокировать доступ к https-сайтам (для этого мы используем squidguard). Я думаю, что squid использует информацию SNI из современных браузеров.
Но вы не можете сделать это прозрачным (это так, но действительно не рекомендуется тормозить https-соединения таким уродливым и небезопасным способом). Браузеру пользователя необходимо напрямую использовать порт прокси. Лучший способ заставить их - заблокировать маршрутизацию на WAN-интерфейсы или только на порт 443. Один хороший и гибкий способ развернуть настройки прокси-сервера - это автоматическая конфигурация с файлами wpad / pac - особенно, когда не каждое устройство управляется. На управляемых устройствах вы можете использовать gpos и т. Д. Для развертывания настроек прокси.