Vous êtes sur la page 1sur 4

Institut Supérieur des Etudes Technologiques de Jendouba

Département Technologies de l’Informatique


2ème année Licence Appliquée
Atelier Système 2 (Linux)
Amir Souissi © 2017
TP N° 4
La gestion des utilisateurs et des permissions
Objectifs
• Présenter les notions d’utilisateur normal et root et les commandes de gestion des utilisateurs,
• Faire la différence entre les catégories d’utilisateurs : le propriétaire, le groupe et les autres,
• Comprendre la structure du fichier /etc/passwd et /etc/group,
• Présenter les permissions se rapportant aux opérations sur les fichiers,
• Utiliser les commandes de gestion des droits d’accès.

1) Les Utilisateurs
 Un utilisateur peut être :
 Un utilisateur normal
 Un administrateur (root)
 Donnez les privilèges dont bénéficie le root par rapport à un utilisateur normal ?
 Le nom de l’utilisateur utilisé à l’installation du système fait partie de quel type ?
 Il existe un compte par défaut pour le super utilisateur (qui n’est pas activé par défaut).
 Quel nom est apporté à ce compte ? quel est son UID et son GID ?
 Que veut dire un compte utilisateur activé ?
 Comment exécuter une commande en mode root ?
 L’accès aux fichiers /etc/passwd et /etc/group est restreint aux administrateurs.
 Vérifier qu’un utilisateur normal ne peut pas accéder à ces fichiers en écriture et que l’utilisateur root peut
le faire ? Pourquoi ?
 Donner la commande appropriée pour en déduire le nombre total d’utilisateurs inscrits?
 On peut changer d’un utilisateur à un autre grâce à la commande su.

Exercice A : création et suppression des utilisateurs et des groupes

1. Utiliser la commande useradd pour créer un nouvel utilisateur normal nommé « user1 »
2. Activer « user1 » en lui attribuant un mot de passe par la commande passwd.
3. Utiliser la commande adduser pour créer un nouvel utilisateur normal nommé « user2 ». Quelle est la
différence entre useradd et adduser ?
4. Utiliser la commande addgroup pour créer un nouveau groupe nommé « groupe1 »
5. Utiliser la commande adduser pour ajouter « user2 » au « groupe1 »
6. Consulter les fichiers /etc/passwd et déterminer la ligne correspondant à l’utilisateur « user1 » et
déterminer son UID et son GID.
7. Consulter le fichier /etc/group et déterminer la ligne correspondant au groupe « groupe1 »
8. Supprimer les utilisateurs « user1 » et « user2 » par la commande deluser et vérifier s’ils ont bien été
supprimés du fichier /etc/passwd. Vérifier si le dossier personnel de « user2 » a bien été supprimé.
9. Supprimer le groupe « groupe1 » par la commande delgroup et vérifier l’état de /etc/group.
Amir Souissi © 2017 TP N° 4 _ Atelier Système 2 (Linux) 1
Exercice B : utilisateur, groupe et autres

1. Créer un utilisateur normal nommé « Test1 » par la commande adduser.


2. Vérifier l’ajout de cet utilisateur dans le fichier des utilisateurs /etc/passwd.
3. Vérifier le nom du groupe par défaut auquel cet utilisateur a été affecté.
4. Donnez la commande appropriée pour connaitre le nombre d’utilisateurs à partir de ce fichier.
5. Connecter-vous en tant que « Test1 » et créer un nouveau fichier « fich1 ». Utiliser la commande ls –l et
déterminer le nom d’utilisateur et celui du groupe pour ce fichier puis expliquer.
6. Comment connaitre le GID de l’utilisateur « Test1 ».
7. Créer un autre utilisateur « Test2 » et l’ajouter au groupe de « Test1 ».
8. Utiliser la commande groups et id pour les utilisateurs « Test1 » et « Test2 ».
Remarque : pour rafraichir la commande groups, il faut se déconnecter puis se reconnecter.
9. Créer un troisième utilisateur « Test3 » et déterminer les droits d’accès au fichier « fich1 » pour les
utilisateurs « Test1 » « Test2 » et « Test3 ».
10. Supprimer le groupe de « Test1 » à partir du fichier /etc/group.
11. Supprimer les utilisateurs « Test1 » « Test2 » et « Test3 » à partir du fichier /etc/passwd
2) Les permissions

 Un fichier est caractérisé par :


 Un propriétaire : qui le possède ?
 Des permissions : qui a le droit de faire quoi ?
 Trois catégories d’utilisateurs sont définies pour chaque fichier :
 u : user : le propriétaire du fichier (son créateur),
 g : group : le groupe c’est l’ensemble d’utilisateurs qui ont certains droits sur ce fichier. Par défaut c’est le
groupe du propriétaire.
 o : others : les autres c’est l’ensemble des utilisateurs qui ne sont ni le propriétaire ni les membres du
groupe pour ce fichier.
 a : all : tout le monde
 Les permissions sont représentées par 4 caractères :
 r : droit en lecture seule
 w : droit en lecture/écriture
 x : droit à l’exécution
 - : aucun droit n’est attribué
 Les permissions (droits d’accès) sont définies sur une série de 9 caractères pour les trois catégories
d’utilisateurs.

rwx rw- r--

u g o

 Créer un nouveau fichier et utiliser la commande ls -l pour déterminer les droits d’accès pour ce
fichier ?

 La commande umask permet de déterminer les droits d’accès par défaut des fichiers en valeur octale.

 La commande umask <valeur octale> permet de changer les droits d’accès par défaut pour les futurs fichiers.

Amir Souissi © 2017 TP N° 4 _ Atelier Système 2 (Linux) 2


 Les permissions peuvent être exprimées sous forme d’une suite de 9 caractères ou sous forme d’une valeur
octale.
 On peut convertir la valeur octale en l’ensemble des permissions accordées pour les différents utilisateurs de la
manière suivante :
 Chaque chiffre en octal est convertit en binaire
 Le 1 veut dire que le droit est attribué
 Le 0 veut dire que le droit n’est pas attribué

rwx rw- r--

111 110 100

7 6 4

u g o

Remarque :

Par défaut, le droit d’exécution est enlevé sur les fichiers. Pour ajouter ce droit il faut utiliser la commande
chmod. Pour les dossiers ce droit n’est pas enlevé.

 Les droits d’accès maximaux par défaut sont :


 Pour les dossiers : « rwx rwx rwx » peut s’écrire « 111 111 111 » soit en valeur octale 777
 Pour les fichiers : « rw- rw- rw- » peut s’écrire « 110 110 110 » soit en valeur octale 666

Remarque : Règle plus simple

On peut appliquer la règle simple suivante :

1. Calculer les droits d’accès par défaut sur la base de 777 (pour les dossiers), le résultat qu’on trouve sera
les droits accordés par défaut aux dossiers.
2. Retirer le x (exécution) du résultat trouvé, ça sera les droits accordé par défaut aux fichiers.

 Taper la commande umask et utiliser la valeur retournée pour déterminer les droits d’accès par défaut
sur les fichiers pour chaque catégorie d’utilisateur ? vérifier par la commande ls -l .
 Préciser les permissions qui seront attribuées par défaut aux fichiers et aux dossiers créés après la
commande umask 027.
 Quelle est la valeur umask à entrer pour avoir les droits d’accès par défaut suivants : rw- r-x r--
 Quels sont les droits d’accès par défauts attribués aux fichiers pour les valeurs umask 24 et 125.
 Remettre la valeur umask à sa valeur initiale.

Exercice C : utilisateurs et permissions

1. Créer un utilisateur « User1 » (il sera considéré comme le propriétaire). Utilisez adduser.
2. Créer un utilisateur « User2 » que vous affecterez au groupe de « User1 »
3. Créer un utilisateur « User3 » (il sera considéré comme un autre)
4. « User1 » crée un fichier « Fich1 » par l’éditeur de texte nano selon un umask permettant d’avoir les
permissions suivantes : rw- r-- ---
5. Vérifier que « User2 » peut lire « Fich1 » mais ne peut pas le modifier.
6. Vérifier que « User3 » ne peut pas accéder à « Fich1 » en lecture.

Amir Souissi © 2017 TP N° 4 _ Atelier Système 2 (Linux) 3


Modifier les permissions par défaut

 On peut modifier les permissions qui ont été attribuées par défaut à un de vos fichiers. La commande est
chmod. (il faut être un sudoer)

 Deux syntaxes possibles :


 chmod <[ugoa] [– + =] [rwx]> <fichier> C’est une modification « différentielle », c'est-à-dire que l’on
dit explicitement les permissions que l’on veut modifier, le reste restant inchangé.
 chmod <valeur> <fichier> C’est une modification « globale » ou l’on modifie toutes les permissions en
précisant les valeurs qu’elles doivent prendre. valeur = nombre exprimé en octal.

Exercice D : Modifier les permissions

Dire ce que fait chacune des commandes suivantes puis les tester en affichant à chaque fois les nouvelles
permissions par un ls –l.

chmod u+x fichier …………………………………………………………………………..


chmod o-rwx fichier …………………………………………………………………………..
chmod ug+w fichier …………………………………………………………………………..
chmod +r fichier …………………………………………………………………………..
chmod 777 fichier …………………………………………………………………………..

 Le propriétaire d’un fichier (doit être un sudoer), peut transférer la propriété d’un fichier vers un autre
utilisateur. La commande est chown.

 sudo chown <newlogin> <fichier> ou bien chown <newuid> <fichier>

 Le nouveau propriétaire aura les droits de l’ancien propriétaire.


 L’ancien propriétaire aura les droits du groupe ou des autres selon sa position.
 Si le nouveau propriétaire n’est pas un sudoer alors il ne peut pas restituer la propriété du fichier à l’ancien
propriétaire.
 Le propriétaire du fichier (doit être un sudoer) peut aussi changer le groupe de son fichier. Il utilise la
commande chgrp.

 sudo chgrp <newgroup> <fichier> ou bien chgrp <newgid> <fichier>

Exercice E : Transfert de propriété

1. Créer un nouveau fichier et vérifier ses droits ainsi que son propriétaire et son groupe.
2. Modifier la propriété de ce fichier à un autre utilisateur par un chown.
3. Vérifier par un ls –l qu’il a changé de propriétaire.
4. Modifier le groupe de ce fichier à un autre groupe par un chgrp.
5. Vérifier par un ls –l que son groupe a changé.
6. Restituer la propriété du fichier à l’ancien utilisateur. (Le nouveau user doit être un sudoer)
Quelle modification doit faire l’administrateur sur le fichier /etc/group pour qu’un utilisateur soit un
sudoer.

Amir Souissi © 2017 TP N° 4 _ Atelier Système 2 (Linux) 4