素敵な小さなnfs共有/クライアントを初めてセットアップしました。
a)クライアント側のファイルのUIDは、lsを介してリストされたときに4294967294として表示されますが、クライアントは共有内のファイル/ディレクトリを作成および削除できます。クライアント側で作成されたファイルとフォルダーは、サーバー側に正しいユーザー名(およびuid)で表示されます。共有に書き込むユーザーがサーバー側で同じUIDを持っていることを確認しました。
以下は、クライアント側のすべてのファイル/フォルダーに表示されます。
drwxr-xr-x 6 4294967294 4294967294 4096 Feb 23 16:04 foldername
これでよろしいですか?
b)nfs(またはこれより前にインストールされていなかったため、rpc *)サービスを外部インターフェイスで実行できないようにするには、portmap/nfsデーモンで何かを行う必要がありますか?理想的には、サービスをlanサブネットとvpnサブネットだけにバインドしたいと思います。
c)再接続の試行でnfsクライアント側を可能な限り積極的にするための理想的な方法は何ですか?理想的には、ネットワーク接続がいつでも失われた場合、nfsクライアント側は頻繁に無期限に試行を続けます。 fstabを介してこれを達成することは可能ですか?または、nfsクライアントはデフォルトですでにこれを行っていますか? nfs共有が共有されるLAN側は、1GBit接続です。
d)他に何かありますか?
何度も何度も。
ここではセキュリティの質問に答えているだけです。それが私が最も経験していることだからです。
NFSは保護するのが難しいです。私がお勧めできる最も重要なことは、GSS認証メカニズムでNFS4を使用することですが、NFS3(またはNFS2)を使用しているかのように答え続けます。
*
にエクスポートしないでください。これにより、誰でもどこからでも共有にアクセスできるようになります。insecure
またはno_root_squash
エクスポートオプションは絶対に使用しないでください。 secure
は、サーバーの信頼をユーザーだけでなくクライアントのrootに制限し、root_squash
はrootによるリクエストをnobody
に再マップし、共有を介した機密システムファイルへのアクセスを防ぎます。-i
オプションをportmap
に設定し、hosts.allow
ファイルを使用してローカルIPへのアクセスを制限することもできます。アイデア。セキュリティの問題についてセットアップをテストしたい場合は、Python基本的なNFSセキュリティメカニズムをバイパスするプログラム、 NfSpy を作成しました。お気軽に試してみてください。予期しない方法でエクスポートにアクセスできるかどうかを確認してください。
P.S.クライアントの再接続の試行については、nfs(5)のマンページのMOUNT OPTIONS
セクションを参照してください。一般に、retrans
およびhard
/soft
オプションは、必要なものを制御しますが、リクエストごとに制御します。サーバーが長期間ダウンしても、マウント自体はアップしたままになります。これらの設定は、特定の要求(読み取り、書き込みなど)の処理方法を決定します。
これは本当に非常に幅広いトピックであり、1つの投稿ですぐに答えることができるものは何もありません。 NFSサーバーとクライアントの強化とベストプラクティスに関する多くのガイドのいくつかを読むことから始めるべきだと思います。
私はグーグルでクイック検索を実行し、あなたに興味があるかもしれない2つのリンクを見つけました:
(セキュリティと微調整に関するベストプラクティスと他の多くの優れた情報が含まれています)