Les utilisateurs sous UNIX/Linux

Sommaire

Index

Gestion des utilisateurs et des groupes

Création d’utilisateurs et de groupes

Les commandes pour gérer des utilisateurs sous Debian sont :

D’autres commandes existent comme useradd ou groupdel mais elles sont moins pratiques à utiliser.

Créations d’utilisateurs

Après chacune des opérations suivantes, observez le contenu des fichiers /etc/group, /etc/passwd et /etc/shadow

  1. Créez un utilisateur nommé bill
  2. Ajoutez le dans un groupe nommé microsoft
  3. Créez un utilisateur nommé steve
  4. Ajoutez le dans un groupe nommé apple
  5. Créez un utilisateur nommé linus et un autre nommé ian
  6. Les ajouter au groupe gnu.
  7. Quels sont les rôles des fichiers /etc/group, /etc/passwd et /etc/shadow ?

Manipulation de fichier par un autre utilisateur

  1. Connectez-vous en tant que ian avec la commande su et créez un fichier nommé je-suis-su.txt. Déconnectez-vous
  2. Connectez-vous en tant que ian avec la commande su - et créez un fichier nommé je-suis-su-tiret.txt. Déconnectez-vous
  3. Qu’observez-vous ? Où sont les deux fichiers créés ?
  4. Utilisez la commande suivante: sudo -u ian echo Bonjour >> fichier-ian.txt. À qui appartient ce fichier ? Réessayer en mettant la cible dans /tmp (/tmp/fichier-ian.txt) puis dans /home/ian.
  5. Utilisez la commande suivante: sudo -u ian cp fichier-ian.txt copie-ian.txt. À qui appartient ce nouveau fichier ? Essayer de faire ces opérations dans le répertoire /home/ian.

Question 11:

Solution 1 : il faut utiliser la commande tee:

echo Bonjour | sudo -u ian tee fichier_ian

Solution 2

sudo -u ian bash -c 'echo Bonjour > /home/ian/fichier-redirection'

Connexion en tant qu’un autre utilisateur

  1. Créer un utilisateur nommé alfred
  2. Utiliser la commande suivante: su - alfred. Que se passe-t-il ?
  3. Exécuter la commande who. Que se passe-t-il ?
  4. Exécuter la commande whoami. Que se passe-t-il ? Que font les deux commandes précédentes ?
  5. En tant que alfred (c’est à dire après s’être reconnecté avec su - alfred), exécuter la commande touch fichier-alfred et vérifier son propriétaire avec la commande ls -l.
  6. Afficher le fichier /etc/passwd et noter les numéros correspondant à l’utilisateur alfred (il s’agit de l’UID et du GID d’alfred)
  7. Afficher le fichier /etc/group et noter le numéro correspondant au groupe alfred (il s’agit du GID)

La commande man 5 passwd affiche la section 5 du manuel concernant passwd. Cette section est dédiée au fichier /etc/passwd.

À quoi correspondent les numéros notés ? Que signifie UID et GID ?

  1. Se déconnecter et supprimer l’utilisateur alfred (en utilisant la commande deluser).
  2. Afficher le contenu du répertoire /home/alfred. Que contient-il ? À qui appartient le fichier créé précédemment ?
  3. Créer un utilisateur nommé robert. A qui appartient désormais le fichier contenu dans /home/alfred ?
  4. À qui appartient le dossier /home/alfred ? Est-ce normal ? Que peut-on conclure ?

Groupes

  1. D’après le contenu de /etc/passwd et /etc/group que peut-on dire du groupe nommé robert ?
  2. Comparer les numéros de groupe (GID) des utilisateurs et groupes précédemment créés (bill, microsoft, steve, apple, ian, gnu, etc). Pourquoi y a-t-il un décalage dans la numérotation ?

Indice: il y a eu des groupes supplémentaires créés, quelle incidence cela a-t-il eu ?

Désactivation

Désactiver un utilisateur l’empêche de se connecter.

sudo usermod -L juan
#ou
sudo usermod --lock juan

Ceci peut être préférable à une suppression, notamment si l’utilisateur a créé des fichiers qui doivent rester accessibles.

Désactiver l’utilisateur a l’avantage de préserver les permissions et appartenance. Ceci évite ainsi qu’un autre utilisateur puisse, par le hasard de l’attribution des numéros d’identifiant, avoir accès à des fichiers créé par un utilisateur qui aurait été supprimé.

Mots de passe

Remplacer un mot de passe

Avant de faire la moindre manipulation, faites une sauvegarde de vos fichiers:

cp /etc/passwd /etc/passwd.bak
cp /etc/group /etc/group.bak
cp /etc/shadow /etc/shadow.bak

passwd

La commande passwd permet de remplacer un mot de passe.

Utilisée en tant que super-utilisateur, elle permet de remplacer le mot de passe de n’importe quel utilisateur du système.

En tant qu’utilisateur standard, elle lui permet de modifier son mot de passe.

  1. Modifiez le mot de passe de linus et mettez: 8chats+caiLLou
  2. Désactivez l’utilisateur linus (il doit exister sur le système mais toute tentative de connexion en l’utilisant doit échouer).
  3. Réactivez l’utilisateur linus.
  4. Ajoutez-le au groupe des sudoers

Qui est connecté ?

Afficher l’utilisateur utilisé

$ whoami
bill
$ echo $USER
bill

Afficher l’utilisateur connecté

bill@debian-srv:~$ who am i
timba    pts/0        Apr  5 13:10 (192.168.90.1)

Afficher les utilisateurs connectés au système

bill@debian-srv:~$ who
root     tty1         Apr  5 09:49
timba    pts/0        Apr  5 13:10 (192.168.90.1)
timba    pts/1        Apr  5 11:33 (192.168.90.1)

Afficher la liste des utilisateurs ayant un processus en cours d’exécution

ps -elf | awk '{print $3}' | sort -u

Si vous n’avez pas été sage

Sinon, c’est ici:

sudo journalctl -xel