Menu Close

6.3.3. 使用防火墙保护 NFS

要保护 NFS 服务器上的防火墙,请仅开放所需的端口。不要将 NFS 连接端口号用于任何其他服务。

先决条件

  • 已安装 nfs-utils 软件包。
  • firewalld 软件包已安装并运行。

流程

  • 在 NFSv4 上,防火墙必须打开 TCP 端口 2049
  • 在 NFSv3 上,使用 2049 打开四个额外端口:

    1. rpcbind 服务动态分配 NFS 端口,这可能会在创建防火墙规则时导致问题。要简化这个过程,使用 /etc/nfs.conf 文件指定要使用哪些端口:

      1. [mountd] 部分为 mountd (rpc.mountd) 设置 TCP 和 UDP 端口,格式为 port=<value>
      2. [statd] 部分为 statd (rpc.statd) 设置 TCP 和 UDP 端口,格式为 port=<value>
    2. /etc/nfs.conf 文件中为 NFS 锁定管理器(nlockmgr)设置 TCP 和 UDP 端口:

      1. [lockd] 部分为 nlockmgr (rpc.statd) 设置 TCP 端口,格式为 port=value。或者,也可以使用 /etc/modprobe.d/lockd.conf 文件中的 nlm_tcpport 选项。
      2. [lockd] 部分为 nlockmgr (rpc.statd) 设置 UDP 端口,格式为 udp-port=value。或者,您可以使用 /etc/modprobe.d/lockd.conf 文件中的 nlm_udpport 选项。

验证步骤

  • 列出 NFS 服务器中的活跃端口和 RPC 程序:

    $ rpcinfo -p

其他资源