Par défaut, lors de la création d’un compte utilisateur sous Linux, l’utilisateur aura explicitement un accès SSH. Il existe des situations où les comptes d’utilisateurs n’ont pas besoin d’un accès shell à FTP, mails ou ssh.
Dans ce didacticiel, apprenons à désactiver l’accès au shell pour un utilisateur Linux existant ou à créer un nouvel utilisateur sans accès au shell.
Créer un nouvel utilisateur sans accès shell
Par défaut lors de la création d’un compte utilisateur, un shell est attribué à l’utilisateur tel que défini dans le fichier /etc/default/useradd.
Lors de la création d’un compte utilisateur, vous pouvez spécifier explicitement au shell quel utilisateur doit se connecter.
Linux est livré avec un shell /sbin/nologin qui affiche un message “Ce compte n’est actuellement pas disponible”, lorsqu’un utilisateur tente de se connecter. C’est une façon de désactiver l’accès de l’utilisateur au shell de connexion.
Vérifions deux commandes pour créer un utilisateur avec un shell désactivé.
Utilisation de useradd :
Syntaxe:
useradd -s /sbin/nologin {nom d’utilisateur}
En utilisant adduser :
Syntaxe:
adduser –shell /sbin/nologin {nom d’utilisateur}
Désactiver Shell pour un utilisateur existant
Pour changer le shell de l’utilisateur existant, utilisez la commande chsh ou usermod.
Utilisation de chsh :
Syntaxe:
chsh -s /sbin/nologin {nom d’utilisateur}
Pour changer le shell en nologin pour l’utilisateur nommé bob, tapez :
$ sudo chsh -s /sbin/nologin bob
Utilisation de usermod :
Syntaxe:
usermod {nom d’utilisateur} -s {chemin du shell}
Pour changer le shell en /sbin/ftpnologin pour l’utilisateur nommé bob, tapez :
$ sudo usermod bob -s /sbin/ftpnologin
Vous pouvez personnaliser le shell pour afficher un message lorsque les utilisateurs se connectent via ftp.
cat /sbin/ftpnologin !/bin/sh Pas d’accès au shell. Seul l’accès FTP est autorisé.
Pour donner l’autorisation exécutable, tapez :
$ sudo chmod a+x /sbin/ftpnologin
Tous les shells sont disponibles dans /etc/shell, ajoutez un nouveau shell à cette liste :
$ echo “/sbin/ftpnologin” | sudo tee -a /etc/coquilles
Au lieu de suivre les méthodes ci-dessus, vous pouvez modifier manuellement le shell en éditant le fichier /etc/password, cela fonctionnera également.
Conclusion
Dans ce didacticiel, nous avons appris comment désactiver un compte utilisateur pour accéder au shell par défaut. Merci d’avoir lu.