Remarque :
- Ce tutoriel est disponible dans un environnement d'atelier gratuit fourni par Oracle.
- Il utilise des exemples de valeur pour les informations d'identification Oracle Cloud Infrastructure, la location et les compartiments. A la fin de votre atelier, remplacez ces valeurs par celles propres à votre environnement cloud.
Créer des utilisateurs et des groupes sur Oracle Linux
Introduction
Le tutoriel suivant fournit des procédures pas à pas pour effectuer l'administration des utilisateurs et des groupes sur Oracle Linux. Vous allez créer des utilisateurs et des groupes, implémenter des groupes privés d'utilisateurs et accorder des privilèges élevés aux utilisateurs.
Objectifs
Dans cet exercice, vous allez :
- Créer un utilisateur et explorer le répertoire de base de l'utilisateur
- Créer un groupe et y ajouter un utilisateur
- Utiliser le modèle de groupe privé d'utilisateurs et implémenter l'accès en écriture à un répertoire
- Administrer la commande
sudo
pour accorder des privilèges root
De quoi avez-vous besoin ?
- Un système sur lequel Oracle Linux est installé
Remarque : lorsque vous utilisez l'environnement d'atelier gratuit, reportez-vous à Oracle Linux Lab Basics pour obtenir des instructions de connexion et d'utilisation.
Administrer les comptes utilisateur
Dans cette section, vous allez utiliser les utilitaires de ligne de commande pour créer un compte utilisateur, afficher les fichiers mis à jour lors de l'ajout d'un utilisateur, modifier un compte utilisateur, définir un mot de passe pour le nouvel utilisateur et vous connecter en tant que nouvel utilisateur.
-
Ouvrez un terminal et connectez-vous à votre instance Oracle Linux.
-
Connectez-vous en tant qu'utilisateur root.
sudo su -
-
En tant qu'utilisateur root, ajoutez un utilisateur nommé alice.
useradd alice
L'utilisateur est ajouté au fichier
/etc/passwd
. -
Affichez l'entrée alice dans le fichier
/etc/passwd
.grep alice /etc/passwd
La sortie indique :
- L'UID et le GID du nouvel utilisateur sont identiques (
1001
). - Un répertoire personnel a été créé pour le nouvel utilisateur (
/home/alice
). - Le shell par défaut du nouvel utilisateur est
/bin/bash
.
- L'UID et le GID du nouvel utilisateur sont identiques (
-
Affichez les répertoires personnels.
ls -l /home
Dans cet exemple, l'utilisateur opc existait déjà.
Un répertoire personnel a été créé pour le nouvel utilisateur car le paramètre CREATE_HOME dans/etc/login.defs
est défini suryes
. -
Affichez le paramètre CREATE_HOME dans le fichier
/etc/login.defs
.grep CREATE_HOME /etc/login.defs
-
Affichez les paramètres par défaut d'un nouvel utilisateur, stockés dans
/etc/default/useradd
.cat /etc/default/useradd
Le paramètre SKEL est défini sur
/etc/skel
. -
Affichez le contenu du répertoire
/etc/skel
.ls -la /etc/skel
-
Affichez le contenu du répertoire de base alice.
ls -la /home/alice
Le contenu de SKEL (
/etc/skel
) est copié dans le répertoire personnel du nouvel utilisateur. -
Affichez la nouvelle entrée alice dans le fichier
/etc/group
.grep alice /etc/group
Comme Oracle Linux utilise un schéma de groupe privé d'utilisateurs (UPG), un nouveau groupe privé (alice, GID=1001) a été créé lors de la création de l'utilisateur alice.
-
Modifiez les informations GECOS pour l'utilisateur alice. Affichez l'entrée alice dans le fichier
/etc/passwd
avant et après avoir modifié les informations GECOS.grep alice /etc/passwd usermod -c "Alice Smith" alice grep alice /etc/passwd
-
Créez le mot de passe
AB*gh246
pour l'utilisateur alice. Affichez l'entrée alice dans le fichier/etc/shadow
avant et après avoir créé un mot de passe pour alice.grep alice /etc/shadow passwd alice grep alice /etc/shadow
L'option
!!
pour alice est remplacée par une valeur de mot de passe haché. -
Quittez la connexion root et connectez-vous en tant qu'utilisateur alice. Saisissez le mot de passe
AB*gh246
à l'invite.exit su - alice
-
Vérifiez que vous êtes l'utilisateur alice et que votre répertoire actuel est le répertoire personnel de l'utilisateur alice.
whoami pwd
-
Quittez le shell de l'utilisateur alice et devenez l'utilisateur root.
exit sudo su -
-
En tant qu'utilisateur root, ajoutez un utilisateur nommé oracle qui sera utilisé ultérieurement dans cet exercice.
useradd oracle
-
Créez le mot de passe
XY*gh579
pour l'utilisateur oracle.passwd oracle
Administrer les comptes de groupe
Dans cette section, vous allez créer un compte de groupe et ajouter un utilisateur à ce nouveau groupe.
-
En tant qu'utilisateur root, ajoutez un groupe nommé staff.
groupadd staff
Le groupe est ajouté au fichier
/etc/group
. -
Affichez les 10 dernières entrées du fichier
/etc/group
.tail /etc/group
Le GID (
1003
) du nouveau groupe est incrémenté d'un. -
Ajoutez l'utilisateur alice au groupe staff. Affichez l'entrée de groupe staff dans le fichier
/etc/group
.usermod -aG 1003 alice grep staff /etc/group
L'utilisateur alice est membre d'un groupe secondaire dans le groupe staff.
-
Affichez l'appartenance principale au groupe pour alice.
grep alice /etc/passwd
Le groupe principal de l'utilisateur alice est toujours
1001
.
Implémenter des groupes privés d'utilisateurs
Dans cette section, vous utilisez le modèle Groupes privés d'utilisateurs pour donner à différents utilisateurs l'accès en écriture aux fichiers d'un même répertoire.
-
En tant qu'utilisateur root, créez le répertoire
/staff
.mkdir /staff
-
Affichez le répertoire
/staff
et ses droits d'accès.ls -ld /staff
-
Remplacez la propriété du groupe pour le répertoire
/staff
par le groupe staff. L'option-R
(récursive) définit le groupe pour les fichiers et les répertoires dans/staff
. Affichez le répertoire/staff
et ses droits d'accès après avoir modifié la propriété du groupe.chgrp -R staff /staff ls -ld /staff
Le propriétaire du répertoire
/staff
est toujours root, mais le groupe est désormais staff. -
Définissez le bit setgid dans le répertoire
/staff
. Affichez ensuite les droits d'accès sur le répertoire/staff
.chmod -R 2775 /staff ls -ld /staff
Les droits d'accès de groupe sur le répertoire
/staff
ont été modifiés. -
Ajoutez l'utilisateur oracle au groupe staff. Affichez l'entrée staff dans le fichier
/etc/group
après avoir ajouté l'utilisateur oracle.usermod -aG staff oracle grep staff /etc/group
Les utilisateurs alice et oracle sont tous deux membres du groupe secondaire dans le groupe staff.
-
Connectez-vous en tant qu'utilisateur oracle. Vous n'êtes pas invité à saisir le mot de passe de l'utilisateur oracle car vous êtes actuellement l'utilisateur root. Vérifiez que vous êtes l'utilisateur oracle et que votre répertoire actuel est le répertoire personnel de l'utilisateur oracle.
su - oracle whoami pwd
-
Affichez l'appartenance à un groupe pour l'utilisateur oracle.
groups
L'utilisateur oracle appartient à deux groupes : oracle et staff.
-
Accédez au répertoire
/staff
. Créez un fichier dans le répertoire/staff
nomméoracle_file
. Affichez les autorisations et la propriété du nouveau fichier.cd /staff touch oracle_file ls -l oracle_file
Les autorisations sont en lecture/écriture pour le groupe staff.
-
Devenez l'utilisateur alice. Saisissez le mot de passe
AB*gh246
à l'invite. Vérifiez que vous êtes l'utilisateur alice.su - alice whoami
-
Affichez l'appartenance à un groupe pour l'utilisateur alice.
groups
L'utilisateur alice appartient à deux groupes : alice et staff.
-
Accédez au répertoire
/staff
. Créez un fichier dans le répertoire/staff
nomméalice_file
. Affichez les autorisations et la propriété des nouveaux fichiers.cd /staff touch alice_file ls -l
Les autorisations sont en lecture/écriture sur les deux fichiers du groupe staff.
-
En tant qu'utilisateur alice, utilisez la commande
touch
pour mettre à jour l'horodatage suroracle_file
. Affichez les fichiers pour vérifier que l'heure a changé.touch oracle_file ls -l
La mise à jour de l'horodatage implique des droits d'accès en écriture sur le fichier en tant qu'utilisateur alice, même si le fichier a été créé par l'utilisateur oracle.
-
Quittez à la fois le shell de l'utilisateur alice et le shell de l'utilisateur oracle pour revenir au shell de l'utilisateur root. Vérifiez que vous êtes l'utilisateur root.
exit exit whoami
Option 1 : Octroi de privilèges élevés à un utilisateur
Dans cette section, vous accordez des privilèges sudo
à un utilisateur en ajoutant une entrée au fichier /etc/sudoers
.
-
Devenez l'utilisateur alice. Vous n'êtes pas invité à saisir le mot de passe alice car vous êtes actuellement l'utilisateur root. Vérifiez que vous êtes l'utilisateur alice.
su - alice whoami
-
En tant qu'utilisateur alice, essayez d'ajouter newuser.
useradd newuser
L'utilisateur alice n'est pas autorisé à ajouter newuser.
-
Insérez la commande
sudo
avant la commandeuseradd
précédente pour ajouter newuser. Saisissez le mot de passeAB*gh246
à l'invite.sudo useradd newuser
La tentative d'exécution de cette commande d'administrateur sans autorisation appropriée est signalée dans le fichier
/var/log/secure
. -
Quittez le shell de l'utilisateur alice pour revenir au shell de l'utilisateur root. Affichez les entrées sudoers dans le fichier
/var/log/secure
.exit grep sudoers /var/log/secure
L'entrée alice : user NOT in sudoers pour la tentative d'utilisation de la commande
/sbin/useradd
se trouve dans le fichier/var/log/secure
. L'exemple présente plusieurs entrées. Vous ne pouvez avoir qu'une seule entrée. -
En tant qu'utilisateur root, modifiez le fichier
/etc/sudoers
à l'aide de la commandevisudo
.visudo
Cette commande ouvre le fichier
/etc/sudoers
à l'aide de l'éditeurvim
. -
Dans le fichier
/etc/sudoers
, ajoutez la ligne suivante pour accorder à l'utilisateur alice l'autorisation d'exécuter la commande/sbin/useradd
.alice ALL=(ALL) /sbin/useradd
La nouvelle entrée est mise en surbrillance. Enregistrez les modifications et quittez la commande
visudo
. -
Devenez l'utilisateur alice. Tentez d'ajouter newuser sans la commande
sudo
. Insérez la commandesudo
et essayez d'ajouter newuser une seconde fois. Saisissez le mot de passeAB*gh246
à l'invite.su - alice useradd newuser sudo useradd newuser
-
Vérifiez que newuser a été ajouté.
grep newuser /etc/passwd ls -l /home
Le newuser existe maintenant. Avec l'entrée alice dans le fichier
/etc/sudoers
, l'utilisateur alice dispose des privilègessudo
pour exécuter la commande/sbin/useradd
. -
Quittez le shell alice pour revenir au shell root. Utilisez la commande
visudo
et supprimez l'entrée alice du fichier/etc/sudoers
que vous avez ajouté précédemment dans cet exercice.exit visudo
L'entrée à supprimer est mise en surbrillance. Supprimez la ligne entière ou, comme dans cet exemple, insérez le caractère
#
pour commenter la ligne. Enregistrez les modifications et quittez la commandevisudo
. -
Vérifiez que l'utilisateur alice ne peut plus ajouter un nouvel utilisateur. Devenez l'utilisateur alice. Tentez d'ajouter anotheruser à l'aide de la commande
sudo
.su - alice sudo useradd anotheruser
La tentative d'exécution de cette commande d'administrateur sans autorisation appropriée est signalée dans le fichier
/var/log/secure
. -
Quittez le shell de l'utilisateur alice pour revenir au shell de l'utilisateur root.
exit
Option 2 : Octroi de privilèges élevés à un utilisateur
Dans cette section, vous accordez des privilèges sudo
en ajoutant un utilisateur au groupe wheel.
-
En tant qu'utilisateur root, affichez l'entrée wheel dans le fichier
/etc/sudoers
.grep wheel /etc/sudoers
L'entrée %wheel ALL=(ALL) ALL dans le fichier
/etc/sudoers
permet à n'importe quel membre du groupe wheel d'exécuter n'importe quelle commande, lorsqu'elle est précédée desudo
. -
Ajoutez l'utilisateur alice au groupe wheel. Vérifiez que l'utilisateur alice se trouve dans le groupe wheel.
usermod -aG wheel alice grep wheel /etc/group
L'utilisateur alice a une appartenance de groupe secondaire au groupe wheel.
-
Devenez l'utilisateur alice. Vous n'êtes pas invité à saisir le mot de passe alice car vous êtes actuellement l'utilisateur root. Vérifiez que vous êtes l'utilisateur alice.
su - alice whoami
-
En tant qu'utilisateur alice, ajoutez tiersuser à l'aide de la commande
sudo useradd
. Indiquez le mot de passe deAB*gh246
si vous y êtes invité.sudo useradd thirduser
-
Vérifiez que tiersuser a été ajouté. La commande
ls
échoue jusqu'à ce que vous insériezsudo
et que vous fournissiez le mot de passe alice. Cela confirme que l'utilisateur alice dispose des privilègessudo
.grep thirduser /etc/passwd ls -la /home/thirduser sudo ls -la /home/thirduser
Ressources de formation supplémentaires
Explorez d'autres ateliers sur docs.oracle.com/learn ou accédez à davantage de contenu de formation gratuit sur le canal Oracle Learning YouTube. En outre, accédez à education.oracle.com/learning-explorer pour devenir explorateur Oracle Learning.
Pour consulter la documentation du produit, consultez Oracle Help Center.
Create users and groups on Oracle Linux
F49506-05
July 2022
Copyright © 2021, Oracle and/or its affiliates.