Kerberos身份validation不适用于单个域

Kerberos身份validation与Apache mod_auth_kerb有一个奇怪的问题。 我们使用一个非常简单的krb5.conf,其中只configuration一个(主)AD服务器。 森林中有很多领域,似乎SSO在其中大部分领域都在工作,除了一个领域。

我不知道该域的特殊之处,我在Apache日志中看到的错误消息是“在Kerberos数据库中找不到服务器”:

[Wed Aug 31 14:56:02 2011] [debug] src/mod_auth_kerb.c(1025): [client xx.xxx.xxx.xxx] Using HTTP/[email protected] as server principal for password verification [Wed Aug 31 14:56:02 2011] [debug] src/mod_auth_kerb.c(714): [client xx.xxx.xxx.xxx] Trying to get TGT for user [email protected] [Wed Aug 31 14:56:02 2011] [debug] src/mod_auth_kerb.c(625): [client xx.xxx.xxx.xxx] Trying to verify authenticity of KDC using principal HTTP/[email protected] [Wed Aug 31 14:56:02 2011] [debug] src/mod_auth_kerb.c(640): [client xx.xxx.xxx.xxx] krb5_get_credentials() failed when verifying KDC [Wed Aug 31 14:56:02 2011] [error] [client xx.xxx.xxx.xxx] failed to verify krb5 credentials: Server not found in Kerberos database [Wed Aug 31 14:56:02 2011] [debug] src/mod_auth_kerb.c(1110): [client xx.xxx.xxx.xxx] kerb_authenticate_user_krb5pwd ret=401 user=(NULL) authtype=(NULL) 

当我尝试在运行Apache的计算机上启动该用户时,它可以正常工作。 我也检查了DNS查找工作,包括反向查找。

谁能告诉我最近怎么样?

可能是域名不是在你的AD forrest,但只与NTML信托相关? 您将需要Win2k3 Forrestfunction级别来启用forrest信任。 (外部信任只是NTLM)。