我很难理解具有多个后端的 SSL。我可能只需要有关基础设施方面的一般建议。
这是我的情况/问题:
我有三台服务器:
- 主网站
- 托管控制面板
- 开发机
- 反向代理
所有网站都位于 foo.com 上,我想将流量从防火墙分别传递到每个后端。
我正在使用同一网络上的规则反向代理将流量重定向到后端,但我无法让 SSL 正常工作。我将其映射如下:
dev.foo.com 映射到服务器 3。
hosting.foo.com 映射到 2。
否则:
*.foo.com 映射到 1。
我希望 secure.*.foo.com 以相同的方式工作,只是它会将 URL 重写为 SSL 的 https。
我正在研究各种方法,例如通配符 SSL,但没有太多有用的信息。
下面是我的设置的一小部分 ASCII:
|--------|
|Internet|
|--------|
|
|------|
|Router|----*-------*
|------| | |
| | |
| | |
|-------| | |-------|
|R-Proxy| | |Server1|
|-------| | |-------|
|
| |-------|
*---|Server2|
| |-------|
|
| |--------|
*---|Server 3|
|--------|
任何有关基础设施的建议都很好。
答案1
你应该做的只是在反向代理处终止 SSL。这样,你根本不需要更改映射规则。所以:
[internet]---https---[r-proxy]---http---+--[server 1]
|
+--[server 2]
|
+--[server 3]
这可能是最简单的方法。您可以在反向代理上使用通配符 SSL 证书,并将所有非 SSL 流量重定向到 secure.*.foo.com 到 SSL 版本。这可以在您的 Web 服务器配置中控制。
希望这可以帮助。