У меня только один общедоступный IP-адрес и три Веб-сервер в LAN
. Я хочу перенаправить трафик из WAN
на такой веб-сервер, должен поддерживать перенаправление трафика SSL / TLS
:
https://www.example.com (A Record)===> 1.1.1.1(Public IP) ===> 192.168.1.1(Web 1)
https://www.example.net (A Record)===> 1.1.1.1(Public IP) ===> 192.168.1.2(Web 2)
Может HAProxy закончить эту работу?
гапроксид
, он не предназначен для балансировки http/https. В нашем окружении мы используем nginx
с настроенными восходящими потоками. Также вы можете завершить работу ssl на nginx
и использовать простой http на бэкэнде.. Если у вас только 1 внешний IP, вам нужно будет привязать SAN сертификат к внешней стороне, которая содержит все URL, которые вы хотите направить. Посмотрите на использование ACL для направления трафика. Как видно из https://seanmcgary.com/posts/haproxy---route-by-domain-name (не мой блог). HAProxy - идеальное решение для этого.
Вы можете маршрутизировать на разные бэкэнды для нескольких FQDN, если у вас есть cert/key для сайтов. HA прокси должен иметь возможность расшифровывать трафик и читать заголовок хоста, если только вы не хотите попытаться сделать это с помощью TCP переадресации, но вы теряете возможность делать персистентность. Ваши файлы сертификатов должны быть в формате PEM.
frontend https--in bind 1.1.1.1:443 ssl crt /etc/haproxy/certs mode http option httplog use_backend bk_1 if { hdr_dom(host) -i www.example.com } { dst_port 443 } use_backend bk_2 if { hdr_dom(host) -i apps.example.com } { dst_port 443 } use_backend bk_3 if { hdr_dom(host) -i www.otherdomain.com } { dst_port 443 }