AnsweredAssumed Answered

Problemas con Kerberos + AD

Question asked by cybermakoki on Mar 24, 2011
Hola!

Me he montado dos maquinas virtuales para hacer pruebas de SSO con kerberos.. ahora mismo tengo un xp y un windows server 2008 con un directorio activo.

Entre ellos se comunican bien, he probado autenticación con ldap y funciona sin problemas… pero cuando he empezado con kerberos… bufff

os cuento un poco lo que he hecho hasta ahora…

Máquina windows server 2008

dominio: ldap.patri.com
nombre: win2008

Máquina windows xp

nombre: xpclient

He creado los dos usuarios alfresco HTTP y alfresco CIFS, en win2008 he generado las keytab de la siguiente manera:

ktpass -princ cifs/xpclient.ldap.patri.com@LDAP.PATRI.COM -pass Pruebalocal1 -mapuser LDAP\alfrescocifs
-crypto RC4-HMAC-NT -ptype KRB5_NT_PRINCIPAL -out c:\temp\alfrescocifs.keytab

ktpass -princ HTTP/xpclient.ldap.patri.com@LDAP.PATRI.COM -pass Pruebalocal1 -mapuser LDAP\alfrescohttp
-crypto RC4-HMAC-NT -ptype KRB5_NT_PRINCIPAL -out c:\temp\alfrescohttp.keytab

y:


setspn -a cifs/xpclient alfrescocifs
setspn -a cifs/xpclient.ldap.patri.com alfrescocifs

setspn -a HTTP/xpclient alfrescohttp
setspn -a HTTP/xpclient.ldap.patri.com alfrescohttp

Después en el cliente xp , he instalado kerberos 5 y he modificado el fichero C:\WINDOWS\krb5.ini:

[libdefaults]
   default_realm = LDAP.PATRI.COM
   default_tkt_enctypes = rc4-hmac
   default_tgs_enctypes = rc4-hmac
   dns_lookup_realm = false
   dns_lookup_kdc = true

[realms]
   LDAP.PATRI.COM = {
      admin_server = win2008.ldap.patri.com
      kdc = win2008.ldap.patri.com:88
      
}

[domain_realm]
#   .win2008.ldap.patri.com = LDAP.PATRI.COM
#   win2008.ldap.patri.com = LDAP.PATRI.COM
   .ldap.patri.com = LDAP.PATRI.COM
   ldap.patri.com = LDAP.PATRI.COM


[logging]

default = FILE:C:/krb5libs.log
kdc = FILE:C:/krb5kdc.log
admin_server = FILE:C:/kadmind.log


en java.login.config tengo:

Alfresco {
   com.sun.security.auth.module.Krb5LoginModule sufficient;
};

AlfrescoCIFS {
   com.sun.security.auth.module.Krb5LoginModule required
   storeKey=true
   useKeyTab=true
   keyTab="C:/etc/alfrescocifs.keytab"
   principal="cifs/xpclient.ldap.patri.com";
};

AlfrescoHTTP {
   com.sun.security.auth.module.Krb5LoginModule required
   storeKey=true
   useKeyTab=true
   keyTab="C:/etc/alfrescohttp.keytab"
   principal="HTTP/xpclient.ldap.patri.com";
};

com.sun.net.ssl.client {
   com.sun.security.auth.module.Krb5LoginModule sufficient;
};

other {
   com.sun.security.auth.module.Krb5LoginModule sufficient;
};

la cosa es, que he intentado ejecutar el comando que indica en la wiki:

kinit -k -t c:\etc\alfrescocifs.keytab alfrescocifs/ldap.patri.com

y me está devolviendo este error:

Exception: krb_error 0 No supported key found in keytab for principal alfrescocifs/ldap.patri.com@LDAP.PATRI.COM No error
KrbException: No supported key found in keytab for principal alfrescocifs/ldap.patri.com@LDAP.PATRI.COM
        at sun.security.krb5.internal.tools.Kinit.<init>(Kinit.java:192)
        at sun.security.krb5.internal.tools.Kinit.main(Kinit.java:107)

La verdad que estoy atascadisima en este punto y no se por donde tirar… a ver si alguien me puede arrojar algo de luz!!!

graciaaas :)

Outcomes