Introduction
Sous Linux, chaque fichier et répertoire est attribué à un utilisateur et à un groupe. Ce système de propriété est un aspect fondamental de la sécurité et du contrôle d'accès sous Linux. La capacité de changer la propriété de groupe est une compétence essentielle pour les administrateurs système qui doivent gérer efficacement les autorisations de fichiers et les droits d'accès.
Ce labo se concentre sur la commande chgrp, qui vous permet de changer la propriété de groupe des fichiers et des répertoires sous Linux. En maîtrisant cette commande, vous comprendrez mieux la gestion des autorisations de fichiers et apprendrez un aspect important de l'administration système.
Au cours de ce labo, vous allez pratiquer l'utilisation de la commande chgrp dans différents scénarios, à la fois pour des fichiers individuels et de manière récursive pour les répertoires. Vous apprendrez également à vérifier les changements de propriété de groupe et à comprendre pourquoi une bonne gestion des groupes est cruciale pour la sécurité du système.
Comprendre la propriété de groupe des fichiers
Sous Linux, chaque fichier a un propriétaire et un groupe. L'attribution de groupe détermine quels utilisateurs peuvent accéder au fichier en fonction des autorisations de groupe. Explorons comment afficher et changer la propriété de groupe.
Tout d'abord, accédez au répertoire du projet :
cd ~/project
Maintenant, créons un nouveau fichier sur lequel travailler :
touch defense_secrets.txt
Pour afficher la propriété et les autorisations actuelles du fichier, utilisez la commande ls -l :
ls -l defense_secrets.txt
Vous verrez une sortie similaire à celle-ci :
-rw-r--r-- 1 labex labex 0 Jan 12 16:20 defense_secrets.txt
La sortie affiche plusieurs informations :
- La première colonne montre les autorisations de fichier
- La troisième colonne montre le propriétaire (labex)
- La quatrième colonne montre le groupe (labex)
Dans notre système, deux groupes ont été créés pour vous : defenders et strategists. Changeons la propriété de groupe de notre fichier du groupe par défaut labex au groupe defenders en utilisant la commande chgrp :
sudo chgrp defenders defense_secrets.txt
Maintenant, vérifions que le groupe a été changé avec succès :
ls -l defense_secrets.txt
La sortie devrait maintenant indiquer que le fichier appartient au groupe defenders :
-rw-r--r-- 1 labex defenders 0 Jan 12 16:20 defense_secrets.txt
La commande chgrp nécessite des privilèges administratifs lorsque vous changez de groupe pour un groupe dont vous n'êtes pas membre, c'est pourquoi nous avons utilisé sudo dans cet exemple.
Changement récursif de la propriété de groupe
Souvent, les administrateurs système doivent changer la propriété de groupe non seulement d'un seul fichier, mais d'un répertoire entier et de tout son contenu. L'option -R (récursive) de la commande chgrp rend cette tâche simple.
Créons un répertoire avec plusieurs fichiers pour pratiquer :
mkdir -p ~/project/operational_plans
touch ~/project/operational_plans/plan1.txt
touch ~/project/operational_plans/plan2.txt
Tout d'abord, vérifions la propriété de groupe actuelle du répertoire et de ses fichiers :
ls -l ~/project/operational_plans
Vous verrez que les deux fichiers appartiennent au groupe par défaut labex :
-rw-r--r-- 1 labex labex 0 Jan 12 16:30 plan1.txt
-rw-r--r-- 1 labex labex 0 Jan 12 16:30 plan2.txt
Pour changer la propriété de groupe du répertoire et de tous les fichiers qu'il contient au groupe strategists, utilisez la commande chgrp avec l'option -R :
sudo chgrp -R strategists ~/project/operational_plans
L'option -R indique à chgrp d'opérer de manière récursive, appliquant le changement au répertoire et à tout ce qu'il contient.
Maintenant, vérifions que la propriété de groupe a été changée pour le répertoire et son contenu :
ls -l ~/project
ls -l ~/project/operational_plans
La sortie devrait montrer que le répertoire et les deux fichiers appartiennent maintenant au groupe strategists :
drwxr-xr-x 2 labex strategists 4096 Jan 12 16:30 operational_plans
...
-rw-r--r-- 1 labex strategists 0 Jan 12 16:30 plan1.txt
-rw-r--r-- 1 labex strategists 0 Jan 12 16:30 plan2.txt
L'option récursive est particulièrement utile lorsqu'il s'agit de grandes structures de répertoires où changer manuellement chaque fichier serait impraticable.
Comprendre les informations de groupe et les autorisations
Maintenant que vous savez comment changer la propriété de groupe, explorons comment afficher les informations de groupe et comprendre pourquoi les autorisations de groupe sont importantes.
Sous Linux, les informations sur les groupes sont stockées dans le fichier /etc/group. Vous pouvez afficher les groupes existants sur le système avec la commande getent :
getent group
Cela affichera une longue liste de tous les groupes sur le système. Pour voir seulement les groupes avec lesquels nous avons travaillé, vous pouvez filtrer la sortie :
getent group | grep -E 'defenders|strategists'
Vous devriez voir une sortie similaire à :
defenders:x:1001:
strategists:x:1002:
Pour voir à quels groupes votre utilisateur actuel appartient, utilisez la commande groups :
groups
La sortie affiche tous les groupes dont votre utilisateur est membre :
labex adm cdrom sudo dip plugdev lpadmin sambashare
Maintenant, comprenons pourquoi les autorisations de groupe sont importantes. Sous Linux, les autorisations de fichier sont définies pour trois catégories : propriétaire, groupe et autres. Créons un nouveau fichier et modifions ses autorisations pour illustrer cela :
touch ~/project/group_example.txt
ls -l ~/project/group_example.txt
La sortie affichera les autorisations par défaut :
-rw-r--r-- 1 labex labex 0 Jan 12 16:40 group_example.txt
La chaîne d'autorisations -rw-r--r-- peut être décomposée comme suit :
- Premier caractère : Type de fichier (- signifie fichier ordinaire)
- Trois caractères suivants (rw-) : Autorisations du propriétaire (lecture, écriture, pas d'exécution)
- Trois caractères suivants (r--) : Autorisations du groupe (lecture seulement)
- Trois derniers caractères (r--) : Autorisations des autres (lecture seulement)
Changeons les autorisations du groupe pour permettre l'accès en écriture :
chmod g+w ~/project/group_example.txt
ls -l ~/project/group_example.txt
La sortie montre maintenant :
-rw-rw-r-- 1 labex labex 0 Jan 12 16:40 group_example.txt
Remarquez que les autorisations du groupe sont passées de r-- à rw-.
Enfin, combinons ce que nous avons appris en changeant à la fois la propriété de groupe et les autorisations de groupe :
sudo chgrp defenders ~/project/group_example.txt
chmod g+x ~/project/group_example.txt
ls -l ~/project/group_example.txt
Le résultat devrait être :
-rw-rwxr-- 1 labex defenders 0 Jan 12 16:40 group_example.txt
Maintenant, le fichier appartient au groupe defenders et a des autorisations de lecture, d'écriture et d'exécution pour les membres de ce groupe.
Résumé
Dans ce laboratoire, vous avez appris à gérer la propriété de groupe sous Linux en utilisant la commande chgrp. Vous avez commencé par changer le groupe d'un seul fichier, puis vous êtes passé à la modification récursive des groupes pour les répertoires et leur contenu. Enfin, vous avez exploré comment afficher les informations de groupe et compris l'importance des autorisations de groupe dans la sécurité des fichiers Linux.
Concepts clés abordés dans ce laboratoire :
- Utilisation de
chgrppour changer la propriété de groupe des fichiers - Utilisation de l'option
-Rpour les modifications récursives de la propriété de groupe - Affichage de la propriété et des autorisations des fichiers avec
ls -l - Examen des informations de groupe avec
getent groupetgroups - Compréhension de la relation entre la propriété de groupe et les autorisations de fichier
- Modification des autorisations de groupe avec
chmod
Ces compétences sont essentielles pour l'administration système Linux, en particulier lors de la gestion des ressources partagées et de la mise en œuvre de contrôles d'accès appropriés. La capacité à attribuer et à gérer correctement la propriété de groupe contribue à maintenir la sécurité tout en permettant un accès approprié aux fichiers et aux répertoires.



