chmod :changer les bits du mode fichier
Utilisation (mode octal) :
chmod <octal-mode> files...
Utilisation (mode symbolique) :
chmod <references><operator><modes> files..
references est une combinaison des lettres ugoa , qui précisent quel utilisateur a accès au files sera modifié :
ul'utilisateur qui en est propriétairegautres utilisateurs dans lefiledu groupeoautres utilisateurs ne faisant pas partie du groupe du fichier-
atous les utilisateursS'il est omis, il s'agit par défaut de tous les utilisateurs, mais uniquement des autorisations autorisées par le
umasksont modifiés.operatorest l'un des caractères+-=:+ajouter les bits de mode fichier spécifiés aux bits de mode fichier existants de chaquefile-supprime les bits de mode fichier spécifiés des bits de mode fichier existants de chaquefile=ajoute les bits spécifiés et supprime les bits non spécifiés, sauf lesetuidetsetgidbits définis pour les répertoires, sauf indication contraire.
modese compose d'une combinaison des lettresrwxXst, qui spécifient quel bit de permission doit être modifié :rlirewécrirexexécuter (ou rechercher des répertoires)Xexécuter/rechercher uniquement si le fichier est un répertoire ou si le bit d'exécution est déjà défini pour un utilisateurssetuid ou setgid (selon lereferencesspécifié )tindicateur de suppression restreinte ou sticky bit
Alternativement, le
modepeut être composé d'une des lettresugo, auquel cas le mode correspond aux permissions actuellement accordées au propriétaire (u), membre dufiledu groupe (g) ou les autorisations des utilisateurs dans aucune des catégories précédentes (o).
Les différents morceaux de chmod expliqué :
- Contrôle d'accès (voir aussi
setfacl)rwx— autorisations de lecture (r), d'écriture (w) et d'exécution/croisement (x).- Lire (r) détermine si un fichier peut être lu ou si un répertoire peut être répertorié.
- Write (w) détermine si un fichier peut être écrit ou si un répertoire peut être modifié (fichiers ajoutés, supprimés, renommés).
- Exécuter (x) affecte si un fichier peut être exécuté, à utiliser pour les scripts (voir
#!), et d'autres fichiers exécutables. - Croix (x) détermine si un répertoire peut être traversé.
sett— sticky bit (t), et setgid (s) sur les répertoires- Le sticky bit n'affecte que les répertoires. Empêchera quiconque, sauf le propriétaire du fichier et root, de supprimer des fichiers dans le répertoire.
- le bit setgid sur les répertoires fera que le groupe sera défini sur le même groupe pour les nouveaux fichiers et répertoires, et que le bit setgid sera défini pour les nouveaux répertoires (voir aussi les valeurs par défaut dans setfacl).
s— setuid, setgid, sur les fichiers exécutables.- Cela peut nuire à la sécurité si vous ne savez pas ce que vous faites.
- Lorsqu'un exécutable est exécuté, si l'un de ces bits est défini, alors l'utilisateur/groupe effectif de l'exécutable deviendra celui du fichier. Ainsi, le programme s'exécute sous cet utilisateur. voir
setcappour une manière plus moderne de le faire.
chown chgrp :
chattr :modifier les attributs du fichier
Utilisation :
chattr <operator><attribute> files...
operator est l'un des caractères +-= :* + ajoute les attributs sélectionnés pour être au attributes existant du files * - supprime le attributes sélectionné * = écrase l'ensemble actuel d'attributs des fichiers avec le attributes spécifié .
attribute est une combinaison des lettres acdeijstuADST , auxquels correspondent les attributs :
aajouter uniquementccompressédpas de vidageeformat d'étendueiimmuablejjournalisation des donnéesssuppression sécuriséetpas de fusion de queueuineffaçableAnonatimemises à jourDmises à jour synchrones des répertoiresSmises à jour synchronesThaut de la hiérarchie des répertoires
setfattr :modifier les attributs de fichier étendus
Utilisation (attribut défini) :
setfattr -n <name> -v <value> files...
Utilisation (supprimer) :
setfattr -x <name> files...
name est le nom de l'attribut étendu à définir ou supprimer
value est la nouvelle valeur de l'attribut étendu
setfacl :modifier les listes de contrôle d'accès aux fichiers
Utilisation :
setfacl <option> [default:][<target>:][<param>][:<perms>] files...
option doit inclure l'un des éléments suivants :
--setdéfinir l'ACL d'un fichier ou d'un répertoire, en remplaçant l'ACL précédente-m|--modifymodifier l'ACL d'un fichier ou d'un répertoire-
-x|--removesupprimer les entrées ACL d'un fichier ou d'un répertoiretargetest l'une des lettresugmo(ou la forme plus longue illustrée ci-dessous) : -
u,usersautorisation d'un utilisateur nommé identifié parparam, par défaut le propriétaire du fichieruidsi omis g,groupautorisation d'un groupe nommé identifié parparam, par défaut le groupe propriétaireuidsi omism,maskmasque de droits effectifs-
o,otherautorisations des autrespermsest une combinaison des lettresrwxX, qui correspondent aux autorisations : -
rlire wécrirexexécuter-
Xexécuter uniquement si le fichier est un répertoire ou a déjà l'autorisation d'exécution pour certains utilisateursSinon,
permspeut être un chiffre octal (0-7) indiquant l'ensemble des autorisations.
setcap :modifier les capacités du fichier
Utilisation :
setcap <capability-clause> file
Un capability-clause se compose d'une liste de noms de capacité séparés par des virgules suivie d'une liste de paires opérateur-drapeau.
Les opérateurs disponibles sont = , + et - . Les drapeaux disponibles sont e , i et p qui correspondent à l'Effective , héritable et Autorisé ensembles de capacités.
Le = l'opérateur augmentera les ensembles de capacités spécifiés et réinitialisera les autres. Si aucun drapeau n'est donné en conjonction avec le = opérateur, tous les ensembles de capacités seront réinitialisés. Le + et - les opérateurs augmenteront ou diminueront respectivement le ou les ensembles de capacités spécifiés.
chcon :modifier le contexte de sécurité du fichier SELinux
Utilisation :
chcon [-u <user>] [-r <role>] [-t <type>] files...
utilisateur est l'utilisateur SELinux, tel que user_u , system_u ou root .
rôle est le rôle SELinux (toujours object_r pour les fichiers)
type est le type de sujet SELinux
chsmack :modifier les attributs étendus SMACK
Utilisation :
chsmack -a <value> file
value est le libellé SMACK à définir pour le SMACK64 attribut de fichier étendu
setrichacl :modifier la liste de contrôle d'accès enrichie.
richacls est une fonctionnalité qui ajoutera des ACL plus avancées.
Actuellement un travail en cours, donc je ne peux pas vous en dire beaucoup à leur sujet. Je ne les ai pas utilisés.
Voir aussi cette question Existe-t-il des ACL de système de fichiers plus avancées au-delà des traditionnelles ACL 'rwx' et POSIX ? et la page de manuel