需要哪些 iptables 规则来允许 16.04 上的 nfs 共享?

需要哪些 iptables 规则来允许 16.04 上的 nfs 共享?

有人能提供我必须添加到 /etc/iptables/rules.v4 文件中的确切措辞/编码吗?我正在使用的服务器有许多复杂的防火墙规则,并且我已确定肯定是 iptables 阻止了 nfs 挂载,因为如果 iptables 关闭,我可以挂载。我的 NFS 版本是 4。据我了解,端口 111 和 2049 需要允许流量,但我觉得我没有正确输入规则。共享是通过私有网络进行的。NFS 共享的 IP 是 172.16.10.25,而 16.04 服务器的私有 IP 是 172.16.10.20。

注意:有多个过滤器,因此非常感谢您对在何处放置规则的任何建议。

我尝试过在网上找到的这两个单独的答案,但没有任何效果。

# Portmap ports
-A INPUT -m state –state NEW -p tcp –dport 111 -j ACCEPT    
-A INPUT -m state –state NEW -p udp –dport 111 -j ACCEPT    
# NFS daemon ports    
-A INPUT -m state –state NEW -p tcp –dport 2049 -j ACCEPT    
-A INPUT -m state –state NEW -p udp –dport 2049 -j ACCEPT    

另一个是

 iptables -P INPUT DROP    
   iptables -P OUTPUT DROP    
   iptables -A INPUT -s 192.168.1.0/24 -d 192.168.1.0/24 -p udp -m multiport --sports 10053,111,2049,32769,875,892 -m state --state ESTABLISHED -j ACCEPT 
   iptables -A INPUT -s 192.168.1.0/24 -d 192.168.1.0/24 -p tcp -m multiport --sports 10053,111,2049,32803,875,892 -m state --state ESTABLISHED -j ACCEPT 
   iptables -A OUTPUT -s 192.168.1.0/24 -d 192.168.1.0/24 -p udp -m multiport --dports 10053,111,2049,32769,875,892 -m state --state NEW,ESTABLISHED -j ACCEPT 
   iptables -A OUTPUT -s 192.168.1.0/24 -d 192.168.1.0/24 -p tcp -m multiport --dports 10053,111,2049,32803,875,892 -m state --state NEW,ESTABLISHED -j ACCEPT 
   iptables -I INPUT  -i lo -d 127.0.0.1 -j ACCEPT
   iptables -I OUTPUT  -o lo -s 127.0.0.1 -j ACCEPT
   iptables -L -n --line-numbers    

使用我自己的 IP,而不是上面例子中的 IP。

答案1

以下是我为未来的提问者提供的建议。

-A INPUT -s 172.16.10.25/32 -d 172.16.10.40/32 -i eth0 -p tcp --sport 111 -j ACCEPT
-A INPUT -s 172.16.10.25/32 -d 172.16.10.40/32 -i eth0 -p tcp --sport 2049 -j ACCEPT
-A INPUT -s 172.16.10.25/32 -d 172.16.10.40/32 -i eth0 -p udp --sport 111 -j ACCEPT
-A INPUT -s 172.16.10.25/32 -d 172.16.10.40/32 -i eth0 -p udp --sport 2049 -j ACCEPT
-A OUTPUT -s 172.16.10.40/32 -d 172.16.10.25/32 -o eth0 -p tcp --dport 111 -j ACCEPT
-A OUTPUT -s 172.16.10.40/32 -d 172.16.10.25/32 -o eth0 -p tcp --dport 2049 -j ACCEPT
-A OUTPUT -s 172.16.10.40/32 -d 172.16.10.25/32 -o eth0 -p udp --dport 111 -j ACCEPT
-A OUTPUT -s 172.16.10.40/32 -d 172.16.10.25/32 -o eth0 -p udp --dport 2049 -j ACCEPT

IP = .40 为客户端,.25 为服务器。.25 被安装到 .40 上。如果可以用更少的规则来实现这一点,那么我希望将来有人能找到答案。

相关内容