Linux : Compte utilisateur sans shell actif

jeudi 9 septembre 2010, par Minimalteck

Une question qui m’a été posée aujourd’hui :
- "je dois crér un utilisateur avec un accès ftp mais sans ssh, c’est possib’ ?"
- "Bah ouais, t’active pas le shell…"
- "ah bah vi… c’est sûr, vu comme ça… [gros blanc…]
Hum… mais sinon concrètement ?"

Concrètement si vous avez la même question :
L’idée est de définir le shell de l’utilisateur à une valeur spéciale "/bin/false" sous Debian-Like et "/sbin/nologin" sous Red Hat et consorts. Il faut toute fois s’assurer que cette valeur existe au sein du fichier "/etc/shells" : si elle n’est pas présente il suffit de l’ajouter :

root@machine:~# echo "/bin/false" >> /etc/shells

Ensuite plusieur méthodes s’offrent à vous :

- Créer l’utilisateur avec la commande "adduser" (interactif) puis désactiver le shell via la commande "usermod"

root@machine:~# adduser toto
[...]
root@machine:~# usermod -s /bin/false toto

- Créé l’utilisateur avec la commande "useradd"

root@machine:~# useradd -s /sbin/nologin toto

- Une fois l’utilisateur créé éditer le fichier /etc/passwd et afin de modifier le 7ème champ… hum j’en connais un qui va scripter ça :o)

"Ah bah vi c’étais tout simple…" ;-)

SPIP | squelette | | Plan du site | Suivre la vie du site RSS 2.0