Gestion des droits sous Linux¶
On peut gérer les droits sous linux au moins de 2 manières.
Soit en toute lettre soit en octal (0 à 7).
Partons de cet exemple:
Modifications des droits en toute lettre¶
- Les premiers caractères (rw) à gauche sont pour l'utilisateur
- Le deuxième groupe (rw) c'est pour le groupe
- Le troisième groupe c'est pour tous les autres utilisateurs
- L'utilisateur est jo
- Le groupe est jo
Pour donner les droits en éxecution à l'utilisateur, on peut faire:
Les options courantes sont:
u+r, u+w, g+r, g+x, ...
-
u pour user
-
g pour group
-
o pour others
Modifications des droits en octal¶
Il est souvent plus rapide et pratique d'attribuer les droits en octal, c'est à dire les droits de 0 à 7.
- 0 pas de droits
- 4 read (lecture)
- 2 right (écriture)
- 1 execute (exécution)
-
Le premier chiffre sera pour l'utilisateur
-
Le deuxième chiffre sera pour le groupe
-
Le troisième chiffre sera pour les autres utilisateurs
Exemple:
Résultat:
-
Ici nous avons donc notre fichier test.txt qui appartient à l'utilisateur jo et groupe jo.
-
L'utilisateur jo a tous les droits, lecture, écriture et exécution (read, right, execute).
-
Le groupe jo a les droits de lecture et écriture (read et execute).
-
Les autres utilisateurs ont les droits de lecture et écriture (read et execute).
Changer le SUID d’un fichier ou répertoire¶
Pour attribuer le SUID à un fichier, on utilise la commande chmod via l’attribut s. Voici la syntaxe à utiliser :
chmod u+s <fichier>
Ainsi pour donner le droit SUID sur le fichier script.sh :
chmod u+s script.sh
Une autre façon de définir l’autorisation SUID sur un fichier, il faut utiliser la commande chmod avec la représentation numérique de l’autorisation. La valeur numérique de SUID est 4.
chmod 4xxx <fichier>
Soit pour attribuer les permissions 755 ainsi que l’attribut SUID au fichier script.sh :
chmod 4755 script.sh
Enfin pour retirer l’attribut SUID, on repasse le bit à 0 comme ceci :
chmod 0755 script.sh
Copié de ce site: https://www.malekal.com/suid-sgid-sticky-bit-linux/