Назад | Перейти на главную страницу

HAProxy для завершения SSL также отправляет SSL на внутренний сервер

Я хотел бы отключить SSL в HAProxy, произвести некоторые манипуляции с заголовком, переписать URL-адрес, повторно зашифровать трафик и отправить на внутренние серверы как SSL?

Кажется, я не могу найти способ сделать это. Я могу выполнить обычное завершение SSL и отправлять простые HTTP-запросы на бэкэнд. Но мне нужно отправить SSL на бэкэнд.

Я хотел бы иметь следующие возможности:

Если я не завершу SSL на стороне haproxy, я не смогу выполнить перезапись URL.

Мы будем очень благодарны за любую помощь добрых людей.

В haproxy.cfg делать особо нечего. Вы просто настраиваете любые изменения URL-адресов и манипуляции с заголовками, которые хотите, в своем интерфейсе HAProxy, а затем перенаправляете трафик на свой сервер SSL. Вот небольшой пример:

frontend app1_ssl
    bind *:443 ssl crt /etc/haproxy/certs.d/example.com.crt crt /etc/haproxy/certs.d/ no-sslv3

    option http-server-close
    option forwardfor
    http-request add-header X-Forwarded-Proto https
    http-request add-header X-Forwarded-Port 443
   
    # set HTTP Strict Transport Security (HTST) header
    http-response add-header Strict-Transport-Security max-age=15768000

    # some ACLs and URL rewrites...

    default_backend             backend_app1_ssl


backend backend_app1_ssl
    server mybackendserver 127.0.0.1:4433 ssl verify none