web-dev-qa-db-ja.com

Active Directoryから現在のKerberos KVNOを取得する

LinuxホストがWindows KDCに接続すると、Kerberosの問題が発生します。間違ったバージョンのKerberosキーが原因だと思います。

Shureになる方法の1つは、SPNを削除して新しく作成することですが、これは本番環境で行われるため、可能であれば「読み取り専用」でデバッグする必要があります。

Active Directoryのプリンシパルから現在のKerberos KVNOを取得するにはどうすればよいですか?

6
ixe013

KVNOがあなたの問題と関係があるかどうか私は信じられません、たぶんLinuxクライアントでもいいのですが、とにかくWireshark/Network Monitorを使用します。

kvno

鍵バージョン番号については、MS-KILEセクション3.1.5.8で説明しています。

ところで、Mathias R. Jessenは、Windowsが通常KVNOを無視するという点で正しいです。しかし、それらはまだRFC準拠の方法で実装されています。

http://blogs.msdn.com/b/openspecification/archive/2009/11/13/to-kvno-or-not-to-kvno-what-is-the-version.aspx

いいえ、WindowsはKVNOに注意を払っていません。それは単にそれを無視します。

ただし、KVNOはRODC環境でいくつかの重要性を持っています。

http://blogs.msdn.com/b/openspecification/archive/2011/05/11/notes-on-kerberos-kvno-in-windows-rodc-environment.aspx

ここにいくつかの詳細情報: 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より大きい。

5
Ryan Ries

Linuxでは、kvnoコマンドを使用してKDCから取得できます。

[root@XXXX XXX]# kvno Host/XXXX

Host/[email protected]: kvno = 13
4
nerocide
dsquery * -filter sAMAccountName=Accountname -attr msDS-KeyVersionNumber
4
MontxoMD

PowerShellのADコマンドレットを使用すると、kvnoを照会できます。

get-aduser <username> -property msDS-KeyVersionNumber

4
plaes

ADに参加したLinuxサーバーからのクエリ:

net ads search  -P  '(&(objectCategory=computer)(cn=HOSTNAME))'  msDS-KeyVersionNumber

[〜#〜] hostname [〜#〜]をホスト名に置き換えます。

2
st0ne