NFSポートブロックファイアウォールの問題

NFSポートブロックファイアウォールの問題

ファイアウォールが有効になっていると、Mac(10.10.3)コンピュータをOracle Linux 7(CentOS / RH 7)サーバーに接続できません。 (NFSv3のみを設定してみました。v4は必要ありません。)

Macでこのコマンドを実行して、NFSが正しく機能していることを確認しました(OL 7サーバーではファイアウォールがオフになっています)。

showmount -e myserver.home 

わかりました:

Export list for myserver:
/var/www 192.168.10.0/24

Command-K を使用して接続を試み、nfs://myserver.home と入力すると、接続が確立され、期待どおりにファイルを閲覧、編集、削除できます。

次に、OL7サーバーでファイアウォールを有効にしました。私も指定されたポートを開けましたOracle OL 7のドキュメントshowmount コマンドを再実行すると、次のエラーメッセージが表示されます。

showmount: Cannot retrieve info from host: localhost: RPC: Program not registered

ファイアウォールをオフにすると再び機能します。

それでは...どのポートを有効にしましたか?

#firewall-cmd --list-ports
32803/tcp 662/udp 2049/udp 662/tcp 111/udp 32769/udp 892/udp 2049/tcp 892/tcp 111/tcp

RPCが何を受信して​​いるかを確認しました(上記の管理ガイドリンクによると、2049と111でなければなりません)。

# rpcinfo -p

program vers proto   port  service
100000    4   tcp    111  portmapper
100000    3   tcp    111  portmapper
100000    2   tcp    111  portmapper
100000    4   udp    111  portmapper
100000    3   udp    111  portmapper
100000    2   udp    111  portmapper
100024    1   udp  47793  status
100024    1   tcp  52921  status
100005    1   udp  20048  mountd
100005    1   tcp  20048  mountd
100005    2   udp  20048  mountd
100005    2   tcp  20048  mountd
100005    3   udp  20048  mountd
100005    3   tcp  20048  mountd
100003    3   tcp   2049  nfs
100003    4   tcp   2049  nfs
100227    3   tcp   2049  nfs_acl
100003    3   udp   2049  nfs
100003    4   udp   2049  nfs
100227    3   udp   2049  nfs_acl
100021    1   udp  32769  nlockmgr
100021    3   udp  32769  nlockmgr
100021    4   udp  32769  nlockmgr
100021    1   tcp  32803  nlockmgr
100021    3   tcp  32803  nlockmgr
100021    4   tcp  32803  nlockmgr

最後に、私の/etc/sysconfig/nfsファイルは次のようになります。

# Note: For new values to take effect the nfs-config service
# has to be restarted with the following command:
#    systemctl restart nfs-config
#
# Optional arguments passed to in-kernel lockd
#LOCKDARG=
# TCP port rpc.lockd should listen on.
LOCKD_TCPPORT=32803
# UDP port rpc.lockd should listen on.
LOCKD_UDPPORT=32769

MOUNTD_PORT=892
STATD_PORT=662
#
# Optional arguments passed to rpc.nfsd. See rpc.nfsd(8)
RPCNFSDARGS="--port 2049"
# Number of nfs server processes to be started.
# The default is 8. 
#RPCNFSDCOUNT=16
#
# Set V4 grace period in seconds
#NFSD_V4_GRACE=90
#
# Set V4 lease period in seconds
#NFSD_V4_LEASE=90
#
# Optional arguments passed to rpc.mountd. See rpc.mountd(8) 
RPCMOUNTDOPTS=""
#
# Optional arguments passed to rpc.statd. See rpc.statd(8)
STATDARG=""
#
# Optional arguments passed to sm-notify. See sm-notify(8)
SMNOTIFYARGS=""
#
# Optional arguments passed to rpc.idmapd. See rpc.idmapd(8)
RPCIDMAPDARGS=""
#
# Optional arguments passed to rpc.gssd. See rpc.gssd(8)
RPCGSSDARGS=""
#
# Enable usage of gssproxy. See gssproxy-mech(8).
GSS_USE_PROXY="yes"
#
# Optional arguments passed to rpc.svcgssd. See rpc.svcgssd(8)
RPCSVCGSSDARGS=""
#
# Optional arguments passed to blkmapd. See blkmapd(8)
BLKMAPDARGS=""

答え1

私はこの問題を解決し、Oracle Webサイトのドキュメントが不完全であるため、他の人が同じ問題を抱えている場合に備えて、ここに答えを投稿したいと思いました。

mountdサービス用のポートを開く必要があります。これを行うには、次のコマンドを実行します。

firewall-cmd --permanent --zone=<zone> --add-service  mountd

地域名を必ず入力してください。私は「パブリック」ですが、オンにすることも選択できますが、デフォルトの領域が選択されます。

このセクションはOracleのドキュメントにありません。これを行った後、問題なくiMacをNFS共有に接続できました。

関連情報