DebianStretchでSambaADをセットアップしました。別のストレッチクライアントノードは、AD資格情報を使用して認証できます。
ドメインユーザーは、クライアントノードに対する制限された権限を持っています。つまり、クライアントに何もマウントできません。
クライアントで、私は2つのことをテストしました。
パスワードを使用したマウント:
# mount -t cifs \\\\fileserver.my.org\\share /mnt -o user=domainUser1
次に、domainUser1
のドメインパスワードを尋ねられます。その後、共有はroot
によってマウントされます。
Kerberosチケットを使用したマウント:
# kinit domainUser1
# mount -t cifs \\\\fileserver.my.org\\share /mnt -o sec=krb5
このようにして、現在のセッションにKerberosチケットがある場合に共有をマウントできます(klist
で確認)。
すべてが手動で取り付けられます。 AutoFSを使用して共有をマウントしようとすると、問題が発生します。
/etc/auto.master
読み取り:
+ dir:/etc/auto.master.d
+ auto.master
/ cifs /etc/auto.cifs
そして/etc/auto.cifs
は次のように読みます:
共有-fstype = cifs、multiuser、cruid = $ {UID}、sec = krb5://fileserver.my.org/share
過去1時間にAutoFSについて学んだことから、これは機能するはずです。しかし、何らかの理由で、/cifs/
フォルダーは常に空です。 /var/log/messages
と/var/log/syslog
の両方を試しましたが、ログに注目すべきものは何も見つかりませんでした。
AutoFSのデバッグ
Autofsをデバッグするには、サービスを停止してコマンドラインで実行します。
Sudo service autofs stop
Sudo automount -f -d
またはデバッグログをオンにします
/etc/autofs.confを編集し、ロギングを「debug」または「verbose」に設定します。
logging = "debug"
これで遊んでください..しかし、実際には、デフォルトのままにしておくのに十分な詳細がありました(つまり、行をコメントアウトします)
Kerberosチケットのファイル名が正しいことを確認してください
これが私たちの頭痛の種でした。何年もの間、生成されたKerberosキーファイルのファイル名を修正するまで、AutoFSはKubuntu18.04で実行されませんでした。 demo.logを調べて、検索しているファイルの名前が/ tmp/krb *にあるものと同じであることを確認します。
これがdaemon.logでの表示であり、正確なファイル名が何であるかを確認できます。
May 14 17:08:29 computer123 cifs.upcall: get_existing_cc: default ccache is FILE:/tmp/krb5cc_12345678
上記はデフォルトのロギングオプション、つまり/etc/autofs.confでコメントアウトされたロギング行であったと確信しています。実際、おそらく詳細なオプションの1つはそれを表示しませんでした..(?!)
解決策-/ etc/sssd/sssd.confを編集し、[domain/yourAD_ServerName]の下に以下を追加する必要がありました
krb5_ccname_template=FILE:%d/krb5cc_%U
これは、AutoFSが期待するファイル名でkerborosチケットを作成するようにsssdに指示します。変更を有効にする前に再起動する必要がありました(はい、sssd-secrets、sssd、autofsを再起動してみました)。