Bonjour,
Le 25/03/2021 à 13:38, Daniel Caillibaud a écrit :
Bonjour,
Y a-t'il un moyen propre d'avoir un login shell qui dépendent de la clé ssh utilisée ? (le shell pour exécuter une commande passée à ssh restant celui défini pour le user)
En lisant le man sshd je découvre environment="NAME=value"
qui permet par exemple de mettre dans ~/.ssh/authorized_keys environment="WANTED_SHELL=zsh" ssh-rsa … et dans ~/.profile [ "$WANTED_SHELL" == "zsh" ] && /usr/bin/zsh mais
- ça oblige à préciser `PermitUserEnvironment yes` dans /etc/ssh/sshd_config
- ça charge bash (si c'était le shell du user) + zsh
Si y'a une solution ça m'intéresse ;-)
Sinon c'est pas très grave, y'a d'autres solutions comme
- mettre zsh par défaut pour tous les users (qui ont un shell), un peu extrémiste… (mais je suis quasi le seul à me connecter à ces machines)
- créer un user avec zsh et les bons droits sudo puis passer par lui pour ensuite changer de user (un peu pénible)
Le cas d'un changement de shell selon qu'on se trouve sur la station de travail ou le laptop (donc deux clefs différentes) paraît anecdotique, je suspecte donc un compte générique (s'il est nominatif c'est de l'usurpation d'identité) utilisé à plusieurs, et ces plusieurs ne partagent pas la même religion en matière d'environnement de ligne de commande.
C'est mal.
Chacun son compte, chacun son chemin Chacun son shell, chacun son destin
Bien cordialement,