GNU/Linux >> Tutoriels Linux >  >> Linux

Qu'est-ce que Sticky Bit, SUID et SGID sous Linux

Dans le système de fichiers Linux, tous les fichiers ont 3 autorisations spéciales utilisées à des fins différentes. Dans ce tutoriel, nous parlerons de Sticky bit , SUID, et SGID autorisations de fichiers dans les systèmes de fichiers Linux.

Qu'est-ce que Sticky Bit ?

Le sticky bit est utilisé pour indiquer des autorisations spéciales pour les fichiers et les répertoires. Si un répertoire avec sticky bit activé limitera la suppression du fichier qu'il contient.

Tout fichier a le sticky bit défini, peut être supprimé par son propriétaire, la racine, ou qui doit y écrire. Ceci est utile pour les répertoires partagés ou accessibles publiquement comme /tmp .

Comment définir le sticky bit sur un fichier du système de fichiers Linux.

Méthode 1 :

chmod +t file1.txt 

##View the file permissions 
ls -l file1.txt 
-rw-r--r-T 1 root root 0 Mar  8 02:06 file1.txt

Méthode 2 :

chmod 1777 file1.txt

##View the file permissions 
ls -l file1.txt 
-rwxrwxrwt 1 root root 0 Mar  8 02:06 file1.txt

La sortie ci-dessus montre que le sticky bit est défini avec le caractère t ou T dans les autorisations déposées. Le t minuscule représente que l'autorisation d'exécution est également activée et T en majuscule représentent que l'autorisation d'exécution n'est pas définie.

Qu'est-ce que SUID (setuid) ?

Si le bit SUID est défini sur un fichier et qu'un utilisateur l'a exécuté. Le processus aura les mêmes droits que le propriétaire du fichier en cours d'exécution.

Par exemple :passwd commande ont le bit SUID activé. Lorsqu'un utilisateur normal change son mot de passe, ce script met à jour quelques fichiers système comme /etc/passwd et /etc/shadow qui ne peut pas être mis à jour par un compte non root. Pour que passwd le processus de commande s'exécute toujours avec les droits d'utilisateur root.

Voici l'implémentation de SUID sur fichier sous le système Linux.

Méthode 1 :

chmod u+s file2.txt 

##View the file permissions 
ls -l file2.txt 
-rwsr-xr-x 1 root root 0 Mar  8 02:06 file2.txt

Méthode 2 :

chmod 4655 tecadmin.txt 

##View the file permissions  
ls -l tecadmin.txt 
-rwSr-xr-x 1 root root 0 Mar  8 02:06 tecadmin.txt

Qu'est-ce que le SGID (setgid) ?

Identique à SUID, le processus aura les mêmes droits de groupe que le fichier en cours d'exécution. Si le bit SGID est défini sur n'importe quel répertoire, tous les sous-répertoires et fichiers créés à l'intérieur obtiendront la même propriété de groupe que le répertoire principal, peu importe qui le crée.

Comment définir le SGID sur un répertoire du système Linux.

chmod g+s /test 

##View the file permissions 
ls -ld /test 
drwxrwsrwx 2 root root 4096 Mar  8 03:12 /test

Passez maintenant à un autre utilisateur et créez un fichier dans /test répertoire.

su - tecadmin 
cd /test/ 
touch file3.txt 

Next check the group ownership of the newly created file. It must be same as the /test directory group owner. 

ls -l file3.txt 

-rw-rw-r-- 1 tecadmin root 0 Mar  8 03:13 file3.txt

Oui, c'est pareil. Le file3.txt est créé avec la propriété du groupe racine.

Merci d'avoir lu cet article, j'espère qu'il vous aidera à comprendre le sticky bit, SUID et SGID sous Linux.


Linux
  1. UNIX / Linux :Comment utiliser Sticky Bit sur un répertoire et un fichier

  2. Qu'est-ce que SUID, SGID et Sticky bit ?

  3. Questions d'entretien Linux - Autorisations spéciales (SUID, SGID et sticky bit)

  4. Qu'est-ce que les liens souples et les liens durs dans le système de fichiers Linux

  5. Une commande pour créer un répertoire et un fichier à l'intérieur de celui-ci commande linux

Commande de fichier Linux :que fait-elle et comment l'utiliser

Qu'est-ce qu'umask sous Linux ?

Comment travailler avec des liens durs et des liens souples sous Linux

Qu'est-ce que NFS et comment l'installer sous Linux

Autorisations de fichiers spéciales sous Linux :SUID, GUID et Sticky Bit

Qu'est-ce qu'un fichier .bashrc sous Linux ?