Bonjour à tous,
Voici mon environnement :
- Debian Squeeze avec les fonctions de serveur suivantes : Kerberos, Samba en PDC, NTP et Squid.
- Client XP SP2.
Le but final étant de faire du SSO avec cette seule machine sous Linux.
Le nom FQDN de mon serveur est kerberos.ADJB.PRIV
Dans Kerberos, avec kadmin.local, j’ai donc créé un principal (SMB/kerberos.ADJB.PRIV), puis un keytab avec la commande : ktadd -k krb5-smb.keytab SMB/kerberos.ADJB.PRIV
Enfin, j’ai déclaré l’emplacement du keytab dans mon smb.conf
Puis, même chose avec Squid : Création du principal HTTP/kerberos.ADJB.PRIV, puis du keytab krb5-http.keytab. Dans /etc/default/squid3, je déclare la variable KRB5_KTNAME avec le chemin du keytab. Enfin, je modifie le squid.conf pour qu’il utilise kerberos, notamment avec le helper appelé “squid_kerb_auth”.
Mon utilisateur sous XP récupère bien un ticket à l’ouverture de session grâce à Samba, et je peux voir ce ticket avec le programme kfw-3.2.2 (Kerberos For Windows). Mais à l’ouverture du navigateur (IE et Firefox), le message “Cache Access Denied” apparait. Et dans les logs Squid (access.log) :
Squid n’arrive visiblement pas à authentifier l’utilisateur par Kerberos, même en changeant quelques droits ou options (comme “cache_effective_user” ou “cache_effective_group”).
Je me suis aidé principalement des tutos suivants :
http://irp.nain-t.net/doku.php/320kerberos:70_kerberos-ad
http://www.morot.fr/2004/10/21/installation-dun-kdc-kerberos
Suggestions ou questions sont les bienvenues.
Merci.