Я использую HAProxy в качестве обратного прокси для маршрутизации всех моих доменных имен на различные серверы в кластере частных компьютеров. В большинстве случаев трафик представляет собой веб-приложения или API, и для их обслуживания имеет смысл использовать HTTPS. Итак, я создал для этого интерфейс таким образом:
интерфейс Layer7-http-listener
bind *:443 ssl crt /etc/httpd/certs/haproxy.pem
mode http
[...]
У меня также есть один сервер, который ожидает получать зашифрованный трафик TLS и имеет свои собственные сертификаты. Это означает, что мне нужно вернуться к TCP, чтобы данные проходили без дешифрования в HAProxy. Кроме того, в этой ситуации HAProxy не нужно управлять какими-либо сертификатами. Что-то вроде этого:
интерфейсный слой4-слушатель
bind *:443 ssl
mode tcp
[...]
Как новичок, я понимаю, что у HAProxy не может быть 2 фонтанов с похожими привязками, а именно *: 443 здесь.
Как лучше всего справиться с этим, зная, что обе ситуации исходят от разных доменных имен. Пример: httpapp.mydomain.com для слоя 7 и tcpserver.mydomain.com для слоя 4
Я никогда не делал этого сам, но вы могли бы использовать SNI для разделения трафика? Примером является Вот: