Je suis en train de configurer un serveur et je veux qu'un utilisateur n'ait accès qu'à ses propres fichiers. Je fais une commande adduser régulière:
Sudo adduser username
Et donnez un mot de passe à l'utilisateur. Ensuite, je me connecte à celui-ci via ssh et vérifie que je peux accéder aux dossiers personnels des autres utilisateurs. Je ne semble pas avoir beaucoup d’accès en écriture en dehors de ~ /, mais je me demandais exactement quels dommages un nouvel utilisateur pourrait subir sans avoir été ajouté au groupe Sudo.
Devrais-je prendre plus de précautions et verrouiller davantage l'utilisateur?
En principe, un utilisateur créé de cette manière ne peut causer de dommages en dehors de son propre répertoire personnel. Comme vous l'avez remarqué, un utilisateur normal a accès à plusieurs répertoires (par exemple, dans /
, /usr/
, /tmp
). C'est une nécessité, car la plupart des programmes accessibles à l'utilisateur se trouvent dans /usr/bin
et /bin
. Si l'utilisateur n'avait pas accès (en lecture seule) à ces répertoires, il ne pourrait pas exécuter de programme. Cependant, un utilisateur régulier n'a pas accès aux répertoires personnels des autres utilisateurs.
Vous pouvez utiliser la commande ls -l
pour voir les autorisations sur un fichier ou un répertoire. Voir https://help.ubuntu.com/community/FilePermissions pour plus d'informations sur les autorisations de fichier.
Il est possible de limiter un utilisateur ssh à quelques programmes seulement. Voir pour http://www.pizzashack.org/rssh/ et http://www.cyberciti.biz/tips/linux-unix-restrict-Shell-access-with- rssh.html pour l'outil rssh, qui limite l'utilisateur à l'exécution d'outils de copie tels que scp
et rsync
. Ces utilisateurs ne pourront pas se connecter normalement pour obtenir un shell et exécuter d'autres commandes.
Une autre option consiste à créer un environnement "chroot" ou "jail". Voir cette question AskUbunt .