Sur un Mac fonctionnant sous OSX 10.7.5, je dois définir le CHEMIN pour les utilisateurs non interactifs qui se connectent via ssh et sont authentifiés à l'aide de LDAP. C'est la même question qui a été posée (et répondue) ici :
mais je ne suis pas assez familiarisé avec PAM ou LDAP pour comprendre pleinement la réponse.
Il semble que je dois :
ajouter une ligne à /etc/pam.d/sshd disant "auth required pam_env.so"
créer un fichier nommé /etc/security/pam_env.conf
mais la documentation pour pam_env.conf est vraiment confuse et je ne peux pas dire si j'ai besoin d'une valeur DEFAULT ou OVERRIDE.
Suis-je à droite en disant que ce sont les étapes correctes ? Quelle est la ligne que je devrais mettre dans pam_env.conf ?
Merci, Chris
p.s. J'ai essayé de mettre la ligne "auth required pam_env.so debug" dans /etc/pam.d/sshd et je ne vois rien dans /var/log/system.log qui semble provenir de pam_env.so. J'ai également créé /etc/security/pam_env.conf et y ai inséré la ligne "CHEMIN DEFAULT=/usr/fred OVERRIDE=/usr/george" et cela n'a eu aucun effet visible sur le CHEMIN.
p.p.s Si j'exécute :
ssh UTILISATEUR@MACHINE echo \$SHELL
Il indique /bin/bash. Si je me connecte ensuite à MACHINE et ajoute cette ligne à /etc/bashrc :
export Test=Fred
et que je retourne sur ma machine et exécute :
ssh UTILISATEUR@MACHINE echo \$Test
cela ne renvoie rien. Lorsque je me connecte de cette manière en utilisant LDAP, il n'exécute pas /etc/bashrc.
p.p.p.s Quelques informations supplémentaires qui pourraient être importantes : Sur MACHINE, il n'y a pas d'utilisateur local nommé UTILISATEUR. MACHINE a été configuré pour effectuer une authentification LDAP donc lorsque je me connecte en ssh UTILISATEUR@MACHINE, mon $HOME est défini sur /Network/Servers/blah/blah/Users/UTILISATEUR. Si j'édite /Network/Servers/blah/blah/Users/UTILISATEUR/.bashrc pour définir le CHEMIN, cela fonctionne correctement pour moi, mais ce n'est pas une solution idéale car cela signifie que chaque personne souhaitant accéder à ce serveur doit éditer son .bashrc réseau.