Développeur FullStack & Devops

Gestion des utilisateurs

Ajout

sudo useradd -m toto  création d’un nouvel utilisateur toto, avec création d’un home dir (option -m)
sudo adduser  est une commande (script perl qui utilise useradd) qui fourni une interface en ligne de commande avec une série de questions ce qui est plus agréable lorsque l’on cré l’utilisateur interactivement.

Création ou modification du mot de passe d’un user

sudo passwd toto  permet de modifier interactivement le passwd de toto

Gestion des groupes d’utilisateurs

sudo addgroup joueurs  ajoute un nouveau groupe au système

sudo delgroup joueurs  supprime le groupe spécifié du système

sudo usermod -a -G joueurs $USER  ajoute l’utilisateur courant au groupe spécifié

Suppression ou désactivation

sudo deluser -r -f toto  : supprime l’utilisateur du système.

  •  -r supprime le répertoire home de ce user
  •  -f force la suppression des fichiers du home, même ceux qui n’appartiennent pas à ce user

sudo passwd -l toto  : désactive le login sur le système avec login/mot de passe, attention le login via clé SSH sera toujours fonctionnel avec cette commande. Intervient sur le fichier /etc/shadow

sudo usermod –expiredate 1 toto  : désactive complètement le compte sans le supprimer du système, bloque également l’accès via clés SSH. Intervient sur le fichier /etc/passwd
usermod permet de changer les caractéristiques d’un compte (expiration, chemin du dossier home, groupes etc)

Sudo

La commande sudo permet à un utilisateur autorisé, d’exécuter des commandes avec les droits d’admins.
Cette commande (à installer avec apt) s’appuie sur le fichier de conf /etc/sudoers.

Il est vivement recommandé d’utiliser l’utilitaire visudo pour modifier ce fichier, car il effectuera une vérification syntaxique avant la sauvegarde du fichier /etc/sudoers. Il est possible de configurer un éditeur de texte en particulier (ici Vim) en lançant visudo :

sudo VISUAL=`command -v vi` visudo

La syntaxe générale est la suivante :

login_du_user ALL =(user) commande1, NOPASSWD: commande2,...

Pour autoriser un utilisateur toto à lancer n’importe quelle commandes :

toto ALL=(ALL) ALL

et pour autoriser l’exécution de sudo sans demander de mot de passe grâce à l’argument NOPASSWD (attention danger!):

toto ALL=(ALL) NOPASSWD:ALL

Il est également possible d’attribuer les droits à un groupe d’utilisateurs, il suffira alors de rajouter notre utilisateur à ce groupe (ex ici un groupe nommé sudo):

%sudo ALL=(ALL) NOPASSWD:ALL

Voici la signification de chaque argument (tiré de serversforhackers) et l’étendu de leur application :

  • toto ALL=(ALL:ALL) ALL -> utilisateur toto
  • toto ALL=(ALL:ALL) ALL -> tous les utilisateurs totos, loggés depuis n’importe quel machine
  • toto ALL=(ALL:ALL) ALL -> utilisateur toto peut exécuter les commandes en tant que n’importe quel utilisateur
  • toto ALL=(ALL:ALL) ALL -> utilisateur toto peut exécuter les commandes en tant que n’importe quel groupe
  • toto ALL=(ALL:ALL) ALL -> cette règle s’applique à toutes les commandes (c’est ici qu’on spécifie la liste de commandes, si on ne souhaite pas donner accès à toutes les commandes du système)
  • toto ALL=(ALL:ALL) NOPASSWD:ALL -> aucun password requis pas toto, il peut tout exécuter sur la machine sans limite

Fichiers importants

/etc/passwd

/etc/shadow

/etc/login.defs

/etc/deluser.conf

/etc/skel : arborescence par défaut copié lors d’un useradd -m

/etc/sudoers

 

 

rédigé par behrouze le 27/08/2018
Cheat SheetsOutilsVidéosA propos