Kerberosを使用してNFSv4をセットアップしました(うまく機能します)が、Kerberosを使用してNFSv3を追加する必要があります。 NFSv3エクスポートをマウントしようとすると、クライアントでアクセス許可が必要なエラーが発生し、サーバーでエラーは「ホストが一致しません」です。
In /etc/export I just have:
/test gss/krb5(rw,sync)
「不一致のホスト」エラーは通常、クライアントがエクスポートファイルでサーバーにアクセスできることを指定していないことを意味します。しかし、Kerberosを使用する必要はありません。エクスポートmanファイルには次のように記載されています。
RPCSEC_GSS security rpcsec_gss securityを使用してエクスポートへのアクセスを制限するには、クライアントとして特別な文字列「gss/krb5」を使用します。 rpcsec_gssを同時に要求することと、クライアントのIPアドレスを要求することはできません。
Kerberosが正しくセットアップされていることを確信しています(ここでもkerberosを備えたNFSv4が機能します)。Webで読んだところによると、NFSサーバーは正しくセットアップされ(設定は以下にあります)、必要なサービスが実行されていると思います。現在Ubuntu10.4でテストしていますが、Novell SLED10.3でも同じ問題が発生しました。
誰かが私が間違っている可能性があることを知っていますか?または、NFSv3 w/kerberosのハウツーを教えてもらえますか?
nss-common:
NEED_STATD=yes
STATDOPTS=
NEED_IDMAPD=no
NEED_GSSD=yes
nss-kernel-srever:
RPCNFSDCOUNT="8 --no-nfs-version 4 --no-nfs-version 2"
RPCNFSDPRIORITY=0
RPCMOUNTDOPTS="--manage-gids"
NEED_SVCGSSD=yes
RPCSVCGSSDOPTS=" -vvv "
私は実際に自宅のいくつかのボックス間でNFSv3 + Kerberosを使用しています(CentOS 5とGentooクライアントおよびサーバーの組み合わせ、Gentoo KDCを使用)。それを機能させるために、私は次のような/ etc/exportsエントリを使用することになりました。
/export hostname.local.lan(rw,insecure,sync,sec=krb5p:krb5i:krb5)
クライアントでは、/ etc/fstabに次のものが含まれます。
hostname.local.lan:/export /nfs/hostname/export nfs sec=krb5p,nfsvers=3,mountvers=3,proto=tcp,acl,rw,soft,bg,intr 0 0
マウントされると、「mount」はそのファイルシステムに対して以下を返します。
hostname.local.lan:/export on /nfs/hostname/export type nfs (rw,sec=krb5p,nfsvers=3,mountvers=3,proto=tcp,acl,soft,bg,intr,addr=192.168.1.15)
NFSv4の実験から、私はまだrpc.idmapdを実行していますが、v3には必要ないと思います。
最後のトリッキーなビットは、セットアップ時の/ etc/exportsビットでした。多くのチュートリアルには、上記のgss/krb5エクスポートエントリのようなものがリストされていますが、nfs utilsソースを読むと、そうなるはずですが、それは私にはうまくいきませんでした。
これが他の誰かを正しい方向に導くことを願っています。幸運を。
これが私が変更/チェックしたいいくつかのことです:
新しいGSSエクスポート構文を使用して、整合性/プライバシー保護を許可します。
/test (sec=krb5:krb5i:krb5p,rw,sync)
必要なカーネルモジュールが利用可能であることを確認してください:rpcsec_gss_krb5
、auth_rpcgss
マウントコマンドオプションを確認してください。これを質問に追加することもできます。