Estou tentando configurar o SSO no meu servidor Apache usando o Kerberos, para que os usuários registrados no domínio local sejam reconhecidos e conectados imediatamente.
Eu segui orientar para a letra, mas não consigo me livrar do prompt de usuário / senha depois que tudo estiver configurado.
Estou usando o Ubuntu 8.04, instalei o mod_auth_kerb 5.4 para o Apache.
Meu /etc/krb5.conf:
[libdefaults]
default_realm = COMPANY.LOCAL
[domain_realm]
.company.local = COMPANY.LOCAL
company.local = COMPANY.LOCAL
[realms]
COMPANY.LOCAL = {
default_domain = company.local
kdc = DC01.COMPANY.LOCAL:88
admin_server = DC01.COMPANY.LOCAL
}
Minha configuração do Apache:
<Location />
AuthType Kerberos
AuthName "server login"
KrbMethodNegotiate On
KrbMethodK5Passwd On
KrbAuthRealms COMPANY.LOCAL
KrbServiceName HTTP
Krb5KeyTab /etc/apache2/httpd.keytab
KrbVerifyKDC off
KrbLocalUserMapping on
require valid-user
</Location>
O Keytab foi gerado pelo nosso administrador usando
ktpass -princ HTTP/[email protected] -mapuser hostname -crypto rc4-hmac-nt -ptype KRB5_NT_SRV_HST -pass CHOOSEPASSWORD -out httpd.keytab
Eu emiti os comandos chmod / chown relevantes. No servidor, eu emiti com sucesso kinit HTTP/[email protected]
e efetuei login.
kvno
/ klist
output:
# kvno HTTP/[email protected]
HTTP/[email protected]: kvno = 8
# klist -ke httpd.keytab
Keytab name: FILE:httpd.keytab
KVNO Principal
---- --------------------------------------------------------------------------
8 HTTP/[email protected] (ArcFour with HMAC/md5)
Eu configurei meu navegador (tentei ambos ff e ie no windows7) para passar as credenciais para esperançosamente me livrar do prompt, mas ele não está funcionando.
Os logs de erro do Apache estão dizendo:
[error] [client 10.0.0.1] gss_accept_sec_context() failed: Unspecified GSS failure. Minor code may provide more information (, Key version number for principal in key table is incorrect)
[error] [client 10.0.0.1] gss_accept_sec_context() failed: Invalid token was supplied (, No error)
Alguém tem alguma sugestão sobre o que eu preciso para que isso funcione?