MettreAFS

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

Passer une machine de NFS vers AFS

Kerbériser la machine

> sudo apt-get install libpam-krb5 heimdal-clients

Dans /etc/krb5.conf :

[libdefaults]
       default_realm = LAMA.UNIV-SAVOIE.FR

[realms]
       LAMA.UNIV-SAVOIE.FR = {
               kdc = lama.univ-savoie.fr
               admin_server = lama.univ-savoie.fr
       }
[domain_realm]
       www.lama.univ-savoie.fr = LAMA.UNIV-SAVOIE.FR
       .lama.univ-savoie.fr = LAMA.UNIV-SAVOIE.FR
       lama.univ-savoie.fr = LAMA.UNIV-SAVOIE.FR
       .univ-savoie.fr = LAMA.UNIV-SAVOIE.FR
       univ-savoie.fr = LAMA.UNIV-SAVOIE.FR

Installer OpenAFS

> sudo apt-get install openafs-client openafs-krb5 libpam-afs-session

Peut-être aussi

> sudo apt-get install openafs-modules-dkms

Cellule AFS : lama.univ-savoie.fr Taille du cache : Christophe veut un cache monstrueux (500 Mo par exemple, dépend de la taille de /var/cache/openafs).

Dans /etc/openafs/CellServDB, virer tout et laisser uniquement :

>lama.univ-savoie.fr
193.48.123.134 # lama.univ-savoie.fr

Puis faire (si vous le voulez des liens pour les homes) :

> sudo rm /home
> sudo rm /home2
> sudo ln -s /afs/lama.univ-savoie.fr/user /home
> sudo ln -s /afs/lama.univ-savoie.fr/user /home2

Enfin, ajouter la ligne

auth   optional   pam_afs_session.so

à la fin des deux fichiers /etc/pam.d/common-auth et /etc/pam.d/common-session.

Sur MAC OS X 10.7 (marche peut-être avec 10.5 et 10.6)

  • Le fichier /etc/krb5.conf est à nommer /Library/Preferences/edu.mit.Kerberos
  • Il faut installer openAFS depuis la page : http://www.openafs.org/macos.html et mettre lama.univ-savoie.fr comme cellule par défaut
  • le fichier /etc/openafs/CellServDB est alors à placer dans /var/db/openafs/etc/
  • redémarrer le MAC pour être sur de redémarrer openAFS (on doit pouvoir éviter ça)
  • dans le panneau de préférence openAFS cocher Use aklog et get credential at login time
  • pour plus de confort créer un lien où bon vous semble pour votre home sur le serveur lama qui est dans /afs/lama.univ-savoie.fr/user/mon_login

Vérification

Logger vous sur la machine et taper klist. La réponse doit ressembler à:

Credentials cache: FILE:/tmp/krb5cc_1066_T1K6vd
       Principal: raffalli@LAMA.UNIV-SAVOIE.FR

 Issued           Expires          Principal
Aug 14 13:34:19  Aug 15 13:34:19  krbtgt/LAMA.UNIV-SAVOIE.FR@LAMA.UNIV-SAVOIE.FR
Aug 14 13:34:19  Aug 15 13:34:19  afs@LAMA.UNIV-SAVOIE.FR

Les deux dernières lignes vous indique que vous avez un ticket kerberos sur le royaume du LAMA et un ticket kerberos pour les serveur OpenAFS.

Tapez aussi tokens avec une réponse attendue qui ressemble à:

Tokens held by the Cache Manager:

User's (AFS ID 1066) tokens for afs@lama.univ-savoie.fr [Expires Aug 15 13:34]
  --End of list--

On vois sur l'avant dernière ligne, le jeton afs qui autorise la connection au serveur et qui a été obtenu auprès du serveur afs en présentant le ticket kerberos afs.

Possibilités supplémentaires

Avoir des droits depuis son compte local

Si vous avez un compte local sur votre machine, vous pouvez avoir simultanément les droits sur votre compte local et sur le compte sur lama.univ-savoie.fr.

Pour cela, une fois loggé sur votre compte local, tapé

> kinit login_sur_lama
> aklog

La première commande sert à obtenir un ticket Kerberos (on peut vérifir son ticket avec klist) la second commande présente le ticket pour opbtenir un jeton afs.

Après ça vous devriez avoir les droits sur

/afs/lama.univ-savoie.fr/user/login_sur_lama

Taille du cache

Il n'y a aucune raison que la taille du cache ne soit pas du même ordre de grandeur que la taille de vos fichiers personnels.

Il faut juste faire attention, le cache est par défaut dans /var/cache/openafs et il ne faudrait pas qu'un cahce de 20Go remplisse votre partition /. Donc il faut mettre le cache là où il y a assez de place (avec un lien symbolique ou en changeant le cache par défaut).

La configuration du cache (taille max et position) est dans

/etc/openafs/cacheinfo

Renouveler les tickets avec l'écran de veille

Dans /etc/pam.d/gnome-screensaver (ou /etc/pam.d/xscreensaver, non testé encore):

auth    [success=ok default=1] pam_krb5.so minimum_uid=1000
auth    [default=4]        pam_afs_session.so nopag
auth    [success=3 default=ignore]      pam_unix.so nullok_secure try_first_pass
# here's the fallback if no module succeeds
auth    requisite                       pam_deny.so
# prime the stack with a positive return value if there isn't one already;
# this avoids us returning an error just because nothing sets a success code
# since the modules above will each just jump around
auth    required                        pam_permit.so
# and here are more per-package modules (the "Additional" block)
auth    optional                        pam_cap.so 

auth optional pam_gnome_keyring.so

SSh et AFS

Ce sujet a une page dédiée : SshAvecAfs