如何在 DD-WRT 中配置 iptables 以仅在 br1 上阻止 Skype?

如何在 DD-WRT 中配置 iptables 以仅在 br1 上阻止 Skype?

在 Linksys 路由器上使用 DD-WRT,我有一个设置为 br0 的私有网络和一个设置为 br1 的访客网络。

我只想阻止访客网络上对 Skype 的访问,而我所见过的阻止 Skype 的最简单方法就是阻止对其身份验证服务器的访问。

通过添加以下防火墙规则,我可以成功阻止所有连接到路由器的用户访问 Skype:

iptables -I FORWARD -s 111.221.74.0/24 -j DROP
iptables -I FORWARD -s 111.221.77.0/24 -j DROP
iptables -I FORWARD -s 157.55.130.0/24 -j DROP
iptables -I 转发 -s 157.55.235.0/24 -j 删除
iptables -I 转发 -s 157.55.56.0/24 -j 删除
iptables -I FORWARD -s 157.56.52.0/24 -j DROP
iptables -I FORWARD -s 194.165.188.0/24 -j DROP
iptables -I 转发 -s 195.46.253.0/24 -j 删除
iptables -I 转发 -s 213.199.179.0/24 -j 删除
iptables -I FORWARD -s 63.245.217.0/24 -j DROP
iptables -I FORWARD -s 64.4.23.0/24 -j DROP
iptables -I 转发 -s 65.55.223.0/24 -j 删除

所以我认为,只需在上述每一行中的 FORWARD 命令后添加“-i br1”,我就可以仅在客户机(br1)网络上阻止它,如下所示:

iptables -I FORWARD -i br1 -s 111.221.74.0/24 -j DROP

但是,这不会阻止任何人。我做错了什么?提前致谢。

PS 作为进一步的参考,以下是我预先存在的当前防火墙规则:

#在 WAN 端口启用 NAT,以修复 17000 以上版本的错误
iptables -t nat -I POSTROUTING -o `get_wanface` -j SNAT --to `nvram 获取 wan_ipaddr`

#允许 br1 访问 br0、WAN 和任何其他子网(如果 SPI 防火墙开启则需要)
iptables -I FORWARD -i br1 -m state --state NEW -j ACCEPT
iptables -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

#限制br1访问br0
iptables -I FORWARD -i br1 -o br0 -m state --state NEW -j DROP

#限制br1访问WAN子网
iptables -I FORWARD -i br1 -d `nvram 获取 wan_ipaddr`/`nvram 获取 wan_netmask` -m state --state NEW -j DROP

#限制br1访问路由器的本地套接字
iptables -I 输入 -i br1 -m 状态 --状态新 -j DROP

#允许br1访问路由器上的DHCP
iptables -I 输入 -i br1 -p udp --dport 67 -j 接受

#允许br1访问路由器上的DNS
iptables -I 输入 -i br1 -p udp --dport 53 -j 接受
iptables -I 输入 -i br1 -p tcp --dport 53 -j 接受

答案1

你的 Skype 规则正在阻止流量源自给定的 IP 地址范围。因此,流量来自您的 WAN 接口,而不是您的客户网桥 br1。这就是-i br1无法正常工作的原因。

要解决此问题,请阻止流量那些来自来宾桥的目的地。例如:

iptables -I FORWARD -i br1 -d 111.221.74.0/24 -j DROP

答案2

阻止特定目标 IP 地址不是长期解决方案,因为这些地址随时可能发生变化。您应该在 DNS 级别阻止 skype 的主机名 *.skype.com。您可以使用 DNS 过滤服务来执行此操作。您可以通过捕获客户端的 DNS 查询并重新路由它们来强制客户端使用您的过滤服务。这可以通过下面的 iptables 命令完成。请将 guest_ip_range 替换为您的来宾正在使用的 CIDR 格式的子网和掩码,并将 dns_filtering_service 替换为您的过滤服务的 DNS 服务器。

iptables --table nat --append PREROUTING --in-interface br0 --source guest_ip_range -protocol tcp --dport 53 --jump DNAT --to dns_filtering_service
iptables --table nat --append PREROUTING --in-interface br0 --source guest_ip_range -protocol udp --dport 53 --jump DNAT --to dns_filtering_service

相关内容