web-dev-qa-db-ja.com

Apache2 + mod_auth_kerb:キーテーブルのプリンシパルのキーバージョン番号が正しくありません

Apache2とmod_auth_kerbを設定しました。このように.htaccessを設定しました

# cat .htaccess
AuthType Kerberos
AuthName "Domain login"
KrbAuthRealms DOMAIN.COM
KrbMethodK5Passwd on
Krb5KeyTab /etc/httpd/httpd.keytab
require valid-user

IEでページを開くと、Apacheログに次のエラーが表示されます。

gss_accept_sec_context() failed: Miscellaneous failure (, Key version number for principal in key table is incorrect)

次に、パスワードを設定し、基本認証を介してログインできます。これで問題ありません。しかし、チケットで認証することはできません。

# klist -k /etc/httpd/httpd.keytab
Keytab name: FILE:/etc/httpd/httpd.keytab
KVNO Principal
---- --------------------------------------------------------------------------
   6 Host/[email protected]
   6 Host/[email protected]
   6 Host/[email protected]
   6 Host/[email protected]
   6 Host/[email protected]
   6 Host/[email protected]
   6 [email protected]
   6 [email protected]
   6 [email protected]
   6 HTTP/[email protected]
   6 HTTP/[email protected]
   6 HTTP/[email protected]
   6 HTTP/[email protected]
   6 HTTP/[email protected]
   6 HTTP/[email protected]

KVNOはどうすればよいですか?何が問題なのですか?

P.S. KDCは、ActiveDirectory(Windows 2003サーバー)内のKDCです。私のサーバープラットフォームはSUSELinux10です。

# cat /proc/version
Linux version 2.6.16.60-0.21-smp (geeko@buemphasized textildhost) (gcc version 4.1.2 20070115 (SUSE Linux)) #1 SMP Tue May 6 12:41:02 UTC 2008

mod_auth_kerbは最新です(5.4-4.15)。 Kerberosライブラリは次のとおりではありません。

# zypper search krb
Restoring system sources...
Parsing metadata for SUSE Linux Enterprise Server 10 SP3...
S | Catalog                             | Type    | Name               | Version        | Arch
--+-------------------------------------+---------+--------------------+----------------+-------
i | SUSE Linux Enterprise Server 10 SP3 | package | krb5               | 1.4.3-19.43.27 | x86_64
i | SUSE Linux Enterprise Server 10 SP3 | package | krb5-apps-clients  | 1.4.3-19.43.27 | x86_64
i | SUSE Linux Enterprise Server 10 SP3 | package | krb5-apps-servers  | 1.4.3-19.43.27 | x86_64
i | SUSE Linux Enterprise Server 10 SP3 | package | krb5-client        | 1.4.3-19.43.27 | x86_64
i | SUSE Linux Enterprise Server 10 SP3 | package | krb5-devel         | 1.4.3-19.43.27 | x86_64
i | SUSE Linux Enterprise Server 10 SP3 | package | krb5-server        | 1.4.3-19.43.27 | x86_64
3
petRUShka

KVNOはキータブのバージョン番号であり、新しいキータブを生成するか、パスワードが変更されるたびに、KVNOがインクリメントされます。番号は、ActiveDirectory内にあるものと一致する必要があります。このエラーは、キータブにマスターが古くなっていると見なすエントリが含まれていることを示しています。

adsiedit.mscを使用すると、ディレクトリ内のKVNOを確認できます。適切なユーザーの下で、msDS-KeyVersionNumber属性を探します。通常、キータブと同じである必要があります。 (あなたの場合6.)

4
Trevor Dell