Home « Articles « Les services ! «
CONNECTER UNE STATION LINUX A UN SERVEUR EOLE
Tags: SERVICES
Comment raccrocher un poste client mandriva sur un domaine samba ou nfs ? Cette documentation a été réalisé par KALAI Medhi à partir d'unemandriva 2007.1 pour rejoindre un serveur Eole scibe 1.0 (sous mandrake 9.1).
Configuration des clients Mandriva 2007 Spring
Lors de l'installation, créez un compte local « prof ». Au redémarrage, copiez son repertoire perso de /home/prof vers /opt/prof. Puis, éditez le fichier /etc/passwd et, sur la ligne prof, changez /home/prof en /opt/prof.
1. Configuration
a. l'authentification
1. Dans une console sous root, tapez «drakauth», le système installe vérifie les dépendances et installe les paquets manquants. Il suffit d'insérer les cd/dvd à la demande.
2. Dans la fenêtre «authentification» qui s'ouvre, cliquez sur ldap .
3. Dans la fenêtre «drakauth», entrez les valeurs «o=gouv,c=fr» pour la racine ldap, puis l'ip du scribe pour le serveur.
L'authentification par ldap fonctionne. Pour la tester, on verifie que les utilisateurs du scribe sont bien reconnus en local: si on tape «id mkalai» (n'importe quel utilisateur enregistré dans l'annuaire), on doit obtenir:
«uid=12604(mkalai)gid=10001(professeurs)groupes=10001(professeurs),12063(agl1),513(domainUsers)»
b. le montage des repertoires perso et des partages
Nous allons monter /home par nfs et les partages par smb et pam-mount. Pam-mount est un script qui permet un montage automatique et entièrement paramétrable des partages samba, à la manière du montage sous windows.
Montage de /home par nfs
1. sur le serveur:
Éditer les 3 fichiers suivants:
1. Pour /etc/exports, ajoutez la ligne suivante:
/home *(rw,sync)
Attention: pas d'espace entre * et (rw,sync)
2. Pour /etc/hosts.allow, ajoutez les lignes suivantes
portmap:192.168.220.
mountd:192.168.220.
lockd:192.168.220.
rquotad:192.168.220.
statd:192.168.220.
où 192.168.220. est l'adresse de votre réseau pédagogique
3. Pour /etc/hosts.deny, ajoutez les lignes suivantes:
portmap:ALL
mountd:ALL
lockd:ALL
rquotad:ALL
statd:ALL
Enfin, relancer le service nfs:
«service portmap restart» puis «service nfs restart»
2. sur le client
Pour récupérer le /home du scribe en local, éditez le fichier /etc/fstab. Si vous avez une ligne pour une partition montée sur /home, commentez-la (ajoutez une dièse en début de ligne). Puis, après la ligne qui commence par /dev/hda1..., ajoutez la ligne:
192.168.220.1:/home /home nfs rw 0 0
(remplacez 192.168.220.1 par l'ip de votre scribe)
Montage des partages par samba et pam-mount
S'il ce n'est pas fait, commencez par installer le paquet pam-mount: tapez « urpmi pam-mount » sous root.
Nous allons demander au module pam d'inclure pam-mount et paramétrer pam-mount pour qu'il monte les partages commun, groupes et professeurs en smbfs, dans le repertoire /media. On peut les monter ailleurs (mnt, par exemple) à condition que ce soit un repertoire local.
Sous Mandriva, il suffit d'editer /etc/pam.d/system-auth comme suit:
#%PAM-1.0
auth sufficient pam_unix.so
auth required pam_mount.so use_first_pass
auth required pam_group.so use_first_pass
auth sufficient pam_ldap.so use_first_pass
auth required pam_env.so
account sufficient pam_ldap.so
account sufficient pam_unix.so
password required pam_unix.so nullok obscure min=4 max=8 md5
session required pam_unix.so
session optional pam_mkhomedir.so
session optional pam_mount.so
Pour configurer le montage des partages samba, editez /etc/security/pam_mount.conf. A la fin de la section Volumes ( au milieu du fichier, elle commence par: « Volumes that will be mounted when user triggers the pam_mount module... »), ajoutez les lignes suivantes:
volume * smbfs scribe commun /media/commun uid=&,gid=&,dmask=777,fmask=777 - -
volume * smbfs scribe groupes /media/groupes uid=&,gid=&,dmask=777,fmask=777 - -
volume * smbfs scribe professeurs /media/professeurs uid=&,gid=&,dmask=777,fmask=777 - -
Ici, scribe est le nom de mon serveur. Ce script dit à pam que pour tout utilisateur qui s'authentifie, le partage samba «perso» qui est sur la machine scribe doit être monté dans le repertoire /media/perso, en utilisant l'identité et le groupe de cet utilisateur et en donnant les droits 777 sur ce repertoire. Ensuite, c'est le serveur qui gère les droits; ainsi un élève ne pourra pas accèder au partage professeurs.
4. Problèmes liés à l'authentification distante
Le son, les lecteurs amovibles et les périphériques usb
Pour accéder à la carte son et aux périphériques, les utilisateurs locaux appartiennent aux groupes secondaires audio, plugdev, etc. Les groupes sont définis dans /etc/group. Leurs membres sont nécessairement des utilisateurs locaux. Nous allons demander à pam-group d'intégrer tout utilisateur distant qui s'authentifie par ldap aux groupes locaux audio, video, cdrom, plugdev, floppy et scanner.
C'est pour cela que nous avons déjà ajouté pam-group à /etc/pam.d/system-auth. Il nous reste à éditer /etc/security/group.conf et ajouter la ligne:
*;*;*;Al0000-2400;floppy,audio,cdrom,video,plugdev,scanner
Dans Al0000-2400, c'est bien la lettre l qui suit le A.
Cette plage définit l'heure à laquelle le service est actif. Ici, c'est tout le temps (de 00h à 24h). On pourrait par exemple permettre au prof mehdi.kalai de jouer et d'avoir le son après les heures de travail en l'intégrant aux groupes games et audio. On ajoute la ligne
*;*;mehdi.kalai;!Wk0800-1700;games,audio
Conclusion:
Cette configuration de /etc/pam.d/system-auth est le meilleur compromis que j'ai pu trouver entre les connexions locales et distantes. Tout fonctionne parfaitement, mais seuls les utilisateurs locaux peuvent accéder à une console. D'autre part, quand un utilisateur local déjà connecté lance la commande su pour devenir root, il doit taper son mot de passe deux fois.