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 10/06/2018, 10:47]
176.142.23.79 [Droits d'accès sous Linux : gérer les accès aux fichiers]
droits [Le 04/04/2025, 20:09] (Version actuelle)
krodelabestiole [Propriétaires par défaut]
Ligne 1: Ligne 1:
 {{tag>​portail administration sécurité}} {{tag>​portail administration sécurité}}
- 
----- 
  
 ====== 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]],​ [[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.+<​note>​Voir aussi //​[[:​permissions]]//,​ //​[[:​ACL]]//​.</​note>​
  
-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 systèmes ​d'exploitation inspirés ​d'[[wpfr>​UNIX]] ​(dont Linux fait partie) possèdent ​la capacité ​de définir ​de façon ​poussée ​les [[:​permissions]] ​d'accès aux divers ​fichiers et répertoires de votre ordinateur.
  
-  ​* 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. +Ces **droits d'​accès** définissent la possession d'un fichier ou d'un répertoire à 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 ou répertoire. 
-  * La manipulation des droits d'​accès des fichiers et dossiers est abordée dans l'​article ​« [[:​Permissions]] ​».+ 
 +  ​* Le présent article est un document d'​explication à propos des droits d'​accès. Les sections ​//[[#Les propriétaires]]// et //[[#Les permissions]]// présentent de façon générale ce que sont ces attributs auxquels vous devrez faire face dans votre vie linuxienne. 
 +  * La manipulation des droits d'​accès des fichiers et dossiers est abordée dans l'​article ​//[[:​Permissions]]//.
  
 ===== Les propriétaires ===== ===== Les propriétaires =====
 +
 Par la propriété d'un fichier, on désigne à quel utilisateur appartient le fichier, qui le possède. À partir de cette possession (ou non), il sera ensuite possible de définir des permissions d'​accès sur le fichier. Par la propriété d'un fichier, on désigne à quel utilisateur appartient le fichier, qui le possède. À partir de cette possession (ou non), il sera ensuite possible de définir des permissions d'​accès sur le fichier.
  
 La possession d'un fichier se définit sur trois catégories : La possession d'un fichier se définit sur trois catégories :
-  - l'**__u__tilisateur ​propriétaire** du fichier ​**(__u__)**. Il s'agit généralement du créateur du fichier. (Prenez note qu'un fichier créé par une commande exécutée à l'aide de ''​[[sudo]]''​ appartiendra à l'​utilisateur ​//root// ; vous serez potentiellement amené à devoir changer le propriétaire de ce fichier pour pouvoir vous en servir avec votre propre compte utilisateur.) +  - l'**//​U//​tilisateur ​propriétaire** du fichier (''​u''​). Il s'agit généralement du créateur du fichier. (Prenez note qu'un fichier créé par une commande exécutée à l'aide de ''​[[:sudo]]'' ​sans paramètre ​appartiendra ​par défaut ​à l'​utilisateur ​''​root'' ​; vous serez potentiellement amené à devoir changer le propriétaire de ce fichier pour pouvoir vous en servir avec votre propre compte utilisateur.) 
-  - le **__g__roupe ​propriétaire** du fichier ​**(__g__)**. Si un utilisateur est membre d'un certain groupe qui possède la propriété d'un fichier, l'​utilisateur aura aussi certaines permissions particulières sur ce fichier. +  - le **//​G//​roupe ​propriétaire** du fichier (''​g''​). Si un utilisateur est membre d'un certain groupe qui possède la propriété d'un fichier, l'​utilisateur aura aussi certaines permissions particulières sur ce 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.+  - 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 [[:​users-admin|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>​
  
 +===== Les permissions =====
  
 +Les permissions désignent ce que les diverses catégories d'​utilisateurs (//​utilisateur//​ propriétaire d'un fichier, membres du //groupe// propriétaire d'un fichier et le reste du monde) ont l'​autorisation d'​effectuer sur un fichier donné. Par exemple, une catégorie d'​utilisateurs peut avoir accès en lecture et écriture à un fichier, alors qu'une autre catégorie a accès en lecture seulement à ce même fichier.
  
-===== Les permissions ===== +Pour chaque fichier ou répertoire,​ chacune de ces trois catégories d'​utilisateurs (utilisateur ​propriétaire,​ membres du groupe propriétaire et reste du monde) ​sont définies les trois permissions lectureécritures ​et exécutions :
-Les permissions désignent ce que les diverses ​catégories d'​utilisateurs (propriétaire ​d'un fichier, membres du groupe propriétaire ​d'un fichier ​et le reste du monde) ​ont l'​autorisation d'​effectuer sur un fichier donné. Par exempleune catégorie d'​utilisateurs peut avoir accès en lecture ​et écriture à un fichier, alors qu'une autre catégorie a accès en lecture seulement à ce même fichier.+
  
-Les permissions se définissent sur trois niveaux : +  ​L'**utilisateur** propriétaire dispose ou non de la permission ​de lecture, ​d'écriture et d'exécution
-  ​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)+  - Les membres du **groupe** propriétaire disposent ou non de la permission ​de lectured'écriture et d'exécution
-  - 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 ; ajoutermodifier, renommer ou supprimer un fichier dans un dossier ; etc.). Cette permission est notée ​''​w''​ (pour //​**w**rite//,​ écrire)+  - Tous les **autres** utilisateurs disposent ou non de la permission ​de lecture, ​d'écriture et d'​exécution.
-  - 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.+Pour chacun :
  
-Pour chacune des trois catégories d'utilisateurs ​(propriétairemembres du groupe propriétaire et reste du mondesont définies ces trois permissions ​+  - la **lecture** - cette permission est notée ''​r'​' (pour //​**r**ead//​lire) :\\ 
-  le propriétaire dispose ou non de la permission de lecture, d'​écriture ​et d'exécution ​sur un fichier ; +    sur un **fichier** : cette permission ​est nécessaire pour pouvoir accéder au contenu du fichier (écouter une piste audio, visionner un film, lire un texte, etc.). 
-  le membre du groupe propriétaire dispose ou non de la permission de lecture, ​d'écriture et d'​exécution sur un fichier ​+    * sur un **répertoire** : permet ​de lister le contenu du répertoire (''​[[man>​ls]]''​)mais pas d'y accéder (voir //​exécution//​ ci-dessous). 
-  ​tous les autres utilisateurs disposent ou non de la permission de lecture, d'écriture ​et d'exécution ​sur un fichier.+  - l'**écriture** - cette permission est notée ​''​w''​ (pour //​**w**rite//,​ écrire) :\\ 
 +    * sur un **fichier** : cette permission est nécessaire pour pouvoir apporter des modifications au 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.). ​ 
 +    sur un **répertoire** : permet ​de modifier le contenu ​d'un répertoire (à condition ​d'avoir aussi le droit en //exécution//, voir ci-dessous),​ d'y créer, modifier ou supprimer des fichiers ou sous-répertoires. 
 +  - l'​**exécution** - cette permission est notée ''​x''​ (pour //​e**x**ecute//,​ exécuter) :\\ 
 +    * sur un **fichier** : cette permission est nécessaire particulièrement pour les [[:​tutoriel:​script_shell|scripts]] et les applications,​ afin qu'​elles puissent être lancées. 
 +    * sur un **répertoire** : la permission ​''​x''​ permet ​de l'utiliser en tant que tel - y accéder (commande ''​[[man>​cd]]''​),​ utiliser les fichiers ​et sous-répertoires qu'il contient (au delà de la simple liste accessible par le droit en //​lecture// ​sur le répertoire).
  
-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).+Ces droits sont affichés ​par une série de 9 caractères, ​associés ​3 par 3 (''​rwx''​ ''​rwx''​ ''​rwx'',​ ou ''​rwxrwxrwx''​qui définissent les droits des 3 identités (''​u''​''​g'' ​et ''​o''​). Le caractère ''​-''​ signifie que le droit est absent.\\ 
 +Plus proche du langage machine et plus rapide à écrire, on les trouve aussi la plupart du temps rédigés [[:​permissions#​en octal]], par un nombre allant de ''​000''​ à ''​777''​. C'est une représentation plus directe des //bits// qui stockent cette information. Voir le chapitre dédié sur la page //​[[:​permissions#​en_octal|Permissions]]//​. 
 + 
 +Par exemple, si on dispose des droits de lecture et d'​exécution sur un répertoire,​ mais pas d'​écriture (''​r-x''​ / ''​5''​),​ on peut y exécuter les scripts qu'il contient et ouvrir ses fichiers, mais on ne peut pas les modifier, les renommer, ni en créer de nouveaux.
  
 <​note>​ <​note>​
-**Les répertoires : un cas particulier** ​\\ +**Les répertoires : un cas particulier**  
-Les répertoires sont un cas particulier. ​Pour accéder au contenu d'un répertoire (pour ouvrir un fichier ou se déplacer dans un sous-répertoire),​ un utilisateur doit disposer de la permission d'//​exécution//​ (''​x''​) sur ce répertoire. De plus, pour être en mesure de lister le contenu d'un répertoire,​ l'​utilisateur doit avoir la permission de //lecture// (''​r''​) sur ce répertoire. Pour écrire dans le répertoire,​ la permission d'//​écriture//​ (''​w''​) doit être accordée. L'​utilisateur peut disposer de ces permissions selon qu'il est propriétaire du répertoire,​ membre du groupe propriétaire du répertoire ou faire partie du reste du monde.+ 
 +  * Pour accéder au contenu d'un répertoire (pour ouvrir un fichier ou se déplacer dans un sous-répertoire),​ un utilisateur doit disposer de la permission d'//​exécution//​ (''​x''​) sur ce répertoire. 
 +  * De plus, pour être en mesure de lister le contenu d'un répertoire,​ l'​utilisateur doit avoir la permission de //lecture// (''​r''​) sur ce répertoire. 
 +  * Pour écrire dans le répertoire,​ la permission d'//​écriture//​ (''​w''​) doit être accordée. 
 + 
 +L'​utilisateur peut disposer de ces permissions selon qu'il est propriétaire du répertoire,​ membre du groupe propriétaire du répertoire ou faire partie du reste du monde. 
   * Un utilisateur ne disposant ni des permissions de lecture ni d'​exécution ne pourra aucunement accéder au contenu du répertoire.   * Un utilisateur ne disposant ni des permissions de lecture ni d'​exécution ne pourra aucunement accéder au contenu du répertoire.
   * Un utilisateur ne disposant que de la permission de lecture pourra //lister// le contenu du dossier. (Par exemple, avec la commande ''​ls''​ dans une fenêtre de terminal.) Il ne pourra pas accéder au dossier avec son navigateur de fichiers.   * Un utilisateur ne disposant que de la permission de lecture pourra //lister// le contenu du dossier. (Par exemple, avec la commande ''​ls''​ dans une fenêtre de terminal.) Il ne pourra pas accéder au dossier avec son navigateur de fichiers.
Ligne 53: Ligne 67:
 </​note>​ </​note>​
  
-<note tip>​**Comment sont déterminées les droits d'​accès sur un volume ?**+===== Droits attribués automatiquement aux fichiers et répertoires =====
  
-//​**Systèmes de fichiers compatibles avec la norme POSIX :**// Par défaut, ​un nouveau ​système de fichiers ​est automatiquement ​attribué à l'​utilisateur ''​root''​ et au groupe d'​utilisateurs ''​root''​ et les droits qui y sont appliqués sont ceux du masque utilisateur par défaut //(voir ci-dessous)//​Pour modifier les droits d'​accès liés à un système de fichiers, vous devez modifier les droits d'​accès de son point de montage. Par exemple, pour modifier les droits d'​accès d'un volume ''/​dev/​sdb1''​ monté dans le dossier ///​media/​NouvellePartition/​ //, vous devez effectuer les modifications de droits sur le dossier ///​media/​NouvellePartition/​ //comme s'il s'​agissait d'un dossier quelconque. Les modifications de droits d'​accès sont conservés même après le démontage ​du système ​de fichiers. Ceci s'​applique uniquement aux systèmes de fichiers ext2, ext3, ext4, ReiserFS, Reiser4, HFS, HFS+ et autres compatibles avec la norme POSIX.+Lorsqu'​un nouveau ​fichier ​est créé, celui-ci obtient ​automatiquement ​certaines permissionsOn peut si besoin ajuster ce comportement ​du système.
  
-//​**Systèmes de fichiers incompatibles avec la norme POSIX :**// Ceci concerne essentiellement les systèmes de fichiers FAT, vFAT et NTFS. Ces systèmes de fichiers ne gèrent pas les droits d'​accès selon la norme POSIX. Ces droits sont émulés ​par leur pilote spécifique au montage du système de fichiers et ils ne sont pas modifiables tout le temps que celui-ci est monté. Les propriétés et permissions sont déterminées par les options de montage passées à la commande ''​mount''​. Pour modifier les droits d'​accès d'un tel système de fichiers, il faut procéder au démontage du système de fichiers, puis à son remontage avec des options différentes. +==== Propriétaires ​par défaut ====
-</​note>​+
  
-===== Droits attribués automatiquement à un fichier ===== +Par défaut, ​l'​utilisateur ​propriétaire d'un nouveau fichier ​ou répertoire ​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''​.
-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'' ​+
-  - **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 groupe propriétaire dispose des droits de lecture et d'​exécution,​ mais pas d'​écriture ; +
-    * le reste du monde dispose des droits de lecture et d'​exécution,​ mais pas d'​écriture.+
  
-Le masque ​utilisateur par défaut peut être modifié ​pour un autre choix +=== Setgid === 
-  * 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 ajoutant dans le fichier :  +On peut changer ce comportement pour un répertoire en particulier,​ en positionnant son bit [[wpfr>​Setuid|Setgid]]. 
-<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. +  
-  * Une autre solution consiste à ajouter ​dans le fichier ​ +Plus généralement,​ les bits [[wpfr>​Setuid]] et [[wpfr>​Setuid|Setgid]] positionnés sur un fichier exécutable permettent de l'​exécuter par défaut avec les permissions de ses propriétaires (respectivement ​utilisateur ​et groupe). 
-<file - /​root/​.bashrc> umask 007</​file> ​ou après la création des utilisateurs ​dans le fichier ~/.bashrc. 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.+ 
 +Dans le cas d'un répertoire (dont le droit en "​exécution"​ consiste en fait à le parcourir), le bit [[wpfr>​Setuid|Setgid]] permet justement d'​utiliser le groupe propriétaire //du répertoire//​ comme groupe propriétaire ​par défaut ​des données qui y sont créées, plutôt que le groupe principal de l'​utilisateur courant (qui exécute la commande). 
 + 
 +On positionne un Setgid sur un répertoire grâce à la commande ''​chmod g+s''​ : 
 +  chmod g+s /​chemin/​du/​répertoire 
 + 
 +On peut le supprimer grâce à la commande ''​chmod g-s''​. 
 + 
 +À ce sujet, voir par exemple [[https://​tech.feub.net/​2008/​03/​setuid-setgid-et-sticky-bit/​|cette documentation]]. 
 + 
 +<​note>​Lorsqu'​un sous-répertoire est créé, il hérite lui aussi de la propriété Setgid.</​note>​ 
 + 
 +==== Permissions par défaut ==== 
 + 
 +Les permissions accordées par défaut sont celles déterminées par un paramètre particulier appelé le //masque utilisateur//​ (ou //​[[wpfr>​umask]]//​). Dans Ubuntu, le [[wpfr>​umask]] par défaut est ''​022'',​ ce qui accorde les permissions ''​644''​ (''​%%rw-r--r--%%''​) ​pour les fichiers, et ''​755''​ (''​%%rwxr-xr-x%%''​) pour les répertoires :((Voir par exemple ​un [[https://​www.heuristic42.com/​tools/​unixperms/​|calculateur umask]].)) 
 +  * pour les **fichiers** 
 +    * l'​**utilisateur** propriétaire du fichier dispose des permissions de lecture et d'​écriture,​ mais pas d'​exécution (''​%%rw-%%''​) 
 +    * le **groupe** propriétaire du fichier dispose du droit de lecture seule (''​%%r--%%''​) 
 +    * le reste du monde dispose du droit de lecture seule (''​%%r--%%''​) 
 +  * pour les **répertoires** 
 +    * l'​**utilisateur** propriétaire du répertoire dispose de tous les droits, lecture (voir l'​existence du répertoire),​ écriture (modification du nom ou du contenu), l'​exécution consiste à ouvrir le répertoire pour en parcourir le contenu (''​%%rwx%%''​) 
 +    * le **groupe** propriétaire dispose des droits de lecture et d'​ouverturemais pas de modification (''​%%r-x%%''​) 
 +    * le reste du monde dispose des droits de lecture et d'​ouverture,​ mais pas de modification (''​%%r-x%%''​). 
 + 
 +Le masque utilisateur peut être modifié à différents niveaux : 
 +<​note>​Dans ces exemples, ''​007''​ donne tous les droits aux utilisateurs et groupes propriétaires et aucun aux autres (fichiers ''​660''​ et répertoires ''​770''​). Il peut être utile dans certains cas de mettre ''​077''​ pour restreindre les droits au seul utilisateur propriétaire (''​600''​ et ''​700''​).</​note>​ 
 +  * pour la durée de la **session courante**, en [[:commande shell|ligne de commande]]. Ceci se fait à l'aide de la commande ''​[[man>​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. 
 +  * pour un **utilisateur particulier** en ajoutant ​la commande ci-dessous ​dans son fichier ​''​~/​.bashrc''​ (propre à la console et la ligne de commande) ou ''​~/​.profile''​ (plus généralement) ​:<file - .profile>​umask 007</​file>​ 
 +  * **globalement** (déconseillé),​ définitivement et pour tous utilisateurs par défaut : 
 +    * en ajoutant la ligne suivante dans le fichier ''​/etc/pam.d/common-session''​ :<file - common-session>​session ​   optional ​    ​pam_umask.so umask=007</​file>​ 
 +    * ou pour tout le système ​dans le fichier en ajoutant avec les [[:sudo|droits ​d'​administration]] la ligne suivante ​dans le fichier ​''/​etc/​profile''​ : <file - profile>umask 007</​file>​Ces nouveaux masque ​utilisateurs ​sont utilisés même après une nouvelle ouverture ​de session.
  
 ===== 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é sur la page //​[[:​Permissions]]//​.
 +
 +===== Volumes de stockage et systèmes de fichier =====
 +
 +Comment sont déterminées les droits d'​accès sur un volume ?
 +
 +==== Systèmes de fichiers compatibles avec la norme POSIX ====
 +
 +Par défaut, un nouveau système de fichiers est automatiquement attribué à l'​utilisateur ''​root''​ et au groupe d'​utilisateurs ''​root''​ et les droits qui y sont appliqués sont ceux du masque utilisateur par défaut (voir ci-dessous).
 +
 +Pour modifier les droits d'​accès liés à un système de fichiers, vous devez modifier les droits d'​accès de son point de montage. Par exemple, pour modifier les droits d'​accès d'un volume ''/​dev/​sdb1''​ monté dans le dossier ''/​media/​NouvellePartition/'',​ vous devez effectuer les modifications de droits sur le dossier ''/​media/​NouvellePartition/''​ comme s'il s'​agissait d'un dossier quelconque. Les modifications de droits d'​accès sont conservés même après le démontage du système de fichiers.
 +
 +Ceci s'​applique uniquement aux systèmes de fichiers [[wpfr>​ext2]],​ [[wpfr>​ext3]],​ [[:ext4]], [[wpfr>​ReiserFS]],​ Reiser4, [[wpfr>​HFS]],​ HFS+ et autres compatibles avec la norme [[wpfr>​POSIX]].
 +
 +==== Systèmes de fichiers incompatibles avec la norme POSIX ====
 +
 +Ceci concerne essentiellement les systèmes de fichiers FAT ([[wpfr>​FAT32]],​ [[:​exFAT]]),​ vFAT et [[wpfr>​NTFS]]. Ces systèmes de fichiers ne gèrent pas les droits d'​accès selon la norme [[wpfr>​POSIX]].
 +
 +Ces droits sont émulés par leur pilote spécifique au montage du système de fichiers et ils ne sont pas modifiables tout le temps que celui-ci est monté. Les propriétés et permissions sont déterminées par les options de montage passées à la commande ''​mount''​.
 +
 +Pour modifier les droits d'​accès d'un tel système de fichiers, il faut procéder au démontage du système de fichiers, puis à son remontage avec des options différentes.
 +
 +===== Voir aussi =====
  
-===== 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)]]   * [[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   * [[ACL|ACL]] : Access Control List : Gestion avancée des droits sous linux
 +
 ---- ----
  
-//​Contributeurs : [[utilisateurs:​AlexandreP]],​ [[utilisateurs:​Ner0lph]],​ [[utilisateurs:​Sbrunner]],​[[utilisateurs:​Newbies]],​ [[utilisateurs:​bcag2]]//​+//​Contributeurs : [[:utilisateurs:​AlexandreP]],​ [[:utilisateurs:​Ner0lph]],​ [[:utilisateurs:​Sbrunner]],​[[:utilisateurs:​Newbies]],​ [[:utilisateurs:​bcag2]], [[:​utilisateurs:​krodelabestiole]]//
  • droits.1528620440.txt.gz
  • Dernière modification: Le 10/06/2018, 10:47
  • par 176.142.23.79