总结
首先:我的服务器名称是xy。
第二:我登录的域名是EXAMPLE.COM
第三:这是我的 apache 配置
<Location />
AuthType Kerberos
AuthName "Kerberos Login"
KrbServiceName HTTP
KrbMethodNegotiate On
KrbMethodK5Passwd Off
KrbAuthRealms EXAMPLE.COM
KrbSaveCredentials On
KrbVerifyKDC Off
KrbLocalUserMapping on
# This has to wait until we get the keytab file
Krb5Keytab /etc/apache2/satypo3.keytab
require valid-user
</Location>
第四:我生成keytab文件的方式是这样的:
ktpass
-princ HTTP/[email protected]
-mapuser [email protected]
-crypto AES256-SHA1
-ptype KRB5_NT_PRINCIPAL
-pass *PASS*
-out C:\temp\satypo3.keytab
第五:我的 /etc/hosts 文件包含 127.0.1.1 xy
第六:我访问前端时遇到的错误如下:
[auth_kerb:error] [pid 4809] [client 192.168.3.170:56962] gss_accept_sec_context() failed: Unspecified GSS failure. Minor code may provide more information (, Request ticket server HTTP/[email protected] not found in keytab (ticket kvno 6))
所以我不明白的是,尽管我没有以任何方式指定有关 xy.example.com 的任何信息,但 Kerberos 尝试以此方式对服务器进行身份验证但失败了。
有任何想法吗?
长版本:
我已经设置了 Apache Kerberos SSO,因为多年来,DevOps 中的许多同事已经多次这样做了,现在我也到了这一步。
我遵循了很多很棒的攻略,比如这个一切似乎都运行正常,直到用户尝试登录时,用户陷入无限循环的登录弹出窗口。我尝试按照描述的方式解决这个问题这里才发现一切都已经准确设置好了。
所以你是我最后的希望,请帮助我 Serverfault。
问候 Tizian
编辑错误的主要代码为 000d0000,次要代码为 96c73a23
答案1
所以我终于弄清楚了问题出在哪里。
看起来,这些选项无法通过在或者离开但在或者离开。