CityCat4
@CityCat4
//COPY01 EXEC PGM=IEBGENER

Как увидеть полный URL при HTTPS через ssl_bump?

Занялся тут настройкой ssl_bump на конторском прокси. Прочитал множество документации в тырнете. Что-то даже настроил. Но нет понимания.
Вопросов два:
Первый и самый главный - ssl_bump позволит мне видеть URL так, как он виден по HTTP?
Второй - почему собственно bump не работает? :)
Конфиг такой:
http_port 10.87.1.39:8080 ssl-bump cert=/etc/pki/tls/certs/logsrv_subca.crt key=/etc/pki/tls/private/logsrv_subca.key cipher=kEECDH+AES:kEDH+AES:kRSA+AES:!aNULL:!DSS:!SSLv2 options=NO_SSLv2,NO_SSLv3,SINGLE_DH_USE,SINGLE_ECDH_USE cafile=/etc/pki/tls/certs/ca-bundle.trust.crt dhparams=/etc/pki/tls/private/dhparams.pem tls-dh=prime256v1:/etc/pki/tls/private/dhparams.pem
sslproxy_client_certificate /etc/pki/tls/certs/logsrv_client.crt
sslproxy_client_key /etc/pki/tls/private/logsrv_client.key
sslproxy_options NO_SSLv2,NO_SSLv3,SINGLE_DH_USE
sslproxy_cipher kEECDH+AES:kEDH+AES:kRSA+AES:!aNULL:!DSS:!SSLv2
sslproxy_cafile /etc/pki/tls/certs/ca-bundle.trust.crt
acl step1 at_step SslBump1
ssl_bump peek step1
ssl_bump bump all
#ssl_bump splice all
sslcrtd_program /usr/lib64/squid/ssl_crtd -s /var/lib/ssl_db -M 4MB


Он вполне возможно крив, потому что вот в таком виде не работает нифига - при обращении на банальный гугл все виснет. Работать начинает только когда вместо bump all ставишь splice all.

UPD: Тестирование браузеров на "вшивость". Тестирование проводилось заходом на vk.com через прокси с bump.
FF - Не замечает ваще нифига. Спокойно рисует "зеленый замочек". Можно просмотреть сертификат.
Хром - Значок незащищенного соединения. Сертификат просмотреть нельзя.
Опера - Значок незащищенного соединения. Можно посмотреть сертификат.
ЯБ - Предупреждение во весь экран! Единственный браузер, который углядел, что его дурют и сертификат на vk.com выдан каким-то там logsrv :D Если предупреждение проигнорировать, то сообщает, что это не особо защищенное соединение, так как используется сертификат подписанный SHA-1
  • Вопрос задан
  • 1384 просмотра
Решения вопроса 1
CityCat4
@CityCat4 Автор вопроса, куратор тега Цифровые сертификаты
//COPY01 EXEC PGM=IEBGENER
Ну, в общем, как обычно отвечаю сам себе :)

1. ssl_bump позволяет видеть URL так, как это было бы по HTTP - так что биться за что есть.
2. Почему не работал вариант выше - я так и не понял, но вот рабочий конфиг
http_port 10.87.1.39:8080 ssl-bump generate-host-certificates=on dynamic_cert_mem_cache_size=4MB cert=/etc/pki/tls/certs/logsrv_subca.crt key=/etc/pki/tls/private/logsrv_subca.key cafile=/etc/pki/tls/rootca/dc3-CA.crt cipher=kEECDH+AES:kEDH+AES:kRSA+AES:!aNULL:!DSS:!SSLv2 options=NO_SSLv2,NO_SSLv3,SINGLE_DH_USE,SINGLE_ECDH_USE dhparams=/etc/pki/tls/private/dhparams.pem tls-dh=prime256v1:/etc/pki/tls/private/dhparams.pem
sslproxy_client_certificate /etc/pki/tls/certs/logsrv_client.crt
sslproxy_client_key /etc/pki/tls/private/logsrv_client.key
sslproxy_options NO_SSLv2,NO_SSLv3,SINGLE_DH_USE
sslproxy_cipher kEECDH+AES:kEDH+AES:kRSA+AES:!aNULL:!DSS:!SSLv2
sslproxy_cafile /etc/pki/tls/rootca/dc3-CA.crt
acl step1 at_step SslBump1
ssl_bump peek step1
ssl_bump bump all
sslcrtd_program /usr/lib64/squid/ssl_crtd -s /var/lib/ssl_db -M 4MB
sslcrtd_children 32 startup=5 idle=1


Сертификат logsrv_subca.crt - это на самом деле subCA, то есть
X509v3 Basic Constraints: critical
                CA:TRUE
            X509v3 Key Usage: critical
                Digital Signature, Certificate Sign, CRL Sign


Сертификат dc3-CA.crt - сертификат корневого СA, в котором выпущен logsrv_subca.crt. Его нужно добавить в доверенные корневые сертификаты - и предупреждений о несоответствии сертификатов не будет. Ну, по крайней мере в FF уже проверено (54.0.1).
Еще одно очень важно замечание - параметры в строке http_port предназначены для стороны, работающей в сторону клиента. Параметры sslproxy_* - для стороны, работающей в сторону сервера
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы