Рейтинг:0

Как пропускать SSL-трафик на nginx на основе SNI?

флаг us

В моей текущей конфигурации nginx у меня есть несколько

сервер {
  слушать *:443;
  имя_сервера my_server_name;
  ...
}

блоки. Эти блоки управляются сторонним программным обеспечением и не могут быть изменены мной.

Я могу легко добавить еще один домен, который завершается ssl nginx, добавив еще один блок.

Однако я хотел бы добавить домен, который не завершается ssl на этом сервере nginx, а передается на другой хост, который выполняет завершение ssl.Он должен быть обнаружен SNI, как и другие имя сервера конфигурации.

Я подумал о чем-то вроде:

сервер {
    слушать *:443;
    имя_сервера my_project.org;
    proxy_pass 10.1.1.3:443;
}

Однако это приводит к proxy_pass здесь запрещен ошибка.

я читал о потоковый модуль и модуль предварительного чтения ssl потока, но не мог понять, как совместить это с существующими (неизменяемыми) серверными блоками nginx.

Рейтинг:1
флаг us

http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_pass говорит, что proxy_pass разрешено в место расположения, если на месте и limit_except разделы.

Однако, если вы используете сервер блок с TLS, сервер всегда завершает TLS.

Чтобы пройти через TLS, вам нужно использовать транслировать модуль.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.