Bonsoir, J'ai effectué quelques tests avec succès pour la mise en place de pam_mount.
Il s'agit de faire d'une machine Linux un client pour un domaine Window$/Samba avec montage du Home distant. Merci à Yann CANTIN sans qui j'aurais probablement repoussé mes essais. J'ai fait des essais en partant de l'installation d'une Mandrake9.0 Et d'autres en partant d'une Mandrake9.0 installée sans choisir Authentification sur un Domaine Window$ (cela m'a permis de repérer ce qui changeait vraiment entre ces deux différentes installations). C'est assez long et détaillé, j'espère. Je ne livre ici que la première solution. Je compte remettre le tout en forme sur des pages web, mais pour clore le fil de cette discussion, je vous transmets le compte-rendu d'une configuration réussie: ========================================================== Installation d'une Mdk9.0 avec Authentification sur le Domaine Window$. Sur votre domaine: Sur le serveur Samba DeepGlue, le fichier /etc/samba/smb.conf contient la ligne qui va permettre de créer automatiquement le compte machine pour la machine cliente DingDong que nous allons installer: add user script = /usr/sbin/useradd -d /dev/null -g machines -c 'Machine Account' -s /bin/false -M %m$ Sur la future machine cliente DingDong, qui n'est encore qu'un amas d'électronique ou qui peut-être pire, héberge le virus M$Window$;o): Effectuer une Installation en mode Expert, avec les paquetages que vous souhaitez (Client réseau tout de même). Et lors de la saisie du mot de passe root, n'allez pas trop vite: Dans le champ "Authentification", ne laissez pas "Fichiers locaux", mais sélectionnez "Domaine Window$" (même si votre domaine est en fait un Domaine Samba). Il vous est ensuite demandé le nom du domaine, le nom du compte administrateur du domaine et son mot de passe. Une fenêtre vous explique ensuite ce qui va être fait et comment faire le travail à la main si pour une raison ou une autre cela échouait. Et c'est tout on passe à la suite de la configuration post-installation. Ne jetez pas un oeil à ce stade à vos fichiers /etc/passwd, /etc/shadow et /etc/samba/smbpasswd sur DeepGlue, ils ne contiennent encore aucune information sur DingDong (ne le faites pas, vous dis-je il n'y a rien sur DingDong (ni dingdong), j'ai vérifié... et ce n'était pas bien malin comme vous allez le voir). Dans la phase de post-installation, une étape importante est la configuration du réseau... ... une fois cette configuration effectuée, on a un peu plus de chance d'intégrer le Domaine Window$;o). Je n'ai pas contrôlé à quel moment après cette installation, l'intégration au Domaine s'est produite, mais les fichiers /etc/passwd, /etc/shadow et /etc/samba/smbpasswd sur DeepGlue ont bien vu apparaitre une ligne concernant dingdong. Est-ce juste après la configuration réseau ou au premier boot, je l'ignore. Remarque: Au premier démarrage, kdm n'a pas trouvé un seul utilisateur sur le Domaine. J'ai redémarré le serveur X et tous mes utilisateurs sur le domaine sont apparus. Comme j'ai eu la mauvaise idée de choisir un nom de domaine "MaMaison" avec des caractères en majuscules/minuscules et que le nom de domaine reconnu est "MAMAISON", il se pose un problème avec la ligne "template homedir = /home/%D/%U" dans le /etc/samba/smb.conf de DingDong. Je me suis donc logué en root et j'ai modifié cette ligne en "template homedir = /home/MaMaison/%U". "template homedir = /home/%U" aurait également convenu et c'est ce que j'avais fait lors de tests précédents. J'ai ensuite redémarré winbind: [EMAIL PROTECTED] root]# /etc/init.d/winbind restart De retour à l'interface graphique: KDM J'ai pu me loguer sans problème avec un compte défini sur le Domaine MaMaison (c'est-à-dire un utilisateur Linux/Samba défini sur le serveur DeepGlue). Reste à mettre en oeuvre pam_mount. Création d'un point de montage pour accueillir le montage du Home distant. [EMAIL PROTECTED] root]# mkdir "/etc/skel/Mes Documents" Récupération et désarchivage de pam-mount.tar.gz. <<<Adresse sur internet à retrouver>>> Le fichier pam-mount.tar.gz récupéré sur DeepGlue, j'ai dû renseigner le /etc/hosts de DingDong pour qu'il parvienne à effectuer le montage smb nécessaire à la récupération de l'archive pam-mount.tar.gz sur DingDong. [EMAIL PROTECTED] root]# echo "192.168.52.182 DeepGlue" >> /etc/hosts [EMAIL PROTECTED] root]# smbmount //DeepGlue/public /mnt/disk Password: Anonymous login successful [EMAIL PROTECTED] root]# cp /mnt/public/pam_mount.tar.gz ./ [EMAIL PROTECTED] root]# tar -xvzf pam-mount.tar.gz [EMAIL PROTECTED] root]# cd pam_mount-0.5.14 [EMAIL PROTECTED] pam_mount-0.5.14]# ./configure Et des erreurs sont apparues lors de la tentative de compilation. J'ai donc procédé à des installations de paquetages pour satisfaire dépendances et présence des outils de compilation. [EMAIL PROTECTED] pam_mount-0.5.14]# urpmi gcc Cela m'a aussi installé: binutils-2.12.90.0.15-1mdk.i586 gcc-3.2-1mdk.i586 glibc-devel-2.2.5-16mdk.i586 kernel-headers-2.4.18-41mdk.i586 libbinutils2-2.12.90.0.15-1mdk.i586 Il me manquait alors encore le fichier pam_modules.h Une recherche m'a indiqué plusieurs paquetages proposant ce fichier. [EMAIL PROTECTED] pam_mount-0.5.14]# urpmi pam-devel Tout est là, on passe à la compilation et à l'installation: [EMAIL PROTECTED] pam_mount-0.5.14]# ./configure ... [EMAIL PROTECTED] pam_mount-0.5.14]# make ... [EMAIL PROTECTED] pam_mount-0.5.14]# make install ... [EMAIL PROTECTED] pam_mount-0.5.14]# cp ./config/pam_mount.conf /etc/security/ [EMAIL PROTECTED] pam_mount-0.5.14]# vi /etc/security/pam_mount.conf Et modification du fichier de façon à n'avoir pour seules lignes non commentées que: ================== #debug 1 mkmountpoint 1 lsof /usr/sbin/lsof options_require nosuid,nodev smbmount /bin/mount -t smbfs umount /bin/umount volume * smb DeepGlue & ~/Mes\ Documents uid=&,gid=&,fmask=0650,dmask=0750 - - ================== La ligne "debug 1" est à commenter une fois que cela fonctionne bien. Edition de /etc/pam.d/system-auth: De: ================== #%PAM-1.0 auth required /lib/security/pam_env.so auth sufficient /lib/security/pam_winbind.so auth sufficient /lib/security/pam_unix.so likeauth nullok use_first_pass auth required /lib/security/pam_deny.so account sufficient /lib/security/pam_winbind.so account required /lib/security/pam_unix.so password required /lib/security/pam_cracklib.so retry=3 minlen=2 dcredit=0 ucredit=0 password sufficient /lib/security/pam_unix.so nullok use_authtok md5 shadow password required /lib/security/pam_deny.so session required /lib/security/pam_mkhomedir.so skel=/etc/skel/ umask=0022 session required /lib/security/pam_limits.so session required /lib/security/pam_unix.so ================== Passer à: ================== #%PAM-1.0 auth required /lib/security/pam_env.so auth sufficient /lib/security/pam_unix.so likeauth nullok auth requisite /lib/security/pam_winbind.so use_first_pass auth sufficient /lib/security/pam_mount.so use_first_pass auth required /lib/security/pam_deny.so account sufficient /lib/security/pam_winbind.so account required /lib/security/pam_unix.so password required /lib/security/pam_cracklib.so retry=3 minlen=2 dcredit=0 ucredit=0 password sufficient /lib/security/pam_unix.so nullok use_authtok md5 shadow password required /lib/security/pam_deny.so session required /lib/security/pam_mkhomedir.so skel=/etc/skel/ umask=0022 session required /lib/security/pam_limits.so session required /lib/security/pam_unix.so session required /lib/security/pam_mount.so ================== On veille à donner la priorité à l'authentification locale pam_unix pour permettre à root de se loguer quoi qu'il arrive avec pam_winbind et pam_mount. Le module pam_winbind récupére le mot de passe saisi à l'étape précédente comme l'indique le paramètre use_first_pass. De la même façon le mot de passe pour pam_mount est récupéré de la saisie précédente. Attention aux fautes de frappes dans /etc/pam.d/system-auth Et dans toute votre phase de tests, conservez une console root ouverte et faites des essais de login dans d'autres consoles. Il peut arriver qu'un "su" ne fonctionne plus, ne vous contentez donc pas d'une console avec un utilisateur non root. Si toutefois vous rencontriez une situation de blocage, démarrez Lilo avec l'option: "linux single" Vous pourrez vous loguer sans mot de passe et corriger vos bêtises;o). Ceci étant fait, vous devez pouvoir vous loguer et obtenir votre home distant dans "~/Mes Documents". Remarques: Si cela ne se passe pas comme prévu, depuis la console où vous êtes root (vous en avez bien une, n'est-ce pas?) lancez les commandes suivantes: [EMAIL PROTECTED] root]# tail /var/log/auth.log Et [EMAIL PROTECTED] root]# tail /var/log/syslog Vous pourriez obtenir des informations sur la cause du problème. ========================================================== Encore merci à tous et plus particulièrement à Yann. -- Stephane Boireau
Vous souhaitez acquerir votre Pack ou des Services MandrakeSoft? Rendez-vous sur "http://www.mandrakestore.com"