LINUX.ORG.RU
ФорумAdmin

HAProxy with SSL Pass-Through

 ,


0

1

Есть 2 сервера NGINX - WEB01 и WEB02. На них установлены сертификаты от внутреннего СА, https://web01(02) успешно заходим.

Настраиваю HAProxy, который бы рандомно балансировал на эти 2 сервера, но при подключении via https получаю ошибку «NET::ERR_CERT_COMMON_NAME_INVALID» (т.е. обращаемся по имени haproxy и попадаем на любой из WEB). Как бы это порешать?

frontend www bind *:443 bind *:80 mode tcp option tcplog default_backend nginx_pool

backend nginx_pool balance roundrobin mode tcp option ssl-hello-chk server web01 10.10.7.22:443 check server web02 10.10.7.23:443 check

либо отключай валидацию сертификата, либо добавь внутренний CA в список системных доверенных

Pinkbyte ★★★★★ ()
Ответ на: комментарий от Pinkbyte

Сертификат от внутреннего СА, он и так априори доверенный. Интересует, что докрутить на стороне haproxy,а не у клиента.

tobey123 ()
Ответ на: комментарий от tobey123

Сертификат от внутреннего СА, он и так априори доверенный

И на клиенте и на сервере?

openssl s_client -host haproxy_server -port haproxy_port

запущенный на сервере с haproxy не выдаёт ошибку валидации?

Интересует, что докрутить на стороне haproxy

Как я уже говорил - либо включить сертификат в доверенные НА сервере с haproxy, либо отключить в haproxy валидацию сертификатов(ssl-server-verify none в секции global)

server web01 10.10.7.22:443

сертификат выписан на какой CN? если не отключать валидацию, то этот CN должен быть указан вместо 10.10.7.22.

Pinkbyte ★★★★★ ()
Последнее исправление: Pinkbyte (всего исправлений: 3)

... сертификаты от внутреннего СА, https://web01(02) ...

... обращаемся по имени haproxy ...

Ну так всё логично же - Вы приходите по имени haproxy, а он Вам отдаёт сертификат с именем web01(02).

Нужно чтобы web01 и web02 ресолвились в IP haproxy.

MumiyTroll ★★ ()
Ответ на: комментарий от MumiyTroll

Да, вы правы, в этом и был затык. Нужно чтобы сервис резолвился в балансер и тогда всё это (в том числе SSL pass-through) будет работать как надо (т.е. терминировать на бэкэндах). Спасибо.

tobey123 ()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.