Как отключить сертификат ssl и использовать его только для пересылки трафика на порт 443 в Nginx?

Хост А имеет службу https serviceA и предоставляет два IP-адреса для обеспечения высокой доступности。

например Bose [ip1:443] и [ip2:443] направляются в serviceA.

Хост B (не имеет ssl_certificate и ssl_certificate_key) использует прокси-модуль Nginx для проксирования запросов к фактической serviceA. Как просто перенаправить трафик порта 443 на serviceA без проверки SSL? Вот моя конфигурация:

http {
  upstream backend {
    server [ip1]:443;
    server [ip2]:443;
  }

  server {
    listen       443;
    listen       [::]:443;

    location / {
        proxy_pass  https://backend;
    }

  }
}

person fishu    schedule 27.08.2018    source источник
comment
nginx — это HTTP-сервер. Если вы хотите пересылать необработанные байты TCP, вы должны использовать что-то еще.   -  person SLaks    schedule 27.08.2018
comment
Nginx не умеет?   -  person fishu    schedule 27.08.2018
comment
два IP-адреса для высокой доступности Почему? Если узел B со вторым IP-адресом предназначен только для пересылки трафика на узел A, у вас не будет высокой доступности, потому что, если узел A не работает, ничего не работает.   -  person Andrew Henle    schedule 28.08.2018
comment
@ Эндрю Хенле, на самом деле у нас есть два хоста B, которые случайным образом перенаправляют трафик на один из хостов с помощью ECMP.   -  person fishu    schedule 29.08.2018


Ответы (2)


Есть два теоретически возможных способа решить вашу проблему:

  1. Nginx с модулем ngx_stream_ssl_preread

  2. HAproxy (для балансировки) -> proxy_protocol -> Nginx (с SSL-сертификатами)

person mindfl    schedule 27.08.2018
comment
Может ли iptables сделать это? - person fishu; 28.08.2018

Пытаться:

ip6tables -t nat -A PREROUTING -d 2002:xxxx:9a21::1/128 -i sit6to4vip -p tcp --dport 443 -m statistic --mode random --probability .5 -j DNAT --to-destination 2002:xxxx:f6ea::1
ip6tables -t nat -A PREROUTING -d 2002:xxxx:9a21::1/128 -i sit6to4vip -p tcp --dport 443 -m statistic --mode random --probability .5 -j DNAT --to-destination 2002:xxxx:f6e9::1

ip6tables -t nat -A POSTROUTING -d 2002:xxxx:f6ea::1/128 -o sit6to4vip -p tcp --dport 443 -j SNAT --to-source 2002:xxxx:9a21::1
ip6tables -t nat -A POSTROUTING -d 2002:xxxx:f6e9::1/128 -o sit6to4vip -p tcp --dport 443 -j SNAT --to-source 2002:xxxx:9a21::1

это не работает

person fishu    schedule 28.08.2018