帶有 kerberos 和 Active Directory 錯誤的 Apache SSO
我有這種情況:一個 Windows 2008 R2 域和一個帶有 Apache 的 linux 伺服器 (CentOs)。
我需要使用 kerberos 配置 SSO,以允許我們的內部客戶端使用 IE 或 Chrome 在網站上進行身份驗證而無需輸入密碼。
為了做到這一點,我遵循本教程https://wiki.gentoo.org/wiki/Kerberos_Windows_Interoperability。
我的站點的 Apache conf 文件是:
AuthType Kerberos AuthName "Kerberos Login" KrbAuthRealms <MYREALM> KrbServiceName HTTP/OTRS5@<MYREALM> Krb5Keytab /etc/krb5.keytab KrbMethodNegotiate On KrbMethodK5Passwd Off KrbSaveCredentials Off KrbVerifyKDC Off Require valid-user
現在,當我嘗試連接到該站點時,我收到了 401 程式碼。
在error.log上我發現:
kerb_authenticate_user entered with user (NULL) and auth_type Kerberos Acquiring creds for HTTP/OTRS5@<MYREALM> Verifying client data using KRB5 GSS-API Client didn't delegate us their credential
在 journalctl 上:
GSSAPI Error: Unspecified GSS failure. Minor code may provide more information (Server not found in Kerberos database)
我對此一無所知。
你能幫助我嗎?問候弗朗切斯科
我發現了這個問題。1) 我在 DC https://support.microsoft.com/en-us/kb/262177上啟用了 kerberos 登錄
2)再次檢查登錄後,我在安全日誌下發現此錯誤:KDC 在處理 Kerberos 身份驗證請求時遇到重複名稱。重複名稱是 HTTP/(DS_SERVICE_PRINCIPAL_NAME 類型)。這可能會導致身份驗證失敗或降級到 NTLM。為了防止這種情況發生,請刪除 Active Directory 中 HTTP/ 的重複條目。3)我使用此過程查找重複條目 https://support.microsoft.com/en-us/kb/321044
4)我使用 Active Directory 使用者和電腦刪除重複條目:a)打開 ADUAC b)查看->高級功能 c)打開具有重複條目的對象 d)打開屬性編輯器 e)選擇 servicePrincipalName 並刪除條目 f)再次禁用 kerberso 日誌記錄
再見弗朗切斯科