2017-02-21 36 views
1

Как настроить HAproxy для нескольких доменов, для нескольких бэкендов при прохождении через SSL?Как настроить SSL-пересылку с несколькими доменами с помощью HAproxy?

Пример в диаграмме для лучшего объяснения:

       backend_domain_a 
domain-a.com-.   .-> 123.123.123.123 
      |   | 
      +-> haproxy -+ 
      |   | backend_domain_b 
domain-b.com-'   '-> 789.789.789.789 

Примечание Каждый сервер бэкенд будет issueing свой собственный сертификат. Отсюда необходимость пересылки SSL.

Я имею такую ​​конфигурацию, но не работает по нескольким причинам (ключевым является недостающий номер порта):

frontend www 
     bind *:80 
     bind *:443 
     option tcplog 

     acl host_domain_a hdr(host) -i domain-a.com 
     acl host_domain_b hdr(host) -i domain-b.com 

     use_backend backend_domain_a if host_domain_a 
     use_backend backend_domain_b if host_domain_b 

backend backend_domain_a 
     server web_a 123.123.123.123 check 

backend backend_domain_b 
     server web_b 789.789.789.789 check 

В других словах, я хочу, чтобы Haxproxy не прекратить SSL.

Первоначально я хотел сделать это с Nginx, но, видимо, он не может выступать в качестве точки без завершающего при чтении детали хоста (хотя может быть доступна в будущих версиях с Ssl preread)

ответ

0

После обширных исследований, не удалось найти правильный способ выполнить эту задачу.

Я закончил с использованием nginx для выполнения требований.