我是数据中心托管的新手。我会在数据中心(主机托管)托管我的应用程序。我可以只卖我需要的那个。我想使用 SSL 反向代理:
SSL 反向代理 + 负载均衡器 <----> WebServer1 <----> WebServer2
如果我让 SSL 反向代理完成所有 SSL 工作,则 Web 服务器和负载均衡器之间的所有内容都将不安全。
我的问题是:由于我只会从托管服务中购买 3 个机架,如何才能确保 Web 服务器和负载平衡器之间的链接不被内部人员窃取?
谢谢 !
答案1
您是否在托管您的设备或购买托管服务?您提到了托管服务,但如果您担心在执行 SSL 卸载后数据未加密,那么听起来您是在进行托管服务。
对于安全至上的托管服务器(听起来你的情况就是这样),你会坚持物理安全您的设备 - 基本上是锁和钥匙。通过这样做并确保您与提供商/数据中心的唯一连接是您的网络供应,您可以确保在该连接之后在您的环境中执行的任何操作都是完全安全的。
在另一种情况下,当您购买托管服务(例如专用服务器、防火墙、l/b、网络等)时,您无法 100% 确定某人不会通过某些附加系统物理或虚拟路由您的非 SSL 数据来进行中间人攻击。
如果您确实担心 L/B 和 Web 服务器之间的安全性,我认为剥离 SSL 并重新添加 IPSEC VPN 或类似功能没有什么意义。您最好让 SSL 完全不受阻碍地传递到 Web 服务器(除非您无疑想使用反向代理功能)。
答案2
你可以设置局域网上的 IPSec确保负载均衡器和 Web 服务器之间的网络安全。
就像安全问题经常出现的情况一样,需要权衡——你增加了复杂性,也可能使排除网络故障变得更加困难。所以你需要决定这是否值得。
答案3
如果你使用Apache Httpdmod_proxy
作为反向代理,您还可以使用 HTTPS 连接到 Httpd 前端和后端 Web 服务器。
在这种情况下,需要将 Httpd 配置为 SSL 客户端(因此您需要告诉它要信任哪些 CA 证书)。如文档介绍中所述mod_proxy
,可以使用SSLProxy*
指令来完成此操作。
具体来说,您应该设置SSLProxyCACertificateFile
(或...Path
)和SSLProxyCheckPeerCN on
。
我还没有尝试过,但它看起来SSLProxyMachineCertificateFile
是用于配置客户端证书(反向代理是客户端)。向其使用的后端服务器验证反向代理的身份是有意义的。
(正如另一个答案所建议的,VPN 解决方案可能更容易配置。)