如何将这个iptables规则从eth1更改为eth0?

在这个 OpenVPN中,他们有这个iptables规则

iptables -A INPUT -i eth1 -p udp --dport 1194 -j ACCEPT iptables -A INPUT -i tun+ -j ACCEPT iptables -A FORWARD -i tun+ -j ACCEPT iptables -A FORWARD -i eth0 -o tun+ -j ACCEPT iptables -A FORWARD -i eth1 -o tun+ -m state --state ESTABLISHED,RELATED -j ACCEPT service iptables save 

这是为2个NIC的服务器。

我只有一个网卡。

这个iptables对于只有一个网卡的服务器来说看起来如何?

上面的iptables规则使用这个图:

 client ----- (eth1) OpenVPN server (eth0) ----- LAN | | |________________(tun+)__| 

所以如果你只有一个网卡,像这样:

 client ----- (eth0) OpenVPN server | | |________________(tun+)__| 

你可以写下面的iptables规则:

 iptables -A INPUT -i eth0 -p udp --dport 1194 -j ACCEPT iptables -A INPUT -i tun+ -j ACCEPT 

删除最后3个FORWARD链规则。

在你链接的例子中, eth1外部接口 ,而eth0LAN接口 。 这些iptables规则使外部的 VPN连接可以访问本地局域网。

如果使用一个单独的eth0 ,一个部分,也许是这样,你不需要它们:

 iptables -A INPUT -i eth1 -p udp --dport 1194 -j ACCEPT iptables -A INPUT -i tun+ -j ACCEPT 

如果你在iptables中有一个默认的DROP策略(或者你使用软件防火墙接口,你需要允许连接到端口1194)。

也就是说,只有一个以太网接口的VPN需要什么? 或者你在同一个接口上有WANLAN IP吗?