2017-08-06 61 views
0

我想用Apache配置Kerberos驗證 - 沒有成功。 它看起來與keytab文件的問題。在CentOS7上使用Apache/PHP進行Kerberos驗證

當我運行:

klist -kte /path/to/website.HTTP.keytab 
I get: 
    KVNO Timestamp   Principal 
---- ------------------- ------------------------------------------------------ 
    12 01/01/1970 02:00:00 HTTP/[email protected] 

然後我運行:

kinit -k -t /path/to/website.HTTP.keytab HTTP/[email protected] 
kinit: Client 'HTTP/[email protected]' not found in Kerberos database while getting initial credentials 

任何想法什麼不順心?

+0

分享您的密鑰表創建命令,如果你仍然有它... –

+0

調整了ktpass命令更準確地反映目標環境 –

回答

0

HTTP/[email protected]是一個不完整的SPN,這似乎是最可能的原因的kinit在數據庫中找不到SPN。作爲例子,完整的SPN將如下所示:HTTP/[email protected]。要解決這個問題,您需要使用完全限定的語法重新創建密鑰表。 Example

ktpass -out HTTP.keytab -mapUser [email protected] +rndPass -mapOp set +DumpSalt -crypto AES128-SHA1 -ptype KRB5_NT_PRINCIPAL -princ HTTP/[email protected]