WindowsDCからマルチユーザーをサポートするubuntuサーバーにcifsフォルダーをマウントしようとしています。
サーバーのrootとしてユーザーのkerberosチケットを取得し、問題なくkerberosを使用してディレクトリをマウントできます。ただし、ディレクトリをユーザーとしてマウントする必要はありません。マルチユーザーとしてマウントし、サーバー上のすべてのユーザーがアクセスできるようにする必要があります。
多分これは理解についての一般的な質問です、多分あなたは私にここで何が悪いのかを訂正することができます。
キータブファイルをDCにエクスポートし、グローバルキータブファイル/etc/krb5.keytabとして配置しました。
root@remote:/etc# klist -ke
Keytab name: FILE:/etc/krb5.keytab
KVNO Principal
---- --------------------------------------------------------------------------
3 cifs/[email protected] (des-cbc-md5)
しかし、キーが利用できないため、ディレクトリをマウントできません。マウントエラー(126):必要なキーが利用できません
syslogはこれを示しています:
May 17 11:37:22 remote cifs.upcall: key description: cifs.spnego;0;0;3f000000;ver=0x2;Host=nina.mbeya.domain.org;ip4=10.10.10.17;sec=krb5;uid=0x0;creduid=0x0;user=root;pid=0x599b
May 17 11:37:22 remote cifs.upcall: ver=2
May 17 11:37:22 remote cifs.upcall: Host=nina.mbeya.domain.org
May 17 11:37:22 remote cifs.upcall: ip=10.10.10.17
May 17 11:37:22 remote cifs.upcall: sec=1
May 17 11:37:22 remote cifs.upcall: uid=0
May 17 11:37:22 remote cifs.upcall: creduid=0
May 17 11:37:22 remote cifs.upcall: user=root
May 17 11:37:22 remote cifs.upcall: pid=22939
May 17 11:37:22 remote cifs.upcall: find_krb5_cc: considering /tmp/krb5cc_1000
May 17 11:37:22 remote cifs.upcall: find_krb5_cc: /tmp/krb5cc_1000 is owned by 1000, not 0
May 17 11:37:22 remote cifs.upcall: krb5_get_init_creds_keytab: -1765328378
May 17 11:37:22 remote cifs.upcall: handle_krb5_mech: getting service ticket for cifs/nina.mbeya.domain.org
May 17 11:37:22 remote cifs.upcall: cifs_krb5_get_req: unable to resolve (null) to ccache
May 17 11:37:22 remote cifs.upcall: handle_krb5_mech: failed to obtain service ticket (-1765328245)
May 17 11:37:22 remote cifs.upcall: handle_krb5_mech: getting service ticket for Host/nina.mbeya.domain.org
May 17 11:37:22 remote cifs.upcall: cifs_krb5_get_req: unable to resolve (null) to ccache
May 17 11:37:22 remote cifs.upcall: handle_krb5_mech: failed to obtain service ticket (-1765328245)
これについてのご意見に感謝します。
ありがとう
「rootとしてユーザーKerberosチケット」を取得できますが、「キーを使用できません」というエラーが発生することに注意してください。
find_krb5_cc: /tmp/krb5cc_1000 is owned by 1000, not 0
このエラーは、mount.cifsを呼び出すroot(ユーザーID:0)が所有していないため、mount.cifsがKerberosチケットにアクセスできないことを意味します。ユーザーのパスワードで取得したKerberosチケットルートは、そのユーザーのみが使用するように指定されていると思います。
では、なぜマウントはチケットをルートが所有することを望んでいるのですか?最初の行のこの部分:
uid=0x0;creduid=0x0;user=root;
理由かもしれません。 Mount.cifsは実行 rootとして実行されています。 uidとcreduidをユーザーのuseruidに変更してみてください。
どこからmount.cifsを呼び出しているのかわからないので、少しあいまいな場合は申し訳ありません。実行しているmount.cifsコマンドとそのオプションを教えてください。
「サーバー上のすべてのユーザーがアクセスできる」共有について:ユーザーがログインした後にpam_mountを実行し、ユーザー名、パスワード、およびKerberosチケットを使用して共有をマウントするため、キータブを使用していません。これは私が呼んでいるマウントコマンドです:
mount -t cifs //<SERVER>/<VOLUME> <MOUNTPOINT> -o username=%(USER),sec=krb5,domain=<DOMAIN>,cruid=%(USERUID),uid=%(USERUID),gid=%(USERGID),rw
許可されたユーザーを単一のグループに追加します。また、file_mode =およびdir_mode =を、グループがファイルへの読み取り/書き込みアクセス権を持つための正しいアクセス許可(770など)に設定します。