OpenSuse TumbleweedでNFSサーバーのファイアウォールを開く方法は?

OpenSuse TumbleweedでNFSサーバーのファイアウォールを開く方法は?

サーバーファイアウォールを無効にすると、エクスポートしたディレクトリがNFSクライアントに表示されます。そうでなければそうではありません。

有線インターフェイスファイアウォールの「パブリック」および「内部」領域(「ssh」が明示的に許可され、脆弱性を通過する)で「nfs」サービスを許可しようとしましたが、役に立ちませんでした。アイデアが足りません。

編集:サーバーファイアウォールを停止してエクスポートしたディレクトリをマウントすると、サーバーに次の出力が表示されます。

$ ss -o state established '( dport = :nfs or sport = :nfs )'
Netid     Recv-Q     Send-Q          Local Address:Port           Peer Address:Port           
tcp       0          0                192.168.1.66:nfs            192.168.1.68:vacdsm-app

編集:状況を複雑にするために、クライアントがサーバーからエクスポートしたディレクトリのリストをリッスンするために必要なポートは、そのディレクトリの内容を実際に表示するのに必要なポートとは異なります。そのため、ファイアウォールをオフにしてエクスポートディレクトリのリストを使用してクライアントを設定し、ファイアウォールを再びオンにしてクライアントで利用できるかどうかを確認できます。本当に台無しです。

ベストアンサー1

リストされた結果は、ssネットワーク上でNFSを操作するために必要な手がかりを提供します。ローカルサービスはとしてマークされますが、nfsピアのサービスはですvacdsm-app。サーバーのサービスのリストを見るvacdsm。ファイアウォールの許可されたサービスのリストにそれを追加すると、エクスポートしたディレクトリをクライアントコンピュータにインストールできます。

エクスポートディレクトリを一覧表示するクライアントにはまだ問題があるようです。それで、他のポートも開かなければならず、サービスも許可しなければならないと思います。

編集:クライアントにエクスポートリストを表示するには、以下を使用しているポートを探す必要がありますmountd

$ rpcinfo -p | grep mountd

100005    1   udp  48008  mountd
100005    1   tcp  48008  mountd

mountdそれから。したがって、設定する必要はありません。MOUNTD_PORT/etc/sysconfig/nfs

次に、パブリックインターフェイスで許可されているポートのリストにポート番号自体を追加しました。

$ sudo firewall-cmd --zone=public --add-port=48008/udp --permanent
$ sudo firewall-cmd --zone=public --add-port=48008/tcp --permanent

最後に、111を明示的に指定する必要があることがわかったので、上記のコマンドを繰り返しました。

$ sudo firewall-cmd --zone=public --add-port=111/udp --permanent
$ sudo firewall-cmd --zone=public --add-port=111/tcp --permanent

111は標準NFSポートですが、なぜ指定するのかわかりません。サーバーとクライアントが異なるバージョンのOpenSUSEを使用しているため、何かが欠落している可能性があると思います。

おすすめ記事