Lab-05 GestionACL

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 3

Exercice pratique : utilisation de ACL pour autoriser ou limiter les accès

Dans le cadre de cet atelier, vous allez ajouter une liste de contrôle d'accès (ACL) de groupe et
d'utilisateur à un dossier partagé existant et à son contenu. Vous configurerez les ACL par
défaut pour que les futurs fichiers et répertoires reçoivent les permissions adéquates

Résultats

• Les membres du groupe sodor auront les mêmes permissions d'accès au


répertoire steamies que le groupe controller, à l'exception de james qui n'y aura pas accès.
• Les fichiers et répertoires existants seront mis à jour de manière à refléter les modifications
apportées aux permissions ACL de sodor et de james.
• Les nouveaux fichiers et répertoires bénéficient automatiquement des permissions de fichier
et de ACL correctes.
• Ouvrez un terminal.Passez au mode root en utilisant sudo -i

1. Créez les comptes : (Groupe controller membres : student ) (Groupe sodor les membres :
thomas,james)
2. Créer les répertoires : /shares/steamies/engines
Copier le contenu /usr/share/doc/accountsservice dans /shares/steamies
Créez le script calendrier 2020 /shares/steamies/cal2020.sh

[root@servera ~]# useradd james ; useradd Thomas ; groupadd controller ; groupadd sodor

[root@servera ~]# usermod -aG sodor james ; usermod -aG sodor Thomas

[root@servera ~]# mkdir -p /shares/steamies/engines

[root@servera ~]# cp -r /usr/share/doc/accountsservice /shares/steamies

[root@servera ~]# echo "cal 2020" > /shares/steamies/cal2020.sh ; chmod 755 /shares/steamies/cal2020.sh

Toutes les modifications doivent s'appliquer uniquement au répertoire steamies et à ses fichiers ; ne
modifiez pas le répertoire shares
Ajoutez les ACL nommées au répertoire steamies et à l'ensemble de son contenu.
1. Utilisez la commande setfacl pour mettre à jour récursivement le répertoire steamies, afin
d'autoriser au groupe sodor la lecture, l'écriture et l'exécution conditionnelle.

[root@servera ~]# setfacl -Rm g:sodor:rwX /shares/steamies

-R : récursif ; -m : modifier/ajouter ; :rwX : lecture/écriture/exécution (mais seulement sur les répertoires et sur les
exécutables existants)

2. Utilisez setfacl pour mettre à jour récursivement le répertoire steamies, afin de refuser tout accès à
l'utilisateur james du groupe sodor.

[root@servera ~]# setfacl -Rm u:james:- /shares/steamies

-R : récursif ; -m : modifier/ajouter ; :- : aucune autorisation

3. Ajoutez les ACL par défaut pour permettre l'ajout à l'avenir d'autres répertoires et fichiers.

1. Utilisez setfacl pour ajouter une règle d'accès par défaut au groupe sodor. Autorisez la lecture,
l'écriture et l'exécution du répertoire steamies.
[root@servera ~]# setfacl -m d:g:sodor:rwx /shares/steamies

-m : modifier/ajouter ; d:g : groupe par défaut ; :rwx : lecture/écriture/exécution (requis pour créer sans problème des sous-
répertoires et y accéder)

2. Utilisez setfacl pour ajouter une règle d'accès par défaut à l'utilisateur james. Interdisez tout
accès au répertoire steamies.

[root@servera ~]# setfacl -m d:u:james:- /shares/steamies

-m : modifier/ajouter ; d:u : utilisateur par défaut ; :- : aucune permission

4. Vérifiez les modifications que vous avez apportées aux ACL.

Thomas doit pouvoir lire n'importe quel fichier, créer un répertoire contenant un nouveau fichier, et
exécuter le script cal2020.sh.
James ne doit pouvoir ni lire ni écrire des données, ni exécuter aucun fichier. Cela exclut qu'il puisse
obtenir la liste du contenu des répertoires.
Utilisez sudo -i -u user pour basculer vers vos utilisateurs de test. Exécutez exit ou Ctrl+D pour quitter
le shell de l'utilisateur de test.
[root@servera ~]# exit

[student@servera ~]$ sudo -i -u thomas

[thomas@servera ~]$ cd /shares/steamies/

- Utilisez cat pour vérifier que Thomas peut lire un fichier.

[thomas@serverX steamies]$ cat accountsservice/README

verview

- Utilisez cal2020.sh pour vérifier que Thomas peut exécuter un script.

[thomas@serverX steamies]$ ./cal2020.sh


January February March

Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa

1 2 3 4 1 1 2 3 4 5 6 7

5 6 7 8 9 10 11 2 3 4 5 6 7 8 8 9 10 11 12 13 14

12 13 14 15 16 17 18 9 10 11 12 13 14 15 15 16 17 18 19 20 21

19 20 21 22 23 24 25 16 17 18 19 20 21 22 22 23 24 25 26 27 28

26 27 28 29 30 31 23 24 25 26 27 28 29 29 30 31

...

- Utilisez mkdir pour créer un répertoire en sous l'identité de Thomas.


Utilisez echo pour créer un fichier dans le nouveau répertoire sous l'identité de Thomas.
Lorsque vous avez terminé, rebasculez vers student.
[thomas@serverX steamies]$ mkdir tidmouth

[thomas@serverX steamies]$ echo "toot toot" > tidmouth/whistle.txt

[thomas@serverX steamies]$ exit


- Utilisez cd pour essayer d'ouvrir le répertoire sous l'identité de James, puis essayez d'exécuter
un ls pour afficher le contenu du répertoire. Les deux commandes doivent échouer, et le
message Permission denied doit s'afficher.
- Vous pouvez tenter d'exécuter une ou plusieurs des commandes qu'a lancées Thomas, mais sous
l'identité de James, afin de bien vous assurer que ses accès sont restreints.
- Rebasculez vers student lorsque vous avez terminé vos tests sous l'identité de james.
[student@serverX ~]$ sudo -i -u james

[james@serverX ~]$ cd /shares/steamies/

-bash: cd: /shares/steamies/: Permission denied

[james@serverX ~]$ ls /shares/steamies/

ls: cannot open directory /shares/steamies: Permission denied

[james@serverX ~]$ cat /shares/steamies/accoutsservice/README

cat: /shares/steamies/accountsservie/README: Permission denied

[james@serverX ~]$ exit

Utilisez getfacl pour afficher toutes les ACL de /shares/steamies et de /shares/steamies/tidmouth.


Utilisez newgrp controller pour passer student dans le groupe controller.
un getfacl sur tidmouth renvoie un message Permission denied.

[student@serverX ~]$ newgrp controller

[student@serverX ~]$ getfacl /shares/steamies

getfacl: Removing leading '/' from absolute path names


# file: shares/steamies/
# owner: root
# group: controller
user::rwx
user:james:---
group::r-x
group:sodor:rwx
mask::rwx
other::r-x
default:user::rwx
default:user:james:---
default:group::r-x
default:group:sodor:rwx
default:mask::rwx
default:other::r-x

[student@serverX ~]$ getfacl /shares/steamies/tidmouth

getfacl: Removing leading '/' from absolute path names

# file: shares/steamies/tidmouth/
# owner: thomas
# group: thomas
user::rwx
user:james:---
group::r-x
group:sodor:rwx
mask::rwx
other::r-x
default:user::rwx
default:user:james:---
default:group::r-x
default:group:sodor:rwx
default:mask::rwx
default:other::r-x

You might also like