Kerberos で保護されたサイトに IP アドレスでアクセスすると問題が発生します。例えば:
http:/10.10.1.x:3001/
失敗します。
http:/my-host:3001/
sso は正常に完了します。
Apacheエラーログには次のように書かれています:
src/mod_auth_kerb.c(1261): [クライアント 10.10.1.x] HTTP@10.10.1.x の資格を取得中 [クライアント 10.10.1.x] gss_acquire_cred() が失敗しました: 不明な GSS 障害。マイナー コードが詳細情報を提供する場合があります (キー テーブル エントリが見つかりません)
src/mod_auth_kerb.c(1261): [client 10.10.1.x Acquiring creds for HTTP@my-host [debug] src/mod_auth_kerb.c(1407): [client 10.10.1.x] Verifying client data using KRB5 GSS -API [デバッグ] src/mod_auth_kerb.c(1423): [クライアント 10.10.1.x] 検証がコード 0 を返しました
ご覧のとおり、Kerberos はプリンシパルを見つけようとしますHTTP@10.10.1.x
。HTTP@my-host
両方のプリンシパルについて、ActiveDirectory でダミー アカウントを作成しました。keytab ファイルには、それらの両方も含まれています。
KVNO Timestamp Principal
---- ----------------- -----------------------------------------------------
5 01/01/70 03:00:00 HTTP/10.10.1.x@MY_DOMAIN.LAN (ArcFour with HMAC/md5)
11 09/04/12 12:03:01 HTTP/my-host@MY_DOMAIN.LAN (ArcFour with HMAC/md5)
Kinit は両方で機能します。
サーバー上の Kerberos 構成:
Krb5Keytab /etc/krb5.keytab
AuthType Kerberos
KrbMethodNegotiate On
AuthName "Kerberos Login"
KrbAuthRealms MY_DOMAIN.LAN
KrbVerifyKDC Off
KrbMethodK5Passwd On
Require valid-user
誰かが問題がどこにあるのか推測できますか? Kerberos SSO で IP アドレスを使用することはできますか?