Обратный прокси-сервер Squid с SSL

Обратный прокси-сервер Squid с SSL

Я пытаюсь использовать Squid в качестве обратного прокси-сервера перед одним веб-сайтом, чтобы расшифровать SSL на прокси-сервере, а затем зашифровать соединение с веб-сервером (это необходимо для использования Squid в качестве ICAP-клиента для продукта CDR с нулевым доверием).

Я вижу, что для этого требуются две строки конфигурации: https_port 1.2.3.4:443 accelдля прослушивателя и cache_peer 1.2.4.8 parent 443для веб-сервера.

Следуя примерам, которые я нашел здесь и в других местах, я столкнулся с различными ошибками Squid, в частности с этой:

FATAL: No valid signing certificate configured for HTTPS_port

Заведомо рабочая конфигурация для Squid 4.x была бы очень полезна!

решение1

Очевидно, все найденные мной примеры относились к более ранним версиям Squid.

В этой проблеме мой главный вывод заключался в том, что cert=и key=в https_portстроке конфигурации больше не верны, и вместо них нужно использовать tls-cert=и tls-key=.

Итак (для Squid v4.15) мне нужен только сертификат веб-сервера и его закрытый ключ, а также эти строки в squid.conf:

https_port 1.2.3.4:443 accel defaultsite=mysite.com tls-cert=/etc/squid/myserver.pem
cache_peer 1.2.4.8 parent 443 0 no-query originserver login=PASS ssl

Это работает для .PEM, который включает сертификат и незашифрованный закрытый ключ. Если ключ находится в отдельном файле, это должно работать:

https_port 1.2.3.4:443 accel defaultsite=mysite.com tls-cert=/etc/squid/myserver.pem tls-key=/etc/squid/myserver.key
cache_peer 1.2.4.8 parent 443 0 no-query originserver login=PASS ssl

Если этот ключ зашифрован, вам придется либо запустить Squid вручную (например, запустить squid -Nв screenсеансе), либо добавить sslpassword_programстроку конфигурации для указания парольной фразы PEM.

Примечание: Я обнаружил, что строка конфигурации http_port (например http_port 3128) по-прежнему необходима для запуска Squid.

Все директивы файла конфигурации задокументированы здесь:http://www.squid-cache.org/Doc/config/

Связанный контент