我在笔记本电脑上运行 vpn。为了确保仅允许通过该 vpn 来往于互联网的流量,我运行了 ufw,并设置了以下规则:
Status: active
Logging: on (low)
Default: deny (incoming), deny (outgoing), disabled (routed)
New profiles: skip
To Action From
-- ------ ----
Anywhere on tun0 ALLOW IN Anywhere
1194/udp ALLOW IN Anywhere
192.168.1.0/24 ALLOW IN 192.168.1.0/24
Anywhere (v6) on tun0 ALLOW IN Anywhere (v6)
1194/udp (v6) ALLOW IN Anywhere (v6)
Anywhere ALLOW OUT Anywhere on tun0
1194/udp ALLOW OUT Anywhere
192.168.1.0/24 ALLOW OUT 192.168.1.0/24
Anywhere (v6) ALLOW OUT Anywhere (v6) on tun0
1194/udp (v6) ALLOW OUT Anywhere (v6)
现在一切都正常了,但有一个例外——如果不禁用防火墙,我无法从笔记本电脑连接到 octopi.local。我可以通过直接 IP 地址正常连接,但由于这不是静态地址,所以这不是一个可靠的解决方案。我如何确保 octopi.local 名称通过防火墙解析?
编辑我发现了这个页面 -ufw 主机名解析- 我尝试了 tail 命令,但我不知道自己在看什么。我确实看到了“SPT=5353 DPT=5353”,所以我尝试了“allow in 5353”命令,但似乎没有帮助。然后我查看了我的 /etc/services 文件并发现了以下内容:
hostmon 5355/tcp # hostmon uses TCP (nocol)
hostmon 5355/udp # hostmon uses UDP (nocol)
所以我尝试了“允许 5355”。但仍然不允许 ssh 解析主机名。我想让你知道我尝试了什么……
答案1
我想更新一下,以防其他人需要它。这是我为 ufw 设置的最终工作规则,允许 PIA VPN 自动连接而不禁用防火墙;允许本地联网计算机之间的通信;但仍然拒绝所有未通过 VPN 隧道的本地网络之外的流量:
To Action From
-- ------ ----
Anywhere on tun0 ALLOW Anywhere
1194/udp ALLOW Anywhere
192.168.1.0/24 ALLOW 192.168.1.0/24
5353 ALLOW Anywhere
Anywhere (v6) on tun0 ALLOW Anywhere (v6)
1194/udp (v6) ALLOW Anywhere (v6)
5353 (v6) ALLOW Anywhere (v6)
Anywhere ALLOW OUT Anywhere on tun0
1194/udp ALLOW OUT Anywhere
192.168.1.0/24 ALLOW OUT 192.168.1.0/24
5353 ALLOW OUT Anywhere
Anywhere (v6) ALLOW OUT Anywhere (v6) on tun0
1194/udp (v6) ALLOW OUT Anywhere (v6)
5353 (v6) ALLOW OUT Anywhere (v6)