TP permissions d'accès aux fichiers
corrigés proposés


Exo 1

  1. drwx------ stagex stagex /home/stagex
  2. même si totox fait partie du groupe stagex, le répertoire n'accorde pas de permissions x de parcours, ni même r de lecture.
  3. Pour que totox puisse accéder en lecture au rép. perso. de
    1. ajouter totox dans le groupe stagex, avec linuxconf
      Attention ! cela peut être imprudent : en effet, par la suite totox pourra user et abuser des droits accordés
    2. chmod g+r /home/stagex


Exo 2

  1. Il n'est pas caché, stagex peut le voir avec ll /etc/sha*
    Mais il n'est pas lisible : permission non accordée pour less /etc/shadow !
  2. root effectue la copie : cp /etc/shadow /home/temp/shadow.bak
  3. avec une permission r-- sur ce fichier, root peut quand même le supprimer !
  4. root effectue la copie : cp /etc/shadow /home/stagex/shadow.bak
    et accorde la propriété : chown stage1. /home/stagex/shadow
  5. stagex passe les commandes cd , puis ll et observe :
    -r-------- stagex stagex shadow.bak
  6. stagex peut lire le fichier par less shadow.bak et l'édite avec mc/F4, supprime une ligne, et veut sauvegarder par F2 --> refus et invite à le renommer.
    C'est normal, le droit w n'est pas positionné !
  7. stagex veut le supprimer rm shadow.bak
    Il reçoit l'avertissement :
    rm: détruire le fichier protégé en écriture shadow.bak et répond y, et ... c'est fait.
    En effet stagex possède la permission w sur son rép perso /home/stagex.

    Remarque :
    Si stagex se 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

  1. le rép /home n'accorde un droit d'écriture qu'à root
  2. [stagex@p0x ] su
    [root@p0x ] mkdir /home/temp
  3. chmod 777 /home/temp
  4. cd /home/temp 
    [totox@p0x temp] cp /etc/hosts . pour déplacer dans le rep. courant 
  5. Fort heureusement totox n'a pas de droit d'écriture w sur /etc, il ne peut donc rien y supprimer !
  6. chown stagex /home/temp/*
    opération non permise !
    Pris de panique totox n'a plus pensé qu'il a le droit de supprimer cette copie qui lui appartient ...


Exo 4

On suppose la situation initiale suivante :
  1. root a créé le rep rep-stagiaire
    mkdir /home/rep-stagiaire
  2. Il a attribué la propriété collective de ce rép. au groupe stagiaire,
    chgrp stagiaire /home/rep-stagiaire
  3. avec un accès complet, et rien pour les autres utilisateurs.
    chmod 770 /home/rep-stagiaire

    Vérification :

    ll /home
    drwxr-xr-x root    root       httpd/
    drwx------ stagex  stagex     stagex/
    drwx------ stagey  stagey     stagey/
    drwxrwx--- root	   stagiaire  rep-stagiaire/
  4. stagex, très rétro, crée ce texte directement saisi à la console avec cat
    cat, par défaut admet le clavier comme canal d'entrée
    cd /home/rep-stagiaire
    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-D
    Par précaution stagex, 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-------
  5. stagey lit le texte par exemple avec less /home/rep-stagiaire/doc-stgx.txt
    On vérifie que totox ne fait plus partie du groupe stagiaire et qu'il ne peut pas lire.
    groups totox
    totox : totox
    [totox@p0x home] less rep-stagiaire/doc-stgx.txt
    Permission non accordée
  6. stagey supprime sans problème le document de stagex
    [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 !)
    
  7. Pour n'autoriser les suppressions qu'effectuées par le propriétaire (ou de root), root passe la commande
    chmod +t /home/rep-stagiaire
    (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
    
    Ces 2 tentatives échoueront :
    [stagey@p0x rep-stagiaire] rm  doc-stgx.txt 
    [stagey@p0x rep-stagiaire] mv  doc-stgx.txt  doc-stgy.txt