Certification Linux LPI/Administrateur système débutant/Examen 101/Périphériques et systèmes de fichiers Linux/Permissions d'accès aux fichiers
Objectifs
[modifier | modifier le wikicode]Description : Les candidats devraient être capables de contrôler les accès aux fichiers à travers les permissions. Cet objectif inclut les permissions d'accès pour les fichiers ordinaires ou spéciaux ainsi que les répertoires. Sont aussi compris les modes d'accès tel que suid, sgid, et le sticky bit, l’utilisation du champ group pour autoriser l'accès de groupes de travail à un fichier, le immutable flag, et mode de création de fichier par défaut.
Sécurité du système de fichiers Unix
Permissions de fichiers et de répertoires
Permissions par défaut
Modification des permissions d’un fichier
Modification de l’utilisateur ou du groupe propriétaire d’un fichier
Privilèges étendus
Sécurité du système de fichiers Unix
[modifier | modifier le wikicode]C'est peut-être vous qui représentez la plus grande menace de sécurité. Vous êtes propriétaire de tout fichier ou répertoire que vous avec créé. Vous êtes responsable de l'accessibilité de vos fichiers. Vous choisissez qui accède à quels fichiers et à quels répertoires.
Dans votre répertoire racine, vous pourrez attribuer différents niveaux de permissions à vous-même, aux utilisateurs de votre groupe et à tous les autres utilisateurs.
Permissions des fichiers et des répertoires
[modifier | modifier le wikicode]Les permissions d’un fichier ou d’un répertoire peuvent être affichées à l'aide de ls -l.
Exemples des permissions d’un fichier:
ls -l readme -rwxrw---- 1 toto users 14 Jul 5 10:00 readme
Ceci signifie que l'utilisateur toto possède les permissions de lecture, écriture, et exécution ; que les membres du groupe possèdent les permissions de lecture et d'écriture ; que les autres utilisateurs n'ont aucun droit sur ce fichier. (0760)
ls -l /etc/hosts -rw-r--r-- 1 root root 14 Jul 5 10:00 /etc/hosts
Ceci signifie que l'utilisateur root possède les permissions de lecture et d'écriture ; que les membres du groupe possèdent la permission de lecture ; que les autres utilisateurs possèdent également la permission de lecture. (0644)
Exemples des permissions d’un répertoire:
ls -ld /bin drwxr-xr-x 2 root root 4096 Jul 5 10:00 /bin
Ceci signifie que l'utilisateur root possède les permissions de lecture, d'écriture, et d'exécution ; que les membres du groupe possèdent les permissions de lecture et d'exécution ; que les autres utilisateurs possèdent également les permission de lecture et d'exécution. (0755)
ls -l /home/toto drwxr-xr-x 10 toto users 4096 Jul 5 1:00 /home/toto
Ceci signifie que l'utilisateur toto possède les permissions de lecture, d'écriture, et d'exécution ; que les membres du groupe possèdent les permissions de lecture et d'exécution ; que les autres utilisateurs possèdent également les permission de lecture et d'exécution. (0755)
Permissions par défaut
[modifier | modifier le wikicode]Les permissions par défaut à la création d’un fichier sont 0666 ; à la création d’un répertoire, elles sont 0777. La majorité des systèmes modifie cela au démarrage, à l'aide du programme umask. Généralement, la valeur du masque est 022. Cela signifie que les membres du groupe et les autres utilisateurs verront leur permission d'écriture révoquée. Pour afficher ou modifier la valeur du masque, utilisez:
umask umask 066
Exemples pour un fichier:
default: rw- rw- rw- (0666) umask: 0 2 2 (0022) Block result: rw- r-- r-- (0644)
Exemples pour un répertoire:
default: rwx rwx rwx (0777) umask: 0 2 2 (0022) Block result: rwx r-x r-x (0755)
Changer les permissions des fichiers
[modifier | modifier le wikicode]Pour modifier les permissions sur un fichier ou un répertoire, utilisez chmod. Pour écraser les permissions existantes, utilisez:
chmod 0755 /tmp #rwx pour l'utilisateur, rx pour le groupe et les autres utilisateurs
Pour modifier, ajouter ou révoquer certaines permissions sans écraser toutes les permissions préexistantes, utilisez:
chmod u+w readme # Ajoute la permission d'écriture pour l'utilisateur chmod +r readme # Ajoute la permission de lecture pour tout le monde chmod -r readme # Révoque la permission de lecture pour tout le monde chmod u+x,g=r readme # Ajoute la permission d'exécution pour l'utilisateur et définit la permission de lecture pour les membres du groupe chmod u=rwx,go=rx readme # Définit les permissions de lecture, écriture, et exécution pour l'utilisateur, ainsi que les permissions de lecture et d'exécution # pour les membres du groupe et le reste des utilisateurs.
Pour appliquer les changements récursivement, utilisez l'option -R.
chmod -R +x /sbin/*
Exercices
[modifier | modifier le wikicode]