We are happy to announce that Vesta is back under active development as of 25 February 2024. We are working on v1 candidate and expect to engage more with the community over the coming months. We are committed to open source, and we encourage contributors to help us build the future of Vesta.
SSL
-
- Posts: 24
- Joined: Tue Feb 26, 2013 6:10 pm
SSL
При включении SSL, сертификат устанавливается на nginx и открывается порт 443
Но как сделать, чтобы сертификат был только на apache? А nginx только пропускал через себя 443 порт ?
Иными словами, как сделать что бы nginx принимал 443 порт, обрабатывал правила и перенаправлял на apache? Что бы сертификаты стояли только со стороны бэкенда (апаче)
Это мне нужно, если я использую несколько фронтэндов и один бэкенд.
Спасибо.
Но как сделать, чтобы сертификат был только на apache? А nginx только пропускал через себя 443 порт ?
Иными словами, как сделать что бы nginx принимал 443 порт, обрабатывал правила и перенаправлял на apache? Что бы сертификаты стояли только со стороны бэкенда (апаче)
Это мне нужно, если я использую несколько фронтэндов и один бэкенд.
Спасибо.
Re: SSL
читайте подробнее о технологии ssl.toplevelhost wrote:При включении SSL, сертификат устанавливается на nginx и открывается порт 443
Но как сделать, чтобы сертификат был только на apache? А nginx только пропускал через себя 443 порт ?
Иными словами, как сделать что бы nginx принимал 443 порт, обрабатывал правила и перенаправлял на apache? Что бы сертификаты стояли только со стороны бэкенда (апаче)
Это мне нужно, если я использую несколько фронтэндов и один бэкенд.
Спасибо.
SSL реализуется поверх любого другого протокола транспортного уровня, таких как HTTP, FTP, SMTP, NNTP и XMPP.
Сначала устанавливается зашифрованное соединение между клиентом и серером,а затем уже идет диалог HTTP, FTP ...
Т.е. смысла нет устанавливать ssl между nginx и apache, и вто же время пускать незашифрованный трафик клиенту.
И да, еще. Как обстоят дела у весты по поводу ssl сертиффикатов, два разных сертификата ведь не смогут работать на одном сервере? или использовать разные порты? тогда теряем 443 порт как для ссл. Как в этом случае разруливает веста?, на генту вики есть статьи по объоду ограничений, но тогда теряется сама суть ssl.
Re: SSL
ограничения колличества ssl сертификатов существуют для apache с установленным модулем mod_ssl - 1 сервификат на один физический IP, обходится установкой модуля gnu_tlsXakRu wrote:читайте подробнее о технологии ssl.toplevelhost wrote:При включении SSL, сертификат устанавливается на nginx и открывается порт 443
Но как сделать, чтобы сертификат был только на apache? А nginx только пропускал через себя 443 порт ?
Иными словами, как сделать что бы nginx принимал 443 порт, обрабатывал правила и перенаправлял на apache? Что бы сертификаты стояли только со стороны бэкенда (апаче)
Это мне нужно, если я использую несколько фронтэндов и один бэкенд.
Спасибо.
SSL реализуется поверх любого другого протокола транспортного уровня, таких как HTTP, FTP, SMTP, NNTP и XMPP.
Сначала устанавливается зашифрованное соединение между клиентом и серером,а затем уже идет диалог HTTP, FTP ...
Т.е. смысла нет устанавливать ssl между nginx и apache, и вто же время пускать незашифрованный трафик клиенту.
И да, еще. Как обстоят дела у весты по поводу ssl сертиффикатов, два разных сертификата ведь не смогут работать на одном сервере? или использовать разные порты? тогда теряем 443 порт как для ссл. Как в этом случае разруливает веста?, на генту вики есть статьи по объоду ограничений, но тогда теряется сама суть ssl.
nginx изначально использует tls ограничений нет.
Re: SSL
Вы наверное не совсем в теме. Я же писал что ssl устанавливается до того как сервер получит заголовок HOSTNAME
Так же прилагаю выдержку с оф. докeментации nginx
Так же прилагаю выдержку с оф. докeментации nginx
Code: Select all
Выбор HTTPS-сервера по имени
Типичная проблема возникает при настройке двух и более серверов HTTPS, слушающих на одном и том же IP-адресе:
server {
listen 443 ssl;
server_name www.example.com;
ssl_certificate www.example.com.crt;
...
}
server {
listen 443 ssl;
server_name www.example.org;
ssl_certificate www.example.org.crt;
...
}
В такой конфигурации браузер получит сертификат сервера по умолчанию, т.е. www.example.com, независимо от запрашиваемого имени сервера. Это связано с поведением протокола SSL. SSL-соединение устанавливается до того, как браузер посылает HTTP-запрос, и nginx не знает имени запрашиваемого сервера. Следовательно, он лишь может предложить сертификат сервера по умолчанию.
Наиболее старым и надёжным способом решения этой проблемы является назначение каждому HTTPS-серверу своего IP-адреса:
server {
listen 192.168.1.1:443 ssl;
server_name www.example.com;
ssl_certificate www.example.com.crt;
...
}
server {
listen 192.168.1.2:443 ssl;
server_name www.example.org;
ssl_certificate www.example.org.crt;
...
}