iptables:阻止互联网,但允许本地连接

iptables:阻止互联网,但允许本地连接

我给自己弄了一个 VPN 账户,想确保一切都在使用 VPN 连接。所以我从 iptables 开始,决定屏蔽除 tun0 网络设备之外的所有内容。执行 shell 脚本后,我的 SSH 连接立即断开;)

脚本内容如下:

#!/bin/bash
iptables --flush
iptables --delete-chain
iptables -t nat --flush
iptables -t nat --delete-chain

iptables -P OUTPUT DROP

iptables -A INPUT -j ACCEPT -i lo
iptables -A OUTPUT -j ACCEPT -o lo

iptables -A INPUT -j ACCEPT -s 192.168.178.0/24 -i eth0
iptables -A OUTPUT -j ACCEPT -d 192.168.178.0/24 -o eth0

iptables -A INPUT -j ACCEPT -s 185.102.219.47/32 -i eth0 -p tcp -m tcp --sport 1443
iptables -A OUTPUT -j ACCEPT -d 185.102.219.47/32 -o eth0 -p tcp -m tcp --dport 1443

iptables -A INPUT -j ACCEPT -i tun0
iptables -A OUTPUT -j ACCEPT -o tun0

这样,我就可以继续使用 SSH 连接,但即使 tun0 未连接,我仍然可以 ping 和浏览网页。rpi 上还启用了 ipv6,也许现在仍然允许使用 ipv6 的所有内容?

我的目标是允许本地网络上的所有内容,但仅允许连接到 VPN 服务器。只能使用 tun0 设备才能访问互联网。

我错过了什么?

相关内容