8.3.3. ファイアウォールでの NFS のセキュリティー保護
NFS サーバーでファイアウォールを保護するには、必要なポートのみを開いてください。他のサービスには NFS 接続ポート番号を使用しないでください。
前提条件
-
nfs-utilsパッケージがインストールされている。 -
firewalldパッケージがインストールされ、実行されている。
手順
ファイアウォールルールを簡素化するために、NFS サービスに静的ポートを設定します。
rpcbindサービスは、デフォルトでは NFS ポートを動的に割り当てます。/etc/nfs.confファイルで静的ポートを指定します。NFSv3 の場合、以下のサービスを設定します。
-
[mountd]セクションのmountd(rpc.mountd) の TCP および UDP ポートをport=<value>形式で設定します。 -
[statd]セクションのstatd(rpc.statd) の TCP および UDP ポートをport=<value>形式で設定します。 -
ロックマネージャーの TCP ポートを
[lockd]セクションでport=<value>形式で設定します。または、/etc/modprobe.d/lockd.confファイルのnlm_tcpportオプションを使用してください。 -
ロックマネージャーの UDP ポートを
[lockd]セクションでudp-port=<value>形式で設定します。または、/etc/modprobe.d/lockd.confファイルのnlm_udpportオプションを使用してください。
NFSv4 の場合、ポート
2049のみが必要です。-
ファイアウォールで必要なポートを開きます。
NFSv4 の場合:
# firewall-cmd --permanent --add-port=2049/tcpNFSv3 の場合も、ステップ 1 で設定したポートを開放します。
# firewall-cmd --permanent --add-port=2049/tcp # firewall-cmd --permanent --add-port=<mountd_port>/tcp # firewall-cmd --permanent --add-port=<mountd_port>/udp # firewall-cmd --permanent --add-port=<statd_port>/tcp # firewall-cmd --permanent --add-port=<statd_port>/udp # firewall-cmd --permanent --add-port=<lockd_tcp_port>/tcp # firewall-cmd --permanent --add-port=<lockd_udp_port>/udpファイアウォールをリロードして変更を適用します。
# firewall-cmd --reload
検証
NFS サーバー上のアクティブなポートと RPC プログラムをリスト表示します。
$ rpcinfo -pファイアウォールルールを確認します。
# firewall-cmd --list-ports