我想在我的其中一台计算机上建立 openVPN 连接。但我想通过过滤除 openVPN 之外的所有内容来确保连接的安全。因此 openVPN 将是访问互联网的唯一方式。
实现此目的的最佳方法是什么?iptables?
安全的方式是,如果没有 openVPN 连接,就无法访问互联网。
答案1
VPN 连接“按定义”是安全的。否则您不会称其为 VPN。安全性通过加密密钥实现。在这种情况下查看 MAC 地址毫无意义。
目前尚不清楚连接应该是什么样子,但我假设没有路由意图。因此,您的防火墙中至少需要四条规则(对于物理接口,例如 eth0):
iptables -P OUTPUT DROP
iptables -A OUTPUT -o eth0 -d $OPENVPN_DESTIP -j ACCEPT
iptables -P INPUT DROP
iptables -A INPUT -i eth0 -m conntrack --ctstate ESTABLISHED -j ACCEPT
此外,您还需要 VPN 接口的规则,例如 tun0:
iptables -A OUTPUT -o tun0 -j ACCEPT
iptables -A INPUT -i tun0 -m conntrack --ctstate ESTABLISHED -j ACCEPT