Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
droits [Le 15/08/2013, 01:37]
94.108.160.208 [Droits attribués automatiquement à un fichier]
droits [Le 17/02/2023, 12:17] (Version actuelle)
G-Tux [Manipuler les droits d'accès] Retrait texte inaproprié "chmod777"
Ligne 4: Ligne 4:
  
 ====== Droits d'​accès sous Linux : gérer les accès aux fichiers ====== ====== Droits d'​accès sous Linux : gérer les accès aux fichiers ======
-//Voir aussi [[permissions]].//​+//Voir aussi [[permissions]], [[acl]].//
  
 Les systèmes d'​exploitation inspirés d'Unix (dont Linux fait partie) possèdent la capacité de définir de façon poussée la gestion de droits d'​accès aux divers fichiers de votre OS. Les systèmes d'​exploitation inspirés d'Unix (dont Linux fait partie) possèdent la capacité de définir de façon poussée la gestion de droits d'​accès aux divers fichiers de votre OS.
Ligne 10: Ligne 10:
 Les **droits d'​accès** définissent la possession d'un fichier ou d'un répertoire((Dans la suite de ce document, nous n'​emploierons plus que le terme « fichier ». De toute façon, c'est bien connu : sous *nix, tout est fichiers... Un répertoire est traité de la même façon qu'un fichier.)) à un utilisateur et à un groupe d'​utilisateurs. Ils gèrent aussi quelles actions les utilisateurs ont le droit d'​effectuer sur les fichiers, selon qu'ils sont propriétaire du fichier, membre du groupe propriétaire du fichier ou ni l'un ni l'​autre. La possession et la gestion des permissions associées s'​effectue individuellement avec chaque fichier. Les **droits d'​accès** définissent la possession d'un fichier ou d'un répertoire((Dans la suite de ce document, nous n'​emploierons plus que le terme « fichier ». De toute façon, c'est bien connu : sous *nix, tout est fichiers... Un répertoire est traité de la même façon qu'un fichier.)) à un utilisateur et à un groupe d'​utilisateurs. Ils gèrent aussi quelles actions les utilisateurs ont le droit d'​effectuer sur les fichiers, selon qu'ils sont propriétaire du fichier, membre du groupe propriétaire du fichier ou ni l'un ni l'​autre. La possession et la gestion des permissions associées s'​effectue individuellement avec chaque fichier.
  
-  * Le présent article est un document d'​explication à propos des droits d'​accès. Les sections [[#​les_propriétaires|"​Les propriétaires"​]] et [[#​les_permissions|"​Les permissions"​]] ​exposent ​de façon générale ce que sont ces attributs auxquels vous devrez faire face dans votre vie linuxienne. +  * Le présent article est un document d'​explication à propos des droits d'​accès. Les sections [[#​les_propriétaires|"​Les propriétaires"​]] et [[#​les_permissions|"​Les permissions"​]] ​présentent ​de façon générale ce que sont ces attributs auxquels vous devrez faire face dans votre vie linuxienne. 
-  * Les manipulations ​des droits d'​accès des fichiers et dossiers ​sont abordées ​dans l'​article « [[:​Permissions]] ».+  * La manipulation ​des droits d'​accès des fichiers et dossiers ​est abordée ​dans l'​article « [[:​Permissions]] ».
  
 ===== Les propriétaires ===== ===== Les propriétaires =====
Ligne 21: Ligne 21:
   - les autres, **__o__ther**,​ le reste du monde **(__o__)**. Bref, tout un chacun n'​étant ni propriétaire du fichier, ni membre du groupe propriétaire du fichier.   - les autres, **__o__ther**,​ le reste du monde **(__o__)**. Bref, tout un chacun n'​étant ni propriétaire du fichier, ni membre du groupe propriétaire du fichier.
  
-Faisons une analogie avec les voitures. Le //​propriétaire//​ serait la personne au nom de laquelle la voiture est immatriculée. Le //groupe propriétaire// ​ est l'​ensemble des personnes qui sont inscrites en tant que conducteurs secondaires de la voiture chez l'​assureur. Enfin, les //​autres// ​correspond ​à toutes les autres personnes n'​étant ni détenteur de l'​immatriculation ni inscrites en tant que conducteurs de la voiture chez l'​assureur.+Faisons une analogie avec les voitures. Le //​propriétaire//​ serait la personne au nom de laquelle la voiture est immatriculée. Le //groupe propriétaire// ​ est l'​ensemble des personnes qui sont inscrites en tant que conducteurs secondaires de la voiture chez l'​assureur. Enfin, les //​autres// ​correspondent ​à toutes les autres personnes n'​étant ni détenteur de l'​immatriculation ni inscrites en tant que conducteurs de la voiture chez l'​assureur.
  
-<​note>​Certains logiciels ont besoin de pouvoir écrire dans des fichiers particuliers pour bien fonctionner,​ et cet accès est autorisé en fonction de l'​inclusion ou non d'un utilisateur dans un groupe de membres précis. C'est le cas entre autre (mais pas exclusivement) de [[:​Virtualbox]]. Pour savoir comment gérer l'​inclusion ou l'​exclusion d'un utilisateur à un groupe d'​utilisateurs,​ référez-vous au document traitant de la [[:gestion_compte|gestion des comptes utilisateurs sous Ubuntu]].</​note>​+<​note>​Certains logiciels ont besoin de pouvoir écrire dans des fichiers particuliers pour bien fonctionner,​ et cet accès est autorisé en fonction de l'​inclusion ou non d'un utilisateur dans un groupe de membres précis. C'est le cas entre autre (mais pas exclusivement) de [[:​Virtualbox]]. Pour savoir comment gérer l'​inclusion ou l'​exclusion d'un utilisateur à un groupe d'​utilisateurs,​ référez-vous au document traitant de la [[:users-admin|gestion des comptes utilisateurs sous Ubuntu]].</​note>​
  
  
Ligne 31: Ligne 31:
  
 Les permissions se définissent sur trois niveaux : Les permissions se définissent sur trois niveaux :
-  - la **lecture** d'un fichier : cette permission est nécessaire pour pouvoir accéder au contenu d'un fichier (écouter une piste audio, visionner un film, lire un texte, naviguer à l'​intérieur d'un répertoire...). Cette permission est notée ''​r''​ (pour //​**r**ead//,​ lire).+  - la **lecture** d'un fichier : cette permission est nécessaire pour pouvoir accéder au contenu d'un fichier (écouter une piste audio, visionner un film, lire un texte, ​lister le contenu (ls) naviguer à l'​intérieur d'un répertoire...). Cette permission est notée ''​r''​ (pour //​**r**ead//,​ lire).
   - l'​**écriture** dans un fichier : cette permission est nécessaire pour pouvoir apporter des modifications à un fichier (corriger un texte et enregistrer les changements ; effacer les "yeux rouges"​ dans une photo et enregistrer la correction ; ajouter, modifier, renommer ou supprimer un fichier dans un dossier ; etc.). Cette permission est notée ''​w''​ (pour //​**w**rite//,​ écrire).   - l'​**écriture** dans un fichier : cette permission est nécessaire pour pouvoir apporter des modifications à un fichier (corriger un texte et enregistrer les changements ; effacer les "yeux rouges"​ dans une photo et enregistrer la correction ; ajouter, modifier, renommer ou supprimer un fichier dans un dossier ; etc.). Cette permission est notée ''​w''​ (pour //​**w**rite//,​ écrire).
-  - l'​**exécution** d'un fichier : cette permission est nécessaire particulièrement pour les logiciels, afin qu'ils puissent être exécutés. Cette permission est notée ''​x''​ (pour //​e**x**ecute//,​ exécuter).+  - l'​**exécution** d'un fichier : cette permission est nécessaire particulièrement pour les logiciels, afin qu'ils puissent être exécutés. Cette permission est notée ''​x''​ (pour //​e**x**ecute//,​ exécuter). Pour un répertoire,​ la permission "​x"​ permet d'en faire le répertoire courant (cd).
  
 Par exemple, l'​utilisateur ''​toto''​ dispose des droits de lecture et d'​exécution sur le répertoire ''​foo'',​ mais pas la permission d'​écriture sur ce répertoire ; ''​toto''​ peut donc exécuter les programmes présents dans ce répertoire et ouvrir les fichiers qu'il contient, mais ne peut pas les modifier ni en créer de nouveaux. Par exemple, l'​utilisateur ''​toto''​ dispose des droits de lecture et d'​exécution sur le répertoire ''​foo'',​ mais pas la permission d'​écriture sur ce répertoire ; ''​toto''​ peut donc exécuter les programmes présents dans ce répertoire et ouvrir les fichiers qu'il contient, mais ne peut pas les modifier ni en créer de nouveaux.
Ligne 42: Ligne 42:
   * tous les autres utilisateurs disposent ou non de la permission de lecture, d'​écriture et d'​exécution sur un fichier.   * tous les autres utilisateurs disposent ou non de la permission de lecture, d'​écriture et d'​exécution sur un fichier.
  
-Les droits sont affiché ​par une série de 9 caractères, ​associé ​3 par 3 (rwx rwx rwx) définissent les droits des 3 identités (u, g et o).+Les droits sont affichés ​par une série de 9 caractères, ​associés ​3 par 3 (rwx rwx rwx) qui définissent les droits des 3 identités (u, g et o).
  
 <​note>​ <​note>​
Ligne 63: Ligne 63:
 Lorsqu'​un nouveau fichier est créé, celui-ci obtient automatiquement certains paramètres : Lorsqu'​un nouveau fichier est créé, celui-ci obtient automatiquement certains paramètres :
   - **Propriétaires :** Par défaut, le propriétaire d'un nouveau fichier est son créateur et le groupe propriétaire,​ le groupe principal de son créateur. Par exemple, si l'​utilisateur ''​toto'',​ dont le groupe principal est ''​utilisateurs'',​ crée un nouveau fichier ou dossier, celui-ci appartient à ''​toto:​utilisateurs''​ ;   - **Propriétaires :** Par défaut, le propriétaire d'un nouveau fichier est son créateur et le groupe propriétaire,​ le groupe principal de son créateur. Par exemple, si l'​utilisateur ''​toto'',​ dont le groupe principal est ''​utilisateurs'',​ crée un nouveau fichier ou dossier, celui-ci appartient à ''​toto:​utilisateurs''​ ;
-  - **Permissions :** Les permissions accordées par défaut sont celles déterminées par un paramètre particulier appelé le //masque utilisateur//​ (ou //​[[wpfr>​umask|user mask]]//). Dans Ubuntu, le masque utilisateur par défaut accorde les permissions ''​rwxr-xr-x''​ :+  - **Permissions :** Les permissions accordées par défaut sont celles déterminées par un paramètre particulier appelé le //masque utilisateur//​ (ou //​[[wpfr>​umask|user mask]]//). Dans Ubuntu, le masque utilisateur par défaut accorde les permissions ''​rwxr-xr-x'' ​correspondant à un umask = 022 :
     * le propriétaire du fichier dispose des permissions de lecture, d'​écriture et d'​exécution ;     * le propriétaire du fichier dispose des permissions de lecture, d'​écriture et d'​exécution ;
     * le groupe propriétaire dispose des droits de lecture et d'​exécution,​ mais pas d'​écriture ;     * le groupe propriétaire dispose des droits de lecture et d'​exécution,​ mais pas d'​écriture ;
Ligne 70: Ligne 70:
 Le masque utilisateur par défaut peut être modifié pour un autre choix : Le masque utilisateur par défaut peut être modifié pour un autre choix :
   * en console, pour la durée de la session courante. Ceci se fait à l'aide de la commande ''​[[wpfr>​umask]]''​. Tout nouveau fichier ou dossier créé durant la session courante recevra les droits tels que définis par le masque utilisateur,​ mais le masque utilisateur par défaut sera de nouveau utilisé à l'​ouverture d'une nouvelle session utilisateur ;   * en console, pour la durée de la session courante. Ceci se fait à l'aide de la commande ''​[[wpfr>​umask]]''​. Tout nouveau fichier ou dossier créé durant la session courante recevra les droits tels que définis par le masque utilisateur,​ mais le masque utilisateur par défaut sera de nouveau utilisé à l'​ouverture d'une nouvelle session utilisateur ;
-  * de manière permanente pour un ou plusieurs utilisateurs. Le nouveau masque utilisateur se définit en modifiant ​le fichier ​de configuration caché  ​//**.profile**// dans chacun des dossiers personnels des comptes d'​utilisateurs ​pour lesquels le masque utilisateur doit être changé. Ce nouveau masque utilisateur est utilisé même après une nouvelle ouverture de session ​; +  * En ajoutant dans le fichier ​
-  * de manière permanente pour l'​ensemble ​des comptes d'utilisateurs ​du système d'​exploitation. Le nouveau masque utilisateur se définit en modifiant ​le fichier ​de configuration ///​etc/​**profile**/​/. Ce nouveau masque utilisateur est utilisé même après une nouvelle ouverture de session. +<file - /etc/pam.d/common-session>​ session ​   optional ​    ​pam_umask.so umask=007<​/file> 
- +Dans cet exemple, 007 donne tous les droits au propriétaire et au groupe et aucun aux autres. Il peut être utile dans certains cas de mettre 077 pour restreindre les droits au seul propriétaire. Ce nouveau masque utilisateur est utilisé même après une nouvelle ouverture de session. 
-<note help> +  * Une autre solution consiste à ajouter la commande ci-dessous après la création ​des utilisateurs ​dans le fichier ​~/.bashrc
-Sous ubuntu 12.04 umask semble se définir ailleurs : +<file - /root/.bashrc> umask 007</file
-# The default umask is now handled by pam_umask. +Cette dernière modification directement dans le fichier .bashrc de l'​utilisateur est disponible dès le lancement d'un nouveau terminal pour ce qui est de la ligne de commande.
-# See pam_umask(8) and /etc/login.defs. +
-</note+
- +
- +
 ===== Manipuler les droits d'​accès ===== ===== Manipuler les droits d'​accès =====
-Les droits d'​accès précisés sur un fichier ou un dossier peuvent être remplacés par d'​autres droits d'​accès. L'​ensemble des opérations est abordé dans le document annexe « [[:​Permissions]] ». +Les droits d'accès précisés sur un fichier ou un dossier peuvent ​être remplacés par d'autres droits d'accès. L'ensemble des opérations est abordé dans le document annexe « [[permissions]] ».
- +
 ===== Références ===== ===== Références =====
   * [[wpfr>​Permissions Unix]] (fr)   * [[wpfr>​Permissions Unix]] (fr)
   * [[http://​www.debian.org/​doc/​manuals/​debian-reference/​ch01.fr.html#​_filesystem_permissions|Didacticiels GNU/Linux -- 1.2.3. Permissions du système de fichiers]] (fr)   * [[http://​www.debian.org/​doc/​manuals/​debian-reference/​ch01.fr.html#​_filesystem_permissions|Didacticiels GNU/Linux -- 1.2.3. Permissions du système de fichiers]] (fr)
 +  * [[http://​www.debian.org/​doc/​manuals/​securing-debian-howto/​ch4.en.html|Aide Debian - chapitre 4.11.12 Setting users umasks (en)]] 
 +  * [[ACL|ACL]] : Access Control List : Gestion avancée des droits sous linux
 ---- ----
  
-//​Contributeurs : [[utilisateurs:​AlexandreP]],​ [[utilisateurs:​Ner0lph]],​ [[utilisateurs:​Sbrunner]],​[[utilisateurs:​Newbies]]//​+//​Contributeurs : [[utilisateurs:​AlexandreP]],​ [[utilisateurs:​Ner0lph]],​ [[utilisateurs:​Sbrunner]],​[[utilisateurs:​Newbies]], [[utilisateurs:​bcag2]]//
  • droits.1376523478.txt.gz
  • Dernière modification: Le 15/08/2013, 01:37
  • par 94.108.160.208