web-dev-qa-db-ja.com

winサーバーでkeytabファイルを作成する際の問題

キータブファイルを作成しようとしています。警告が表示されます

  WARNING: pType and account type do not match. This might cause  problems.

私が使用するコマンドは

  ktpass -princ HTTP/[email protected] -mapuser [email protected] -crypto rc4-hmac-nt -pass **** -ptype KRB5_NT_SRV_HST -out "C:\Documents and Settings\Administrator\bloodhound.kytab"

これをApacheのSSOに使用したいと思います。私はこれをWindowsServer 2003 r2sp2で作成しています

出力

Targeting domain controller: fezziwig.uk.domain.com
Using legacy password setting method
Successfully mapped HTTP/bloodhound.domain.com to ldaplookup.
WARNING: pType and account type do not match. This might cause  problems.
Key created.
Output keytab to C:\Documents and Settings\Administrator.UK-GGS-DOMAIN\bloodhound.keytab:
Keytab version: 0x502
keysize 82 HTTP/[email protected] ptype 3 (KRB5_NT_SRV_HST) vno 14 etype 0x17 (RC4-HMAC) keylength 16 (0xde184005d851613980cffb9580bdd193)

http://www.zimbra.com/docs/os/7.2.3/administration_guide/wwhelp/wwhimpl/common/html/wwhelp.htm#href=7.2.3_Open_Source_adminと同じように表示される多くの手順を実行しました.Create_the_Kerberos_Keytab_File.html&single = true

しかし、どれも機能しません。 kvnoでテストすると、次のようになります

[root@portal-test conf]# klist -ke bloodhound1.keytab 
Keytab name: FILE:bloodhound1.keytab
KVNO Principal
---- --------------------------------------------------------------------------
  27 HTTP/[email protected] (ArcFour with HMAC/md5) 
[root@portal-test conf]# kvno HTTP/[email protected]
kvno: Server not found in Kerberos database while getting credentials for HTTP/[email protected]

更新

uRLを使用してアクセスしたいウェブサーバー http://Cobra.woking/

次のコマンドは、Windows Server 2008R2標準で入力しました

ktpass -princ HTTP/[email protected] -mapuser [email protected] -crypto rc4-hmac-nt -pass password -ptype KRB5_NT_SRV_HST -out "C:\Temp\Cobra.kytab" -ptype KRB5_NT_PRINCIPAL

Targeting domain controller: echo.spectrumasa.com
Successfully mapped HTTP/Cobra.woking to ldaplookup.
Password succesfully set!
Key created.
Output keytab to C:\Temp\Cobra.kytab:
Keytab version: 0x502
keysize 68 HTTP/[email protected] ptype 1 (KRB5_NT_PRINCIPAL) vno 33 etype 0x17 (RC4-HMAC
) keylength 16 (0xde184005d851613980cffb9580bdd193)

ファイルをWebサーバーにコピーしました。 Webサーバーの構成を次のように更新しました。

<Directory /opt/html/trac>
        AuthType Kerberos
        AuthName KerberosLogin
        KrbServiceName HTTP/Cobra.woking
        KrbMethodNegotiate On
        KrbMethodK5Passwd On
        KrbAuthRealms SPECTRUMASA.COM
        Krb5KeyTab /tmp/Cobra.kytab

        AuthLDAPURL ldap://ldapauth.spectrumasa.com/ou=TechSupport,ou=Woking,ou=Sites,dc=spectrumasa,dc=com?userPrincipalName
        AuthLDAPBindDN cn=ldaplookup,cn=Users,dc=spectrumasa,dc=com
        AuthLDAPBindPassword password

        #require valid-user
        Require ldap-group cn=support,cn=Users,dc=spectrumasa,dc=com
        ErrorDocument 401 "<html><meta http-equiv=\"refresh\" content=\"0;url=/intranet/info/unauthorized\"></html>"
</Directory>

テスト済みのキータブ

klist -ke Cobra.kytab 
Keytab name: FILE:Cobra.kytab
KVNO Principal
---- --------------------------------------------------------------------------
  33 HTTP/[email protected] (arcfour-hmac) 

kvno HTTP/[email protected]
kvno: Ticket expired while getting credentials for HTTP/[email protected]

URLにアクセスすると、IEにアクセスしますが、Firefoxでは、パスワードプロンプトを取得すると機能します。

gss_accept_sec_context() failed: Unspecified GSS failure.  Minor code may provide more information (, ), referer: http://Cobra.woking/trac/

どうすれば修正できますか?

このサーバーで機能するintranet keytabファイルをすでに持っています

[root@Cobra conf]# klist -ke intranet.keytab
Keytab name: FILE:intranet.keytab
KVNO Principal
---- --------------------------------------------------------------------------
   8 HTTP/[email protected] (arcfour-hmac) 
[root@Cobra conf]# kvno HTTP/[email protected]
kvno: Ticket expired while getting credentials for HTTP/[email protected]

2回目の更新

以下を使用してキータブを再作成しました

ktpass -princ HTTP/[email protected] -mapuser [email protected] -crypto rc4-hmac-nt -pass password -out "C:\Temp\Cobra1.keytab" -ptype KRB5_NT_PRINCIPAL

私のDNSに私は持っています

  Cobra         A   172.16.0.216

apacheで私は持っています

KrbServiceName HTTP/Cobra
Krb5KeyTab /etc/httpd/conf/Cobra1.keytab

http::/Cobra/tracにアクセスしようとすると、パスワードの入力を3回求められます。ログは示しています

uRLに入力します。最初のパスワードプロンプト表示SPECTRUM/user

gss_accept_sec_context() failed: Unspecified GSS failure.  Minor code may provide more information (, )

2番目のパスワードプロンプト表示Cobra/userおよびログ表示

gss_accept_sec_context() failed: No credentials were supplied, or the credentials were unavailable or inaccessible (, Unknown error)

3番目のパスワードプロンプトユーザーとパスワードを入力する必要があり、それは機能します。

http://Cobrahttp://Cobra.spectrumasa.comを信頼済みサイトに追加しました。

3
shorif2000

出力に表示されるエラーは、SPNをプリンシパルにマッピングしていないためです。エラーを回避するために、-ptype KRB5_NT_PRINCIPALのptypeスイッチを使用する必要があります。

KRB5_NT_PRINCIPALは、一般的なプリンシパルタイプ(推奨) Microsoftによって文書化 です。

4
lantrix