我的目标是将所有 HTTP 入站请求限制到特定 IP 地址。我以为这将是一个简单的过程 - 但我没有得到想要的结果
我修改了一个名为 WWW(HTTP Traffic-In)的预定义规则 - 以便它“阻止”传入连接(并确保此入站规则的范围适用于当前活动的配置文件)
在这个阶段我没有指定允许的 IP,因为我想看看规则是否会阻止所有入站的 http 流量。
在私人配置文件(活动配置文件)中 - 我有以下设置: - 防火墙状态:开启 - 入站连接:允许 - 出站连接:阻止
Windows 防火墙概览页面显示: - 私人配置文件处于活动状态 - 允许与规则不匹配的入站连接 - 阻止与规则不匹配的出站连接
然而,防火墙规则仍然允许 HTTP 流量进入,我的 Windows 2008 服务器仍然响应测试页面
我知道设置防火墙规则应该是一项简单的任务 - 但也许我遗漏了一些东西?
答案1
这可以用两条规则来实现,而不只是一条。因为据我所知,规则列表是从顶部(列表中的第一条规则)读到末尾的,列表中规则的顺序很重要。
參考文獻:TechNet:具有高级安全规则的 Windows 防火墙评估顺序
这第一条规则你必须创造必须允许您想要从远程端口 80 授权的所有 IP 地址。
这第二条规则必须堵塞来自远程端口 80(Http)的所有其他传入 TCP 数据包。
第一条规则将检查传入的 TCP 数据包:如果它们来自 TCP 中的远程端口 80和对应于您要允许的 IP 地址。它们将被允许。数据包必须符合该规则的所有规范才能被允许。如果不这下一条规则将检查传入的数据包。
如果传入的 TCP 数据包不匹配第一条规则的所有条件然后第二条规则将检查 TCP 数据包是否来自远程端口 80,并阻止所有数据包但不是其他 TCP 数据包(在不同于 80 的远程端口上),因为您想要阻止不在您的 IP 地址列表中的 HTTP 以及所有其他 TCP 数据包...