/etc/exports には、ネットワークを介して利用できるようにする (エクスポートされる) ディレクトリをリストします。各 NFS 共有について、リストされたマシンだけがアクセスを許可されます。よりきめ細かなアクセス制御を行うには、いくつかのオプションを使います。/etc/exports ファイルの構文はとても単純です。
/directory/to/share machine1(option1,option2,...) machine2(...) ...
fsid=0 または fsid=root で識別されなければいけません。これらの点に注意してください。
*.falcot.com などの構文を使うか 192.168.0.0/255.255.255.0 や 192.168.0.0/24 などの IP アドレス範囲を使います。
ro オプションを使えば) 読み込み専用として利用できるようにされます。rw オプションを使えば読み書きアクセスが許可されます。典型的に NFS クライアントは root だけが使えるポート (言い換えれば、1024 番よりも低い番号のポート) から接続します。高いポート番号を使うクライアントからの接続を受け入れるには、insecure オプションを使います (secure オプションは暗黙的に有効化されていますが、明示する必要があればオプションを明示することも可能です)。
sync オプション) 後です。これを無効化するには、async オプションを使います。非同期書き込みを使うことで、性能はほんの少し向上しますが、信頼性は低下します。なぜなら、書き込み確認とディスクへの実際の書き込みの間にサーバがクラッシュした場合に、データを損失する危険性があるからです。デフォルト値が sync に変更されたのは最近なので (NFS バージョンによってデフォルト値が違うので)、明確に sync オプションを設定することを推奨します。
nobody ユーザからの問い合わせとして処理します。この挙動は root_squash オプションを使った場合の挙動に対応し、root_squash オプションはデフォルトで有効化されています。no_root_squash オプションを使うことで、この挙動は無効化されますが、no_root_squash オプションは危険であり管理されない環境で使うべきではありません。anonuid=uid と anongid=gid オプションを使うことで、UID/GID 65534 (これは nobody ユーザと nogroup グループに対応します) の代わりに使う別の偽ユーザを指定することが可能です。
sec オプションを追加してセキュリティレベルを指定することが可能です。デフォルト設定の sec=sys は特別なセキュリティ機能を有効化しません。sec=krb5 は認証機能だけを有効化します。sec=krb5i は認証と整合性保護機能を有効化します。sec=krb5p はすべての機能、すなわち認証、整合性保護、プライバシー保護機能 (データ暗号化機能を含みます) を有効化します。これらを使うには、Kerberos サービスを動作させる必要があります (Kerberos サービスについては本書で解説されていません)。
mount コマンドと /etc/fstab ファイルにいくつかの調整を行うパラメータを含める必要があります。
例 11.22 mount コマンドを用いた手作業によるマウント
#mount -t nfs4 -o rw,nosuid arrakis.internal.falcot.com:/shared /srv/shared
例 11.23 /etc/fstab ファイルの NFS エントリ
arrakis.internal.falcot.com:/shared /srv/shared nfs4 rw,nosuid 0 0
arrakis サーバの /shared/ NFS ディレクトリがローカルの /srv/shared/ ディレクトリにマウントされます。ここでは読み書きアクセスを要求しています (このため rw パラメータを追加しています)。nosuid オプションは一種の保護手段で、共有ディレクトリに保存されているプログラムに設定された setuid または setgid ビットを無効化します。文書を保存するだけの目的で NFS 共有を使っている場合、noexec オプションを追加することを推奨します。これは共有ディレクトリに含まれるプログラムの実行を避けるものです。NFS サーバ上では shared ディレクトリは NFSv4 ルートエクスポート (たとえば /export/shared) の下位に属すディレクトリであり、最上位ディレクトリではありません。この点に注意してください。