我最近向 GUFW 添加了一些规则,以确保只有我的(个人)VPN 连接可以传出,xxxx 是我的 ip,yyyy 是我连接到的 VPN 的 IP。
至 - 操作 - 来自
yyyy 允许退出 xxxx
任何地方 DENY OUT xxxx
到目前为止,一切都运行良好:除了我的 VPN 连接外,什么都无法通过,然后所有内容都会通过它进行隧道传输。互联网,一切正常。
我想扫描家庭网络上的主机 (tttt) 来识别它。因此我尝试使用 nmap 进行 Syn 扫描:
命令 nmap tttt -sS -v
然而,看起来防火墙阻止了探测,因为我得到了这个:
sendto 在 send_ip_packet_sd 中:sendto(5,packet,44,0,tttt,16)=> 操作不允许
所以我添加了这条规则:
xx0.0/16 允许输出 xxxx
奇怪的是,即使我使用 /24 网络掩码,我仍然会遇到相同的错误。停用防火墙可以解决问题,但我正在寻找真正的解决方案。
有什么线索可以说明问题吗?谢谢。
解决了:iptables 规则的顺序非常重要。由于 gufw 是它的简化版,因此我不得不更改规则的顺序。首先,您允许接口与子网通信,然后您拒绝接口与世界其他地方的通信。我现在可以 ping、扫描等子网,如果我不使用 VPN,互联网的其余部分将被阻止:ping、扫描……无法外出。
答案1
正如我在编辑中所说,规则的顺序非常重要。
即使对于 gufw,你也需要考虑到这一点。因此,按照我打算的方式去做:
您首先允许接口与子网(xx0.0/16)通信,然后拒绝与世界其他地方的通信。
我颠倒了顺序,不确定首先会考虑哪条规则。