Exercice 1
- Quels sont les droits sur les répertoires personnels (par exemple stagex) ?
- Un utilisateur différent
stageypeut-il y pénétrer ou seulement lister ses fichiers ? et totox, le pourrait-il s'il faisait partie du groupe destagex? - Quelles commandes devrait écrire
stagexpour accorder le droit de visite de son rép. perso seulement à totox ?
Exercice 2
- Comparer les permissions de
/etc/passwdet/etc/shadow.
Pourquoi a t-on nommé ainsi ce dernier fichier ?stagexpeut-il le lire ? et voir sa présence ?
L'examiner pour deviner son rôle. - Par précaution, en faire une copie sous le nom
shadow.bakdans/home/temp! vérifier les droits de/home/temp/shadow.bak - Pensez-vous tout de même pouvoir supprimer le fichier précédent ? Concluez !
rootfait maintenant une copie deshadowchez vous, dans/home/stagex, sous le nomshadow.baket vous accorde la propriété de la copie.
a) Comment fait-il ?
b)stagexvérifie le résultat- Vous éditez ce fichier avec Midnight Commander, vous le modifiez, par exemple en supprimant des lignes, et vous faites une mise à jour.
Ecrivez le mode opératoire.
La mise à jour sera t-elle réalisée ? pourquoi ? - Pensez vous que
stagexpuisse supprimer ce fichier ?
Essayez et expliquez !
Exercice 3
- En tant que
stagex, pouvez vous créer le rép. temporaire/home/temp? essayez ! pourquoi ?
- Effectuez cette création comme root (pensez à la commande
su). - Accorder les permissions maximales sur
/home/temp; vérifiez.
totox, toujours lui, tout content d'avoir enfin un droit d'écriture, dans/home/tempessaie de copier les 2 fichiers système/etc/hostset/etc/passwddans/home/temp?
y parviendra t-il ? pourquoi ? que donne[totox@p0x ] ll /home/temp?totox, essaie maintenant de supprimer ces 2 fichiers de/etc.
Réussit-il ?- Effrayé à l'idée de se faire pincer par le (ou la) redoutable
root,totoxveut masquer sa faute tout en faisant punirstagexà sa place !
Pour cela, il veut questagexdevienne propriétaire du fichier copiépasswd.
Comment s'y prend t-il ? Réussit-il ?
Et vous comment auriez vous fait ?
Exercice 4
Il s'agit de créer un rép. partagé par tous les membresstagex du groupe stagiaireNormalement, ce groupe a déjà été créé et rempli de comptes
stagex. - Créez dans
/homeun répertoire appelérep-stagiaire. Rappelez pourquoi cette tâche relève des prérogatives deroot - Faites-le appartenir au groupe
stagiaire - Modifier les permissions sur le rép, pour que tous les membres du groupe
stagiairepuissent y écrire et s'y déplacer. - En tant que
stagex, vous créez un fichier, par exemple un petit fichier texte (à l'aide de vi ou d'un éditeur graphique comme kedit) et vous le déposez dans/home/rep-stagiaire.
Si vous êtes paresseux, vous y faites une copie d'un fichier qcq, par exemple/etc/hosts, mais en attribuant des droits 660[stagex@p0x etc] cp hosts /home/rep-stagiaire
[stagex@p0x etc] chmod 660 hosts
- Vérifier le bon accès en lecture seulement pour les membres du groupe
Ainsitotoxqui a fini par être exclu du groupestagiaire(surtout après l'exercice 3) ne doit pas pouvoir le lire. A vérifier. - Votre collègue (ou votre double !) le perfide
stagey(y#x), tente de supprimer ce fichier ou de le renommer
Y parvient-il ? Essayez !
Pourtant, vérifiez que ce fichier appartient au groupestagex
N'est-ce pas inquiétant ? Expliquez comment cela est possible. - Demandez à
rootde positionner le "sticky bit" sur le répertoire partagé.
Vérifiez bien que le problème est réglé et protège le propriétaire des tentatives de suppression ou de changement de nom de ses fichiers.
Prolongement : vérifier que cette protection s'applique aussi à distance sous Samba
Exo 1
- drwx------ stagex stagex /home/stagex
- même si
totoxfait partie du groupestagex, le répertoire n'accorde pas de permissionsxde parcours, ni mêmerde lecture. - Pour que
totoxpuisse accéder en lecture au rép. perso. de- ajouter
totoxdans le groupestagex, avec linuxconf
Attention ! cela peut être imprudent : en effet, par la suitetotoxpourra user et abuser des droits accordés chmod g+r /home/stagex
- ajouter
Exo 2
- Il n'est pas caché,
stagexpeut le voir avecll /etc/sha*
Mais il n'est pas lisible : permission non accordée pourless /etc/shadow! - root effectue la copie :
cp /etc/shadow /home/temp/shadow.bak - avec une permission
r--sur ce fichier,rootpeut quand même le supprimer ! - root effectue la copie :
cp /etc/shadow /home/stagex/shadow.bak
et accorde la propriété :chown stage1. /home/stagex/shadow -
stagexpasse les commandescd, puisllet observe :
-r-------- stagex stagex shadow.bak -
stagexpeut lire le fichier parless shadow.baket l'édite avec mc/F4, supprime une ligne, et veut sauvegarder par F2 --> refus et invite à le renommer.
C'est normal, le droitwn'est pas positionné ! stagexveut le supprimerrm shadow.bak
Il reçoit l'avertissement :
rm: détruire le fichier protégé en écriture shadow.bak et répondy, et ... c'est fait.
En effetstagexpossède la permissionwsur son rép perso/home/stagex.Remarque :
Sistagexse bloque ce droit, ce ne serait plus possible !cd /home
chmod 500 stagex
cd
rm shadow.bak
rm: détruire le fichier protégé en écriture 'shadow.bak'
-->y
rm: Ne peut délier 'shadow.bak' : Permission non accordée
Exo 3
- le rép
/homen'accorde un droit d'écriture qu'àroot [stagex@p0x ] su
[root@p0x ] mkdir /home/tempchmod 777 /home/tempcd /home/temp
[totox@p0x temp] cp /etc/hosts . pour déplacer dans le rep. courant- Fort heureusement
totoxn'a pas de droit d'écriturewsur/etc, il ne peut donc rien y supprimer ! chown stagex /home/temp/*
opération non permise !
Pris de paniquetotoxn'a plus pensé qu'il a le droit de supprimer cette copie qui lui appartient ...
Exo 4
On suppose la situation initiale suivante :roota créé le reprep-stagiaire
mkdir /home/rep-stagiaire- Il a attribué la propriété collective de ce rép. au groupe
stagiaire,
chgrp stagiaire /home/rep-stagiaire - avec un accès complet, et rien pour les autres utilisateurs.
chmod 770 /home/rep-stagiaireVérification :
ll /home
drwxr-xr-x root root httpd/
drwx------ stagex stagex stagex/
drwx------ stagey stagey stagey/
drwxrwx--- root stagiaire rep-stagiaire/ stagex, très rétro, crée ce texte directement saisi à la console aveccatcat, par défaut admet le clavier comme canal d'entréecd /home/rep-stagiaire
Par précaution
cat > doc-stgx.txt
Voici un petit texte sans prétention,
mais auquel je tiens beaucoup.
Mes collègues peuvent le lire, y répondre
mais je leur demande de ne pas le modifier
ni l'effacer. Merci.
signé : stagex
Ctrl-Dstagex, pas naïf, en fait une copie privée, sans droit de groupe :cp doc-stgx.txt doc-stgx.sauve
chmod 600 doc-stgx.sauve
ll doc-stgx.sauve
-rx-------stageylit le texte par exemple avecless /home/rep-stagiaire/doc-stgx.txt
On vérifie quetotoxne fait plus partie du groupestagiaireet qu'il ne peut pas lire.groups totox
totox : totox
[totox@p0x home] less rep-stagiaire/doc-stgx.txt
Permission non accordéestageysupprime sans problème le document destagex[stagey@p0x rep-stagiaire] rm doc-stgx.txt
rm: détruire le fichier protégé en écriture 'doc-stgx.txt' ?
y (répond t-il sournoisement)
[stagey@p0x rep-stagiaire] ll (pour vérifier, le traitre !)- Pour n'autoriser les suppressions qu'effectuées par le propriétaire (ou de root),
rootpasse la commandechmod +t /home/rep-stagiaire
Ces 2 tentatives échoueront :
(ou chmod 1770 /home/rep-stagiaire)
ll /home
drwxrwx--T root stagiaire rep-stagiaire/
(rappel : T au lieu de t, car pas de droit x pour la catégorie other[stagey@p0x rep-stagiaire] rm doc-stgx.txt
[stagey@p0x rep-stagiaire] mv doc-stgx.txt doc-stgy.txt