Authentification LDAP + montage NFS

Salut,

[quote]Visiblement le montage manuel du /home/test-admin distant dans /home/remote/test-admin se fait bien, mais quand il faut passer par autofs+openldap, ca ne marche pas (ou du moins j’ai aucune erreur, mais un répertoire monté “fantôme” qui ne reflète en fait pas le /home distant du serveur nfs).
Une idée ?
[/quote]
En effet, c’est embétant :unamused:

C’est bien ce que je pensai; perso, je vois ça en “couche”; nfs en “dessous” et ldap+pam “dessus”; il faut évidement que les exports(pas les partages!!) fonctionnent avant d’ajouter un mécanisme d’authentification(+ complexe) par dessus.

Désolé, mais je ne peut t’aider que sur nfs; je ne maitrise pas LDAP&pam. Je continuerai à suivre ton post; Qui sait? J’aurai peut-être une illumination divine :bulb:

D’ailleur à ce propos, j’ai appercu dans un des man de “autofs”(mais je sais plus lequel :blush: ) un truc qui parlait de “/-”; Sorte de racinne, il me semble. Ca n’aurait pas de rapport avec ton “HOME=/”. Il est peut-être par là le truc :bulb: :bulb:

Juste une précision, pour finir; Je me suis mal exprimé hier(droit serveur NFS). J’ai revérifié ce matin… et,

Les droits qu’il y auras sur les points de montages des clients seront les mêmes que ceux sur le serveur nfs.
ex: /home sur toto = 0755; un fois monté sur le client, ces droits remplaceront ceux du dossier préexistant; deplus, impossible de les changer!! Seul un chown est possible(ce qui resous le problème d’écriture). nfs “tranfer” les droits de l’export;

A+

Debcool

[quote=“debcool”]
Désolé, mais je ne peut t’aider que sur nfs; je ne maitrise pas LDAP&pam. Je continuerai à suivre ton post; Qui sait? J’aurai peut-être une illumination divine :bulb:

D’ailleur à ce propos, j’ai appercu dans un des man de “autofs”(mais je sais plus lequel :blush: ) un truc qui parlait de “/-”; Sorte de racinne, il me semble. Ca n’aurait pas de rapport avec ton “HOME=/”. Il est peut-être par là le truc :bulb: :bulb:[/quote]

Merci de t’être pencher sur mon cas quand même ! Et puis au moins j’ai appris des choses sur la gestion des droits avec nfs grace a toi.

Pour la doc d’automount concernant “/-”, ferais tu référence à ca ?:

Pour ce qui est de “/-” je n’ai pas vu ca dans le man d’autofs, mais le seul truc que je connaisse par d’autres tutos et la partie de man que j’ai cité plus haut, c’est qu’il faut configurer ton auto.master (fichier autofs/automount) pour monter le /home entier, et dans ton ldap tu as quelque chose du style:

dn: ou=export,dc=XXXXXX,dc=XXXXX
objectClass: top
objectClass: automountMap
ou: export

dn: cn=/,ou=export,dc=XXXXXXX,dc=XXXXXXx
objectClass: top
objectClass: automount
cn: /
automountInformation: -rw,nfs,hard,intr,nodev,nosuid 192.168.0.1:/home/&

avec, comme l’indiques ce site, / et & considérés comme des caractères joker pour monter tout les home. C’est ce que j’ai fait.

Salut,

[quote]Merci de t’être pencher sur mon cas quand même ! Et puis au moins j’ai appris des choses sur la gestion des droits avec nfs grace a toi.
[/quote]

Pas de quoi, on est là pour ça :wink: D’ailleur, je te retourne le compliment, moi aussi j’ai appris des trucs :bulb:

Suis pas sûr, j’ai parcourus le man en diagonale ce matin. Dison que ça m’a accroché l’oueil mais sans plus. Si je retombe deçus, je te l’enverrai.

En attendant, je t’envois là:

http://www.debianhelp.co.uk/nfs.htm

En bas de page, il explique comment testé tes connexions nfs afin de déterminé les bonnes valeurs à rsize&wsize :smt004 (4 ans que je le cherche ce petit truc, je l’ai depuis 5 jours :blush: )
rem: le tuto n’est pas jeune, tout n’est pas valable.

A+

Debcool

PS: je pense qu’avec Thomas vous devriez trouver une soluce à ton soucis. Courages, dis toi q’avec Debian tu apprendras le sens du mot “patience” mais aussi celui de
"pied d’enfer" :smiling_imp: :smiling_imp: :smiling_imp:

Ne t’inquiètes pas pour moi, je suis patient et acharné (un peu trop même des fois) :wink:
Quand au coté “en enfer” de debian, je comprends déjà ca XD.
Sympa pour les valeurs de rsize nfs, j’irais voir ca, ca me sera très certainement utile :wink:

Sinon j’étais en train d’éditer après quelques tests lorsque tu as poster, voici donc les derniers résultats:

J’avance un peu a chaque fois, j’ai réussi a monter mon /home/test-admin distant via autofs avec l’aide de ce site. En effet je me suis apercu que pour un montage nfs il faut utiliser “-fstype=nfs” au lieu “nfs”. Je modifie donc mon auto.master et j’y ajoute

/home/remote /etc/auto.remote_home

je créer ensuite ce fichier /etc/auto.remote_home que je remplis avec:

test-admin -fstype=nfs @IP_SERVEUR_NFS:/home/test-admin

je relance autofs

/etc/init.d/autofs restart

On vérifie le montage:

root@pd#mount
[...]
automount(pid10078) on /home/remote type autofs(rw,fd=4,pgprp=10078,minproto=2,maxproto=4)

On vérifier les répertoires:

root@pd#ls /home/
notroot remote test-admin test-commercial test-helpdesk
root@pd#ls /home/remote/

Ca semble prometteur au début, “notroot” est l’utilisateur “admin” du serveur nfs. Et puis finalement
…plus rien dans remote, essayons tout de même avec /home/remote/test-admin

root@pd#ls /home/remote/test-admin
ls: cannot acess /home/remote/test-admin/test-admin.txt: permission denied

a bah tiens…en fait c’est monté finalement ?

root@pd#ls /home/remote/
test-admin

Hourra, en fait ca marche (c’est juste le montage/démontage auto de autofs auquel il faut faire gaffe).

Je décide de faire ca plus généralement (et pas uniquement pour test-admin), je modifie donc mon /etc/auto.master pour monter tout les /home en “/home/remote” (je conçois que monter tout les homes ce n’est pas top en terme de perf et de sécu, mais c’est pour le test):

/home/ /etc/auto.remote_home

je modifie également /etc/auto.remote_home

remote -fstype=nfs @IP_SERVEUR_NFS:/home

ensuite les vérifs:

root@pd#ls /home/
root@pd#ls /home/remote
lost+found lolzy test-admin test-commercial test-helpdesk
root@pd#ls /home/remote/test-admin
ls: cannot acess /home/remote/test-admin/test-admin.txt: permission denied
test-admin.txt
root@pd#ls /home/remote/test-commercial
ls: cannot acess /home/remote/test-admin/test-commercial.txt: permission denied
test-commercial.txt
root@pd#ls /home/remote/test-helpdesk
ls: cannot acess /home/remote/test-admin/test-helpdesk.txt: permission denied
test-helpdesk.txt
root@pd#su - test-admin
test-admin@pd~$ls
test-admin.txt
test-admin@pd~$cat test-admin.txt
bien joué petit admin en herbe
vive windows(nan je rigole)

pour le fun:

test-admin@pd~$ls /home/remote/test-commercial
test-commercial.txt

AH!! Mais c’est super “pas secure” en fait !

test-admin@pd~$ls -lah /home/remote/test-commercial
ls: cannot acess /home/remote/test-admin/test-commercial.txt: permission denied
ls: cannot acess /home/remote/test-admin/..: permission denied
ls: cannot acess /home/remote/test-admin/.: permission denied
total 0
d????????? ? ? ? ?  ? .
d????????? ? ? ? ?  ? ..
?????????? ? ? ? ?  ? test-commercial.txt
test-admin@pd~$cd /home/remote/test-commercial
-su: cd: /home/remote/test-commercial/: Permission denied
test-admin@pd~$cat /home/remote/test-commercial/test-commercial.txt
cat: /home/remote/test-commercial/test-commercial.txt: Permission denied

Ouf…j’ai eu peur…

Maintenant il me reste a réussir pareil mais en passant par ldap et non plus directement en joignant le serveur nfs…

bon, encore désolé du double post (mais ca me permet d’up le sujet :smiley:)

J’y suis presque !!!
J’arrive a monter le répertoire des 2 de mes 3 utilisateurs test via ldap! Le problème c’est qu’il faut préciser chaque partage home distant dans le ldap. Donc avec 3 utilisateurs ca va, mais d’une façon plus globale je vois mal un admin rajouter les 10000 utilisateurs de son entreprise dans le ldap (même si avec du scripting bash ou autre ca se fait très bien)…
Pour y arrive, j’ai du triturer pas mal de chose avant de m’apercevoir que j’avais fait pleins de fautes partout (enfin annuaire ldap et fichier auto.master surtout).
Suivant ces 2 tutoriaux: help.ubuntu.cometcsquad (me lapider pas pour le lien ubuntu hein, j’aime debian XD) je me suis décider a “bêtement” copier/coller/adapter l’architecture ldap des 2 tutos. Pour celà j’ai donc supprimer:
le noeud

ainsi que son noeud parent

que j’ai remplacer par ceci:

dn: ou=automount,ou=nfs,ou=services,ou=demo,ou=intra,dc=example
ou: automount
objectClass: top
objectClass: organizationalUnit

dn: ou=auto.master,ou=automount,ou=nfs,ou=services,ou=demo,ou=intra,dc=example
ou: auto.master
objectClass: top
objectClass: automountMap
  
dn: cn=/home,ou=auto.master,ou=automount,ou=nfs,ou=services,ou=demo,ou=intra,dc=example
cn: /home
objectClass: top
objectClass: automount
automountInformation: ldap:ou=auto.home,ou=automount,ou=nfs,ou=services,ou=demo,ou=intra,dc=example

dn: ou=auto.home,ou=automount,ou=nfs,ou=services,ou=demo,ou=intra,dc=example
ou: auto.home
objectClass: top
objectClass organizationalUnit

dn: cn=test-admin,ou=auto.home,ou=automount,ou=nfs,ou=services,ou=demo,ou=intra,dc=example
cn: test-admin
objectClass: top
objectClass: automount
automountInformation: -fstype=nfs,rw,hard,intr,nodev,exec,nosuid,rsize=8192,wsize=8192 @IP_NFS:/home/test-admin

dn: cn=test-commercial,ou=auto.home,ou=automount,ou=nfs,ou=services,ou=demo,ou=intra,dc=example
cn: test-commercial
objectClass: top
objectClass: automount
automountInformation: -fstype=nfs,rw,hard,intr,nodev,exec,nosuid,rsize=8192,wsize=8192 @IP_NFS:/home/test-commercial

le contenu du auto.master sur le client

/home/remote ldap://@IP_LDAP/ou=auto.home,ou=automount,ou=nfs,ou=services,ou=demo,ou=intra,dc=example --timeout=5

Une fois le services autofs redémarrer, voici ce que ca donne sur le client:

root@pd#ls -lah /home/remote/
drwxr-xr-x 2 root root 0  2009-11-18 22:08 .
drwxr-xr-x 7 root root 4.0k  2009-11-18 16:57 ..
root@pd#ls -lah /home/remote/
root@pd#ls -lah /home/remote/test-admin
ls: cannot acess /home/remote/test-admin/test-admin.txt: permission denied
ls: cannot acess /home/remote/test-admin/..: permission denied
ls: cannot acess /home/remote/test-admin/.bash_history: permission denied
ls: cannot acess /home/remote/test-admin/.: permission denied
total 0
d????????? ? ? ? ?  ? .
d????????? ? ? ? ?  ? ..
d????????? ? ? ? ?  ? .bash_history
?????????? ? ? ? ?  ? test-admin.txt
root@pd#ls -lah /home/remote/test-commercial
ls: cannot acess /home/remote/test-commercial/test-commercial.txt: permission denied
ls: cannot acess /home/remote/test-commercial/..: permission denied
ls: cannot acess /home/remote/test-commercial/.bash_history: permission denied
ls: cannot acess /home/remote/test-commercial/.: permission denied
total 0
d????????? ? ? ? ?  ? .
d????????? ? ? ? ?  ? ..
d????????? ? ? ? ?  ? .bash_history
?????????? ? ? ? ?  ? test-commercial.txt
root@pd#ls -lah /home/remote/test-helpdesk
ls: cannot acess /home/remote/test-helpdesk/: no such file or directory
root@pd#su - test-admin
test-admin@pd~$pwd
/home/remote/test-admin
test-admin@pd~$ls
test-admin.txt
test-admin@pd~$exit
root@pd#su - test-commercial
test-commercial@pd~$pwd
/home/remote/test-commercial
test-commercial@pd~$ls
test-commercial.txt
test-commercial@pd~$exit
root@pd#su - test-helpdesk
No directory, logging in with HOME=/
test-helpdesk@pd~$pwd
/
test-helpdesk@pd~$ls
bin dev boot etc[...]
test-helpdesk.txt
test-helpdesk@pd~$exit

Moyennant le fait de se rappeler qu’autofs monte/démonte automatiquement les rep (d’ou le premer ls /home qui ne renvoit rien a chaque fois) ca marche pour test-admin et test-commercial.
Etant donnée que je n’ai pas fait de même pour test-helpdesk, il est normal que ca ne marche pas.

L’ajout d’une entrée:

dn: cn=/,ou=auto.home,ou=automount,ou=nfs,ou=services,ou=demo,ou=intra,dc=example
cn: /
objectClass: top
objectClass: automount
automountInformation: -fstype=nfs,rw,hard,intr,nodev,exec,nosuid,rsize=8192,wsize=8192 @IP_NFS:/home/*

à la place de

dn: cn=test-admin,ou=auto.home,ou=automount,ou=nfs,ou=services,ou=demo,ou=intra,dc=example
cn: test-admin
objectClass: top
objectClass: automount
automountInformation: -fstype=nfs,rw,hard,intr,nodev,exec,nosuid,rsize=8192,wsize=8192 @IP_NFS:/home/test-admin

dn: cn=test-commercial,ou=auto.home,ou=automount,ou=nfs,ou=services,ou=demo,ou=intra,dc=example
cn: test-commercial
objectClass: top
objectClass: automount
automountInformation: -fstype=nfs,rw,hard,intr,nodev,exec,nosuid,rsize=8192,wsize=8192 @IP_NFS:/home/test-commercial

permet-elle de monter tout les homes sans entrer les x home dans le ldap ?
J’avais lu ca avant, mais comme ca ne marchait pas…je tente demain(c’est beaujolais nouveau ce soir alors bon…:p)et je vous tiens au courant! Entre temps si quelqu’un à la certitude que la solution au dessus palliera aux problèmes des X comptes à rentrer dans le ldap, il est le bienvenu! :smiley:

Hello,

content que ça avance :wink:

J’ai glaner quelques info sur LDAP. Je t’enverrais ça quand j’aurais mieu compris; histoire de pas te raconter n’importe quoi :smt003

Suis pas sûr que ça resolverat ton soucis mais je suis sur que ça te facilitera la vie… surprise, donc :question: Après tout, c’est bientôt St Nicholas, non?

A+
Debcool

Je m’auto réponds à mes interrogations: la solution a base de caractères joker “/” et “&” marche bien.

J’ai donc remplacé

dn: cn=test-admin,ou=auto.home,ou=automount,ou=nfs,ou=services,ou=demo,ou=intra,dc=example
cn: test-admin
objectClass: top
objectClass: automount
automountInformation: -fstype=nfs,rw,hard,intr,nodev,exec,nosuid,rsize=8192,wsize=8192 @IP_NFS:/home/test-admin

dn: cn=test-commercial,ou=auto.home,ou=automount,ou=nfs,ou=services,ou=demo,ou=intra,dc=example
cn: test-commercial
objectClass: top
objectClass: automount
automountInformation: -fstype=nfs,rw,hard,intr,nodev,exec,nosuid,rsize=8192,wsize=8192 @IP_NFS:/home/test-commercial

par

dn: cn=/,ou=auto.home,ou=automount,ou=nfs,ou=services,ou=demo,ou=intra,dc=example
cn: /
objectClass: top
objectClass: automount
automountInformation: -fstype=nfs,rw,hard,intr,nodev,exec,nosuid,rsize=8192,wsize=8192 @IP_NFS:/home/&

On redémarre ensuite le serveur ldap, et par précautions j’ai également redémarré autofs sur le client.
On vérifie ?

root@pd#ls /home/remote/
root@pd#ls /home/remote/test-admin
ls: cannot acess /home/remote/test-admin/test-admin.txt: permission denied
root@pd#ls /home/remote/test-commercial
ls: cannot acess /home/remote/test-commercial/test-commercial.txt: permission denied
root@pd#ls /home/remote/test-helpdesk
ls: cannot acess /home/remote/test-helpdesk/test-helpdesk.txt: permission denied
root@pd#su - test-admin
test-admin@pd~$pwd
/home/remote/test-admin/
test-admin@pd~$ls
test-admin.txt
test-admin@pd~$cat test-admin.txt
bien joué petit admin en herbe
vive windows(nan je rigole)
test-admin@pd~$exit
root@pd#su - test-commercial
test-commercial@pd~$pwd
/home/remote/test-commercial/
test-commercial@pd~$ls
test-commercial.txt
test-commercial@pd~$cat test-commercial.txt
Ca marche petit commercial ;)
test-commercial@pd~$exit
root@pd#su - test-helpdesk
test-helpdesk@pd~$pwd
/home/remote/test-helpdesk/
test-helpdesk@pd~$ls
test-helpdesk.txt
test-helpdesk@pd~$cat test-helpdesk.txt
bien joué petit technicien helpdesk, mais au boulot!
test-helpdesk@pd~$exit

C’est un truc qui marche :wink:
Prochaine étape, même chose avec smb :smiley:

Par contre (avant de considérer le topic comme résolu) j’aurais souhaiter savoir s’il est conseillé de monter l’ensemble des home sur la machine cliente (sachant que chaque répertoire home est la propriété de son utilisateur, donc pas de grand risque) ou s’il vaut mieux ne monter que le home de l’utilisateur recherché? Car d’un coté pratique, je ne vois pas comment on peut être capable de monter le répertoire home de chaque utilisateur indifféremment, mais sans monter tout les homes des autres a un moment T. Je sais pas si j’ai réussi a me faire comprendre…

Salut,

Je dirai que non. L’interret de l’automonteur est justement de faire des montages dynamiques en fonction des besoins. De plus, j’ai rarement vu(jamais) plusieur “vrai” utilisateur sur le même poste client. Je pense, mais je me trompe peut-être… qu’il plus intèrrèssant que les exports à monter correspondent aux besoins du user loggé. ex: le home + 1 ou plusieurs rep de travail de groupe.

La réponse est plus haut dans le post. on exporte “/home” sur le serveur, mais on monte “/home/usr” sur le(s) client(s).

:mrgreen: oui, oui, nous y en avoir compris :mrgreen:

A propos de ce dont je t’ai parler hier… Voici un avant goût(je garde le meilleur pour la fin :mrgreen: )
il existe un outil DEBIAN(évidement qui d’autre…? :smt007 ) nomé “migrationtools” qui sert à récupérer les info des annuaires UNIX(“classiques”) cad /etc/passwd, group, services, hosts… et de les intégrer dans une base LDAP. Plustôt pratique, non? Surtout, si on a 10000 utilisateurs :mrgreen:

[code]Il faut editer /etc/migrationtools/migrate_common.ph et “activer”(décommenter) IGNORE_UID_BELOW et IGNORE_GID_BELOWW

cd /usr/share/migrationtools

LDAPADD="/usr/bin/ldapadd -c" ETC_ALIASES=/dev/null ./migrate_all_online.sh (c’est ce dernier qui fait le boulot)[/code]
ATTENTION, c’est incomplet!! c’est juste pour t’informer. J’essayerai de mettre ça en ordre pendant le WE.

A+
Debcool

J’avais entrevu un truc sur le “migrationtool”, mais je m’y étais pas attardé car j’aime pas trop devoir faire ce genre de manip (je trouve ca chiant “sur le principe” de devoir manipuler chaque compte un par un, même si des scripts le font très bien). Mais bon, finalement je regarderais quand même ca d’un peu plus près au cas ou :wink:
Merci en tout cas.
Bon pour que le topic soit considéré comme résolu, il faut juste ajouter un “Résolu” dans le titre ?

EDIT: nan c’est bon j’ai trouvé, il y a un joli bouton vert juste a coté :wink: