仅在两个子网的firewalld 上启用NFS

仅在两个子网的firewalld 上启用NFS

在 Centos 上设置 NFS(使用 v3)后,我必须在防火墙中启用它:

firewall-cmd --permanent --add-service=nfs 
firewall-cmd --permanent --add-service=mountd
firewall-cmd --permanent --add-service=rpc-bind
firewall-cmd --reload

现在我需要更改它以允许 NFS 客户端仅从两个子网访问: 192.168.10.0/24 192.168.177.0/24

此外,我需要允许公共区域的 ssh 流量。

此子网之一是安装 NSF 服务器的子网。

我尝试将两个子网添加到“受信任”区域和相应的规则中,但在重新加载firewalld后,该区域从活动区域中消失。

# firewall-cmd --get-active-zones
drop
  interfaces: enp0s3 enp0s8
# firewall-cmd --zone=trusted --add-source=192.168.10.0/24
success
# firewall-cmd --zone=trusted --add-source=192.168.177.0/24
success
# firewall-cmd --get-active-zones
drop
  interfaces: enp0s3 enp0s8
trusted
  sources: 192.168.10.0/24 192.168.177.0/24
# firewall-cmd --zone=trusted --permanent --add-service=nfs
success
# firewall-cmd --zone=trusted --permanent --add-service=mountd
success
# firewall-cmd --zone=trusted --permanent --add-service=rpc-bind
success
# firewall-cmd --get-active-zones
drop
  interfaces: enp0s3 enp0s8
trusted
  sources: 192.168.10.0/24 192.168.177.0/24
# firewall-cmd --reload
success
# firewall-cmd --get-active-zones
drop
  interfaces: enp0s3 enp0s8
# firewall-cmd --list-all
drop (active)
  target: DROP
  icmp-block-inversion: no
  interfaces: enp0s3 enp0s8
  sources:
  services: ssh
  ports:
  protocols:
  masquerade: no
  forward-ports:
  source-ports:
  icmp-blocks:
  rich rules:

答案1

您忘记在以下几行设置永久标志:

firewall-cmd --zone=trusted --add-source=192.168.10.0/24 --permanent
firewall-cmd --zone=trusted --add-source=192.168.177.0/24 --permanent

最后执行(附加):

firewall-cmd --runtime-to-permanent
firewall-cmd --complete-reload ## Not to do on production system

相关内容