奇怪的防火墙问题

奇怪的防火墙问题

我们在网络上安装了一台 Web 服务器,最近它从另一个子网中的测试环境移到了另一个办公室。现在我们已安装好服务器,我们可以通过其内部 IP 访问它,但无法通过分配的外部 IP 访问它。我不确定该怎么做,因为通常情况下,一旦您允许端口 80 和 443 通过并将外部 IP 映射到内部,您通常就可以启动并运行。

我甚至禁用了运行 Server 2008 的 IIS 服务器上的防火墙。我可以通过 HTTP 和 SSL 在其内部 IP 上访问该站点。管理员告诉我防火墙已正确设置,但我没有足够的权限来确认。我的通常逻辑告诉我,如果我可以在内部访问它,只要防火墙/路由器配置正确,我也应该能够在网络外部访问它。

这是服务器 2008,而不是 R2。我知道 Windows 2008 可以在防火墙中区分本地和外部网络的流量,但我认为通过禁用 Windows 防火墙可以绕过这一点。我的目光一直盯着防火墙,但我想确保我没有遗漏任何东西。

除了我提到的内容之外,还有什么需要检查的吗?我不知道

答案1

所以你的问题似乎是你很难确定在哪里问题在于,问题是否出在从测试环境移动到另一个子网的新 Web 服务器上。

混淆的部分原因在于术语。您需要澄清,即使只是为了您自己的理智,网络防火墙(可能使用基于您的标签的 Checkpoint 软件,但除此之外没有提到)和 Web 服务器上的 Web 服务器系统的 Windows 防火墙之间的区别。

对于“外部 IP”,我认为你指的是可以通过互联网访问的可路由 IP 地址,换句话说,不是 RFC 1918私有 IP 地址

如果不知道网络拓扑,正如用户 48838 在他的好答案中提到的那样,就很难说。

在启用 Windows 防火墙并记录拒绝或拒绝的连接的情况下,如果您在事件查看器日志中看不到拒绝/拒绝的 Web 连接或失败的网络连接尝试,那么我预计很可能存在与以下方面相关的问题:目标网络地址转换(D-NAT 或 DNAT)将外部请求转发到内部网络上具有内部 IP 的 Web 服务器。其他转发外部 IP 地址的方法也有可能,但 DNAT 是最常见的。

作为一名 Unix 极客,我通常会使用 tcpdump 来验证这一点。因此,在服务器上启用任何基于主机的 TCP 监控(转储缥缈, 或者Wireshark) 查看它是否正在接收端口 80 (HTTP) 或 443 的任何 TCP 连接尝试。tcpdump "tcp port 80 or port 443"

当然,正如@user48838所说,这可能是由于您的网络未正确设置将内部请求重新转发到外部 IP 地址,如果您尝试从内部网络访问 Web 服务器,这可能会出现问题。如果这不是正常问题,则需要修改测试程序,例如使用外部代理进行测试。

您没有提到任何代理服务器,我是否认为该网络设置不涉及代理服务器。

答案2

“无法通过指定的外部 IP 访问它”

网络上的哪个位置正在尝试此操作?内部还是外部?如果是内部,您是否也尝试过从外部点进行操作?

如果其外部 IP 可从外部点访问,但不能从内部访问,则可能是路由器的配置/能力“环回”在内部-外部-内部之间交叉/转换的流量。

相关内容