SshAvecAfs

De Wiki du LAMA (UMR 5127)
Aller à la navigation Aller à la recherche

Sur le client

Dans /etc/ssh/ssh_config, ajouter :

Host *
...
GSSAPIAuthentication yes
GSSAPIDelegateCredentials yes

Dans /etc/krb5.conf, vérifier que le royaume est bien connu :

[libdefaults]
       default_realm = LAMA.UNIV-SAVOIE.FR
       forwardable = true
[realms]
       LAMA.UNIV-SAVOIE.FR = {
               kdc = lama.univ-savoie.fr
               admin_server = lama.univ-savoie.fr
       }

Pour chaque serveur SSH

On veut pouvoir se connecter sur d45.lama.univ-savoie.fr depuis une autre machine, grâce au ticket Kerberos que l'on détient dans le royaume LAMA.UNIV-SAVOIE.FR.

On pourrait utiliser les clefs publiques/clefs privées de SSH, mais on a mieux avec Kerberos, car en plus le ticket AFS suit.

Sur le serveur du LAMA

Le serveur SSH de d45.lama.univ-savoie.fr a besoin d'un principal qui l'identifie dans le royaume. Ce principal c'est host/d45.lama.univ-savoie.fr@LAMA.UNIV-SAVOIE.FR et il faut le créer sur le serveur du LAMA.

# kadmin -l
kadmin> add -r host/d45.lama.univ-savoie.fr@LAMA.UNIV-SAVOIE.FR
Max ticket life [1 week]:
Max renewable life [1 month 1 day]:
Principal expiration time [never]:
Password expiration time [never]:
Attributes []:
kadmin> ext_keytab -k /tmp/d45.keytab host/d45.lama.univ-savoie.fr
kadmin> quit

Ne pas oublier de virer à la fin le fichier /tmp/d45.keytab (c'est une clef secrète) !

Sur la machine à kerbériser

Il faut activer le support Kerberos sur d45.lama.univ-savoie.fr dans SSH ; dans /etc/ssh/sshd_config :

# Kerberos options
KerberosAuthentication yes
KerberosOrLocalPasswd yes
KerberosTicketCleanup yes

# GSSAPI options
GSSAPIAuthentication yes
GSSAPICleanupCredentials yes
GSSAPIStrictAcceptorCheck no # ça c'est super important

Et il faut lui donner son principal secret :

# scp www.lama.univ-savoie.fr:/tmp/d45.keytab /etc/krb5.keytab
# chmod 600 /etc/krb5.keytab