为了最大限度的安全,我应该使用分布式模式还是反向代理安装

我一直在使用ColdFusion很长一段时间。 在我脑子里播下的东西是,为了最大的安全性,你应该把Web服务器和ColdFusion服务器分开。 所以我总是用Adobe所说的“分布式”来做到这一点。 IIS位于一台服务器上,而ColdFusion位于另一台服务器上。 他们像往常一样通过networking连接器进行通信,尽pipe通过networking进行通信。

几年来,我遇到过使用反向代理的post和分布式运行一样安全。 使用反向代理设置,Web服务器和ColdFusion服务器位于同一台物理机器上,但是有一个代理服务器,用于处理作为Web服务器(基本上)的请求和function。 在我看来,我认为物理上的分离更安全。

在互联网上很难find任何明确的build议。 即使在ColdFusion 11文档中也仍然提到分布式模式 – 有关Web服务器configuration工具的更多信息,包括有关多宿主和分布式使用的信息,请参阅“configuration和pipe理ColdFusion指南” 。 (虽然在引用的页面上没有太多关于它的信息)。这两个设置似乎都在各种博客和post中提到,但我发现人们使用反向代理设置而不是分布式模式设置更为常见。 没有具体的东西,只是我在网上search的感觉。 以分布式模式运行,在独立服务器上安装Web服务器和ColdFusion服务器,在设置时肯定会增加一层复杂性。 静态文件驻留在Web服务器和ColdFusion服务器上的CFML文件中。 等等当您使用第三方产品时,这可能很难正确configuration。

所以我的问题是,假设一切都是平等的,为了最大的安全性,你使用分布式模式还是使用反向代理设置? 还有一些你为什么做的原因。

不幸的是,ColdFusionlocking指南令人困惑。 这是我发现的。

在ColdFusion 9locking指南 (第14-15页)中指出:

您也可以考虑以分布式模式安装ColdFusion。 这允许Web服务器驻留在与ColdFusion服务器完全不同的服务器上。 您还可以将多个Web服务器连接到单个ColdFusion服务器(在ColdFusion 9文档中称为多宿主)。 这种分离可以提供额外的安全性,应该在需要最大安全性的环境中考虑。 要安装分布式模式,请select内置的Web服务器选项。 有关configuration分布式模式的信息,请参阅http://www.adobe.com/support/coldfusion/administration/cfmx_in_distributed_mode/cfmx_in_distributed_mode02.html 。 有关多宿主的详细信息,请参阅http://help.adobe.com/zh_CN/ColdFusion/9.0/Admin/WSc3ff6d0ea77859461172e0811cbf364104-7fc3.html 。

另一种分离面向公众的Web服务器和ColdFusion服务器的方法是使用反向代理。 在反向代理设置中,ColdFusion服务器仍然安装了Web服务器,但所有外部客户端请求都由代理服务器处理,并且某些请求被发送到ColdFusion服务器进行处理。

在ColdFusion 10locking指南 (第27页)中,该语句被修剪为:

为了获得最大的安全性,考虑在单独的物理服务器上运行Web服务器和ColdFusion。 将面向公众的Web服务器和ColdFusion服务器分开的一种方法是使用反向代理。

在反向代理设置中,ColdFusion服务器仍将安装Web服务器,但所有外部客户端请求都将由代理服务器处理,只有特定的请求将被发送到ColdFusion服务器进行处理。 请咨询您的Web服务器文档以设置反向代理。

而在ColdFusion 11locking指南中也没有提到。 它似乎应该是在第11页上或其附近,这些语句是在其他文档中的位置以及运行Web服务器configuration工具的位置。 我很好奇皮特为什么从最新的文件中提取出来。

当我使用Adobe ColdFusion时,我也用Railo将这个问题标记为更多的input。

你混淆了“分布式模式”(使Web服务器和CF服务器在单独的盒子上)与使用反向代理相互排斥。 实际上,他们是两个不同的问题。 反向代理只是使用标准Web连接器的替代方法。 它只是简单地导致你的Web服务器(IIS,Apache,Nginx)将CFML页面的请求redirect到CF盒上给定主机/端口上的HTTP / HTTPS或AJP端口。 只要适当的端口处于打开状态,您就可以configuration反向代理以代理本地主机或代理到networking上的任何其他服务器。

防爆。 您可以在端口8009上启用Tomcat中的AJP侦听器。然后在您的Apache Web服务器(可以位于您的networking上的任何位置)上,使用proxy_ajp模块将.cfm文件的代理请求反转为该端口。

我从来没有亲自处理过分布式模式,因为似乎有一个针对我的Web服务器的攻击向量数量要less得多。 但是,如果您select使用“分布式模式”,则可以使用股票连接器或反向代理来执行此操作。 随你便。

DISTRIBUTED模式或REVERSE PROXY设置将提供大部分类似的安全级别,但DISTRIBUTED模式将提供额外的高可用性和可靠性服务器scheme。