我将 ELB 配置为能够提供 SSL 页面,方法是将我的证书放入 ELB 本身。假设 ELB 为来自 www.example.com 的请求提供服务。
同时我需要使用 ssl外部ELB 并直接从服务器提供一些内容,而不通过 ELB。在这种情况下,请求将转到 web.example.com。
我该怎么做才能确保由 ELB 提供的 ssl 已从服务器上卸载?
假设我的网络服务器是 nginx。
谢谢,C
答案1
如果可能的话,我会避免绕过 ELB。我还会避免某个 URL 只能由一个主机提供服务。这是一种构建脆弱系统的反模式。
话虽如此,我明白有时这是不可避免的。如果我要构建基础设施来解决您的问题,我会使用应用程序负载均衡器和两个目标组。一个目标组将包含其中的所有主机,并成为 ALB 的默认目标。第二个目标组将只注册一个主机,我将使用将主机与“web.example.com”匹配的 ALB 规则将流量转发到该目标组。
这使您的架构保持相对干净,并允许您在应用程序成熟时对系统进行调整。
答案2
使用类似:
server {
listen 80;
...
}
server {
listen 443;
ssl on; # etc.
...
}
将您的 ELB 指向 80;将您的 web.example.com 暴露给 443。完成!... 不确定您是否以正确的方式进行此操作。我会重新考虑您的架构/策略,以便在分层方面采取更合理的措施。如果可以的话,您几乎肯定希望避免在您的 Web 服务器上执行 SSL。