Мне сложно обдумать ssl с несколькими бэкэндами. Мне может просто понадобиться совет по инфраструктуре в целом.
Вот мой сценарий / вопрос:
У меня три сервера:
Все веб-сайты расположены на foo.com, и я хочу передавать трафик с моего брандмауэра на каждый сервер соответственно.
Я использую обратный прокси-сервер с правилами в той же сети для перенаправления трафика на бэкэнды, за исключением того, что я не могу заставить SSL работать, чтобы спасти свою жизнь. У меня это отображается следующим образом:
dev.foo.com сопоставляется с сервером 3.
hosting.foo.com соответствует 2.
В противном случае:
* .foo.com соответствует 1.
Я бы хотел, чтобы secure. *. Foo.com работал так же, за исключением того, что URL-адрес будет перезаписан как https для SSL.
Я изучаю различные методы, такие как SSL с подстановочными знаками, но там не так много хорошей информации.
Вот небольшой код ASCII моей настройки:
|--------|
|Internet|
|--------|
|
|------|
|Router|----*-------*
|------| | |
| | |
| | |
|-------| | |-------|
|R-Proxy| | |Server1|
|-------| | |-------|
|
| |-------|
*---|Server2|
| |-------|
|
| |--------|
*---|Server 3|
|--------|
Любые советы по поводу инфраструктуры были бы хороши.
Что вам нужно сделать, так это просто отключить свой SSL на обратном прокси. Таким образом, вам вообще не нужно менять правила отображения. Так:
[internet]---https---[r-proxy]---http---+--[server 1]
|
+--[server 2]
|
+--[server 3]
Это, наверное, самый простой способ сделать это. Вы можете использовать SSL-сертификат с подстановочными знаками на обратном прокси-сервере, а также выполнить перенаправление всего не-SSL-трафика для защиты. *. Foo.com на версию SSL. Это можно контролировать в конфигурации вашего веб-сервера.
Надеюсь это поможет.