Прозрачный прокси и HTTPS с кальмаром
Можно ли использовать прозрачный прокси для фильтрации некоторых доменов без подхода "человек посередине"? Я хотел бы гарантировать проверку сертификата и конфиденциальность пользователя, с другой стороны, я хочу запретить подключение к какому-либо домену.
Возможно ли это с прозрачным прокси? Возможно ли это с squid3?
3 ответа
Прозрачный прокси, по определению, сидит посредник. Клиент не знает, что прокси-сервер существует, и отправляет свои запросы на сайты на основе SSL в качестве TCP SYN на порт назначения 443.
Если вы укажете прокси явно, клиент будет использовать CONNECT
глагол (поскольку он знает, что используется прокси-сервер), на который могут воздействовать списки управления доступом (ACL) Squid.
Ни один прозрачный прокси-сервер не может надежно применить контроль доступа без участия человека в середине. Лучшее, на что вы можете надеяться, - это действовать по IP-адресу назначения, который, честно говоря, просто вызовет у вас головную боль, потому что вам нужно будет постоянно поддерживать список IP-адресов.
Как сказал Эван Андерсон в своем ответе, если вы вручную установите прокси-сервер в браузерах, то они будут заставлять HTTP проходить через прокси-сервер (используя запросы CONNECT), и поскольку имя хоста в этих запросах отправляется в незашифрованном виде, вы сможете применять списки ACL к Это.
Однако в настоящее время нет ничего, что заставляло бы клиентов использовать ваш прокси-сервер, поэтому, хотя вы не можете сделать его прозрачным, вы можете напрямую заблокировать все прямые соединения HTTP/HTTPS и сказать своим пользователям, что им следует использовать прокси-сервер, если они хотят просматривать веб-страницы.,
Мы внедрили HTTPS-фильтрацию с кешем squid, используя SNI. Хорошо работает в прозрачном режиме SSL. ACL также реализованы. Мы интегрировали Squid Box с Cisco ASA в качестве сервера WCCP и уже в производстве.