LinuxホストがWindows KDCに接続すると、Kerberosの問題が発生します。間違ったバージョンのKerberosキーが原因だと思います。
Shureになる方法の1つは、SPNを削除して新しく作成することですが、これは本番環境で行われるため、可能であれば「読み取り専用」でデバッグする必要があります。
Active Directoryのプリンシパルから現在のKerberos KVNOを取得するにはどうすればよいですか?
KVNOがあなたの問題と関係があるかどうか私は信じられません、たぶんLinuxクライアントでもいいのですが、とにかくWireshark/Network Monitorを使用します。
鍵バージョン番号については、MS-KILEセクション3.1.5.8で説明しています。
ところで、Mathias R. Jessenは、Windowsが通常KVNOを無視するという点で正しいです。しかし、それらはまだRFC準拠の方法で実装されています。
いいえ、WindowsはKVNOに注意を払っていません。それは単にそれを無視します。
ただし、KVNOはRODC環境でいくつかの重要性を持っています。
ここにいくつかの詳細情報: http://support.Microsoft.com/kb/2716037
1つ以上のRODCがある環境では、以下のシナリオのいずれかで特定のMITベースのKerberosデバイスと対話するときに、認証が失敗する場合があります。
・クライアントは、RODC上のWindows KDCからTGTを受信したMITデバイスです。
・クライアントは、RODC上のWindows KDCによって生成されたTGTをMITデバイスに渡します。デバイスは、TGTを使用して、呼び出し元ユーザーに代わってTGSを要求します。
どちらのシナリオでも、TGTはRODCによって発行され、RODCのkrbtgtアカウントに関連付けられたmsDS-SecondaryKrbTgtNumberの値は32767より大きい。
Linuxでは、kvnoコマンドを使用してKDCから取得できます。
[root@XXXX XXX]# kvno Host/XXXX
Host/[email protected]: kvno = 13
dsquery * -filter sAMAccountName=Accountname -attr msDS-KeyVersionNumber
PowerShellのADコマンドレットを使用すると、kvnoを照会できます。
get-aduser <username> -property msDS-KeyVersionNumber
ADに参加したLinuxサーバーからのクエリ:
net ads search -P '(&(objectCategory=computer)(cn=HOSTNAME))' msDS-KeyVersionNumber
[〜#〜] hostname [〜#〜]をホスト名に置き換えます。