web-dev-qa-db-ja.com

Kerberos「unmatchedHost」エラーのあるNFSv3

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 "
5
cuda

私は実際に自宅のいくつかのボックス間で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ソースを読むと、そうなるはずですが、それは私にはうまくいきませんでした。

これが他の誰かを正しい方向に導くことを願っています。幸運を。

1
Scott McClung

これが私が変更/チェックしたいいくつかのことです:

新しいGSSエクスポート構文を使用して、整合性/プライバシー保護を許可します。

/test (sec=krb5:krb5i:krb5p,rw,sync)

必要なカーネルモジュールが利用可能であることを確認してください:rpcsec_gss_krb5auth_rpcgss

マウントコマンドオプションを確認してください。これを質問に追加することもできます。

0
al.