Windows10 上的 iptables

Windows10 上的 iptables

我正在寻找一种在 Windows 10 中获取 iptables 功能的方法。我启用了 IP 路由,我需要将 tcp 数据转发到另一台主机(端口 4000),然后在伪装 IP 的同时转发其响应。在 Linux 中,我可以使用以下命令执行此操作:

iptables -A INPUT -p tcp --dport 4000 -m string --hex-string '|FF01|' --algo bm -j DROP
iptables -A INPUT -p tcp --dport 4000 -m string --hex-string '|1400|' --algo bm -j REJECT

多谢你们!

答案1

Windows 防火墙所基于的 Windows 过滤平台不(直接)支持检查数据包内容。因此,实现此特定条件(-m string --hex-string '|FF01|')是不可能

为了实现此功能,需要一个所谓的“Windows 过滤平台调出驱动程序”。顾名思义,这些是内核模式驱动程序。它们可以对数据包数据进行深度检查并设置阻止数据包等操作。

在 64 位 Windows 上,内核驱动程序需要进行代码签名。

您也可以使用第三方防火墙解决方案来实现相同的效果。

最简单的解决方案就是不使用 Windows。

答案2

Windows 防火墙具有类似的规则,可以阻止某些 IP 进入端口。

  1. 打开高级安全 Windows Defender 防火墙。在“开始”菜单中搜索“Windows 防火墙”时,应该会出现该防火墙
  2. 从左侧窗格中选择入站规则
  3. 在右侧窗格中,选择“新建规则”
  4. 规则类型:选择自定义
  5. 程序:选择所有程序
  6. 协议和端口:协议类型为 TCP,本地端口为特定端口 4000。远程端口未设置。
  7. 范围:输入要阻止的 IP 和范围。请注意,LAN IP 位于上方框中。WAN IP 位于下方框中
  8. 措施:阻止连接
  9. 个人资料:选择所有选项
  10. 名称:根据您的喜好设置。这对规则没有影响。

相关内容