我在虚拟机中运行 Centos 7(我认为这不重要,但对于上下文......)
在虚拟机内部,我正在运行软件来建立隧道。我已经可以接受来自主机的连接了,但我想强制所有出站流量通过隧道。
如何允许现有连接的返回数据包,同时确保除非超过 tun0,否则不会从框中建立新连接?
我已经看过这个问题iptables blocking all outbound connections但它看起来有点暴力......我一直在使用firewall-cmd
并且输出iptables -L -n -v
很冗长。
相反,使用Use specific interface for outbound connections (Ubuntu 9.04),我看不到如何将其应用于 centos。
如何可靠地确保所有出站流量要么通过 tun0 建立,要么根本不建立?
这将有效地阻止除 tun0 之外的任何传出 (IPv4) 流量。
请注意,这将阻止除 tun0 之外的任何接口上的任何出站流量,其中包括 DHCP 流量、已建立的 SSH 隧道或来自已建立隧道的出站数据包。
这可以类似地应用于 IPv6,使用
ip6tables
.