Explication des autorisations de fichiers et de répertoires Linux

Linux est un système d’exploitation multi-utilisateurs, plusieurs utilisateurs peuvent donc interagir avec le même ordinateur en même temps en utilisant Linux. Étant un système d’exploitation multi-utilisateurs, il est important pour Linux de garantir la sécurité et la confidentialité des fichiers appartenant aux différents utilisateurs.

Pour y parvenir, Linux dispose d’un système élaboré pour gérer les autorisations de fichiers et de répertoires. De cette façon, les utilisateurs de Linux peuvent contrôler l’accès aux fichiers par différents utilisateurs et les actions que les utilisateurs peuvent entreprendre lorsqu’ils utilisent l’ordinateur.

En tant qu’utilisateur Linux, il est crucial de comprendre comment Linux gère les autorisations de fichiers et de répertoires et comment vous pouvez utiliser les différentes autorisations disponibles pour sécuriser vos fichiers et garantir le fonctionnement de votre ordinateur. Pour comprendre comment Linux gère les autorisations sur les fichiers et les répertoires, examinons d’abord les différentes catégories d’utilisateurs dans un système d’exploitation Linux.

Catégorie d’utilisateurs sous Linux

La première catégorie d’utilisateurs est propriétaire d’un fichier ou d’un répertoire. Chaque fichier ou répertoire sous Linux a un propriétaire. Ce propriétaire dispose généralement de plus d’autorisations sur son fichier ou répertoire. Le propriétaire d’un fichier est généralement indiqué par la lettre u pour utilisateur.

Sous Linux, plusieurs utilisateurs peuvent être regroupés dans un groupe et recevoir des autorisations sur les fichiers en tant que groupe. Ceux-ci sont appelés propriétaires de groupe et sont représentés par la lettre g.

Par exemple, si vous disposez d’un fichier contenant des recommandations de livres et que vous souhaitez accorder à plusieurs utilisateurs des autorisations similaires sur le fichier, un moyen simple de procéder consiste à placer les utilisateurs dans un groupe et à accorder des autorisations au groupe dans son ensemble.

L’autre catégorie d’utilisateurs est connue sous le nom d’autres et est représentée par la lettre o. Il s’agit d’utilisateurs qui ne sont pas propriétaires du fichier et qui ne font pas non plus partie d’un groupe disposant d’autorisations sur le fichier. Autre représente tous les autres membres du système.

Tous les utilisateurs d’un ordinateur, c’est-à-dire les propriétaires de fichiers, les utilisateurs de groupes et les autres utilisateurs, peuvent le spécifier en utilisant la lettre a.

Créer et ajouter un nouvel utilisateur dans Ubuntu Linux

Voyons comment créer et ajouter un nouvel utilisateur dans Ubuntu Linux. Pour suivre ce tutoriel, veuillez également créer un nouvel utilisateur.

1. Ouvrez Paramètres et dans la barre de menu de gauche, cliquez sur Utilisateur puis cliquez sur Déverrouiller et fournissez votre mot de passe lorsque vous y êtes invité. Vous devez cliquer sur Déverrouiller pour pouvoir ajouter un nouvel utilisateur. Par défaut, cette fonctionnalité est verrouillée.

2. Une fois déverrouillé, vous verrez une option Ajouter un utilisateur, cliquez dessus pour ajouter un nouvel utilisateur

3. Pour créer un nouvel utilisateur, indiquez son nom complet et son nom d’utilisateur, sélectionnez Définir un mot de passe maintenant et définissez son mot de passe. De plus, assurez-vous que le type de compte est défini sur Administrateur, puis cliquez sur Ajouter pour ajouter un utilisateur.

4. Vous devriez voir un nouveau compte utilisateur que vous venez de créer apparaître comme indiqué ci-dessous.

  Comment jouer à Wasteland 2: Director's Cut sur Linux

Autorisations de fichiers et de répertoires Linux

Les autorisations font référence aux règles qui régissent l’accès aux fichiers et répertoires et aux actions qui peuvent être effectuées sur ceux-ci par différents utilisateurs. Linux a trois catégories principales d’autorisations :

  • Read(r) – permet à un utilisateur de visualiser le contenu d’un fichier et de lister le contenu d’un répertoire
  • Write(w) – permet à un utilisateur de modifier le contenu d’un fichier. Avec les répertoires, les autorisations d’écriture permettent à un utilisateur de modifier le contenu d’un répertoire, par exemple en créant, supprimant, renommant ou déplaçant des fichiers et des sous-répertoires dans le répertoire. Cependant, les autorisations d’écriture avec les répertoires ne fonctionnent que si l’utilisateur dispose également des autorisations d’exécution.
  • Exécuter (x) – Les autorisations d’exécution signifient qu’un fichier peut être traité comme un programme pouvant être exécuté. Avec les répertoires, l’autorisation d’exécution permet à un utilisateur d’entrer ou de « cd » dans le répertoire.
  • Les autorisations de lecture, d’écriture et d’exécution sont attribuées aux trois catégories d’utilisateurs disponibles sous Linux.

    Vous pouvez également lire comment supprimer des fichiers et des répertoires sous Linux

    Longue liste sous Linux

    Pour afficher le contenu d’un fichier dans un répertoire Linux, nous exécutons généralement la commande ls. Cependant, cela répertorie uniquement les fichiers et répertoires disponibles et ne fournit aucune information supplémentaire.

    Pour afficher plus d’informations sur les contenus, vous devez utiliser le format de liste longue. Pour ce faire, exécutez la commande ls avec l’indicateur -l. Cela vous donnera les autorisations de fichier, les propriétaires d’un fichier et les propriétaires de groupe d’un fichier, comme indiqué ci-dessous :

    Dans Ubuntu, par défaut, si aucun groupe n’a été créé, le nom du groupe est le même que celui du propriétaire du fichier.

    Pour créer un groupe, nous utilisons la commande addgroup. Pour ajouter un groupe appelé éditeurs, exécutez la commande suivante et fournissez un mot de passe lorsque vous y êtes invité.

    sudo addgroup editors

    sudo nous permet d’exécuter des commandes en tant qu’utilisateur root, qui est un super utilisateur doté de privilèges pour exécuter des modifications qui affectent tous les utilisateurs de l’ordinateur.

    Pour ajouter des utilisateurs à un groupe, nous utilisons la syntaxe suivante :

    adduser <user> <group>

    Par conséquent, pour ajouter Belmont et Madici au groupe des éditeurs, nous exécutons

    sudo adduser belmont editors
    sudo adduser madici editors

    Pour voir les groupes auxquels appartient un utilisateur, exécutez :

    groups <username>

    Le résultat des commandes ci-dessus est affiché ci-dessous :

    Examinons maintenant les attributs de fichier qui nous renseignent sur les types de fichiers et les autorisations sur le fichier. un.

    Attributs de fichier sous Linux

    Sous Linux, les attributs de fichier comportent exactement dix caractères. Le premier caractère indique le type de fichier. Certains des premiers caractères courants représentant différents fichiers incluent :

    • d indique un répertoire
    • – indique un fichier normal, par exemple des fichiers texte
    • c indique un fichier spécial de caractère
    • l indique un lien symbolique
    • b indique un fichier spécial de bloc

    Les neuf caractères restants sont utilisés pour afficher les autorisations du propriétaire, du propriétaire du groupe et des autres utilisateurs. Les neuf personnages sont répartis en groupes de trois. Le premier groupe indique les autorisations du propriétaire, le deuxième groupe indique les autorisations du propriétaire du groupe et les trois derniers indiquent les autorisations des autres, c’est-à-dire de tous les autres utilisateurs de l’ordinateur.

    Les autorisations, pour chaque catégorie, sont indiquées en commençant par l’autorisation de lecture, puis d’écriture et enfin l’autorisation d’exécution. L’autorisation de lecture est indiquée par la lettre r, l’autorisation d’écriture par la lettre w et l’autorisation d’exécution par la lettre x.

      Comment écrire sur plusieurs clés USB à la fois sous Linux avec Gnome MultiWriter

    Le symbole – est utilisé dans le cas où un utilisateur ne dispose pas d’une autorisation particulière. Par exemple, rw- pour le propriétaire du groupe signifie qu’il dispose à la fois des autorisations de lecture et d’écriture, mais qu’il n’a pas l’autorisation d’exécution sur ce répertoire (d).

    Modification des autorisations de fichiers à l’aide de la notation symbolique

    Pour modifier les autorisations sur un fichier ou un répertoire, nous utilisons la commande chmod et spécifions pour qui nous modifions les autorisations.

    Il peut s’agir du propriétaire du fichier représenté par la lettre u pour l’utilisateur, du propriétaire du groupe représenté par la lettre g, ou d’autres utilisateurs représentés par la lettre o. Nous pouvons également cibler les trois catégories d’utilisateurs en utilisant la lettre a, qui signifie tout ce qui précède.

    La prochaine chose que nous précisons est le changement que nous apportons. Pour ajouter une autorisation, nous utilisons +(signe plus). Pour supprimer une autorisation, nous utilisons – (signe moins). La dernière chose que nous fournissons sont les autorisations que nous ajoutons en utilisant r, w ou x pour représenter les trois autorisations disponibles.

    Pour voir cela en action, créez un répertoire appelé livres à l’aide de la commande ci-dessous

    mkdir books

    Entrez, ou ‘cd’ dans le répertoire :

    cd books

    Créez un fichier appelé ReadingList.txt

    touch readingList.txt

    Listez longuement le contenu du répertoire books en exécutant :

    ls -l

    Le résultat est le suivant :

    Le fichier que nous avons créé est un fichier normal, indiqué en premier –, le propriétaire et le propriétaire du groupe ont des autorisations de lecture et d’écriture, tandis que les autres utilisateurs n’ont qu’une autorisation de lecture. Pour accorder à d’autres utilisateurs l’autorisation d’écrire dans le fichier, nous exécutons la commande suivante :

    chmod o+w readingList.txt

    Pour voir si les autorisations des autres utilisateurs ont changé, exécutez

    ls -l

    Sortir:

    Notez que l’autorisation de fichier des autres utilisateurs est passée de r– à rw-, ce qui signifie qu’ils disposent désormais d’une autorisation d’écriture.

    Pour ajouter des autorisations d’exécution au propriétaire (utilisateur) du fichier, exécutez :

    chmod u+x readingList.txt

    Pour supprimer les autorisations d’écriture des propriétaires du groupe, exécutez :

    chmod g-w readingList.txt

    Pour supprimer les autorisations de lecture de tous les utilisateurs afin que personne ne puisse voir le fichier, exécutez :

    chmod a-r readingList.txt

    Pour rajouter l’autorisation de lecture pour le propriétaire du fichier, exécutez :

    chmod u+r readingList.txt

    Pour ajouter des autorisations d’écriture et d’exécution au groupe propriétaire du fichier, exécutez :

    chomod g+wx readingList.txt

    Modification des autorisations à l’aide de la notation octale

    Sous Linux, chacune des trois autorisations disponibles n’a que deux valeurs possibles. L’autorisation de lecture ne peut être que r ou – , l’autorisation d’écriture ne peut être que w ou – et l’autorisation d’exécution ne peut être que x ou –.

    Par conséquent, ces autorisations peuvent être considérées comme activées ou désactivées et, par conséquent, être représentées à l’aide de nombres binaires, qui n’ont que deux valeurs disponibles. C’est 1 pour activé ou vrai et 0 pour désactivé ou faux. Là, une autorisation telle que rw– peut être représentée par 110 en utilisant des nombres binaires.

    Ainsi, pour une catégorie d’utilisateurs donnée, trois nombres binaires suffisent pour présenter toutes leurs autorisations. Par exemple, l’autorisation du propriétaire, du groupe et des autres rwxrw-r– peut être représentée par 111110100 en utilisant un nombre binaire.

      Comment exécuter facilement des applications Web sous Linux

    Cependant, pour éviter d’écrire des nombres binaires, qui sont longs et prêtent à confusion, une meilleure alternative consiste à utiliser des nombres octaux.

    Les nombres octaux ont une base de 8 et n’ont donc que 8 valeurs possibles. Chaque nombre octal correspond à exactement trois chiffres binaires.

    Par conséquent, une autorisation telle que rw- peut être représentée par 110 en binaire. L’équivalent octal de 110 est 6, et donc 6 peut être utilisé pour représenter rw-. Les nombres octaux peuvent être utilisés pour représenter les autorisations de lecture, d’écriture et d’exécution du propriétaire, du groupe et d’autres personnes, comme indiqué ci-dessous :

    Au lieu d’écrire de longs chiffres binaires, il est préférable de représenter les autorisations à l’aide de nombres octaux. Par conséquent, toutes les autorisations du propriétaire, du groupe et des autres personnes sont représentées à l’aide de nombres octaux simples, comme indiqué dans le diagramme ci-dessus.

    L’avantage d’utiliser la notation octale pour définir les autorisations est qu’elle vous permet de définir l’autorisation pour tous vos utilisateurs à la fois, contrairement à la notation symbolique, où vous ne pouvez définir l’autorisation d’un seul utilisateur à la fois.

    Cependant, utiliser la notation octale demande du temps et de la pratique pour pouvoir rappeler la résolution de chaque nombre octal. Cela dit, n’hésitez pas à vous référer au schéma ci-dessus chaque fois que vous utilisez la notation octale. Examinons plusieurs exemples de modification des autorisations à l’aide de la notation octale

    Pour accorder à tous les utilisateurs, c’est-à-dire le propriétaire, le propriétaire du groupe et les autres utilisateurs, l’autorisation de lecture, d’écriture et d’exécution sur ReadingList.txt, exécutez :

    chmod 777 readingList.txt

    Pour vérifier si les autorisations ont été modifiées, exécutez :

    ls -l

    Sortir:

    total 0
    -rwxrwxrwx 1 madici madici 0 Sep  6 05:45 readingList.txt

    Notez que désormais le propriétaire, le groupe et les autres utilisateurs sont autorisés à lire, écrire et exécuter ReadingList.txt.

    Pour supprimer les autorisations d’écriture du propriétaire du groupe et des autres, exécutez :

    chmod 755 readingList.txt

    Pour supprimer l’autorisation d’exécution du propriétaire et des autres exécutions :

    chmod 654 readingList.txt

    Autorisations spéciales sous Linux

    Linux dispose de trois autorisations spéciales qui peuvent être appliquées aux fichiers et répertoires en plus des autorisations standard de lecture, d’écriture et d’exécution. Ces autorisations fournissent des fonctionnalités avancées de contrôle d’accès et permettent aux utilisateurs disposant de moins de privilèges d’exécuter des fichiers et des commandes avec des privilèges plus élevés, tout comme le propriétaire du fichier ou le propriétaire du groupe.

    Les autorisations spéciales incluent :

    • Définir l’ID utilisateur (SUID) – l’autorisation SUID permet à un utilisateur d’exécuter un fichier ou un programme avec les privilèges du propriétaire du, et non ceux de l’utilisateur qui l’exécute. Ceci est utile lorsque les utilisateurs standard doivent effectuer des tâches nécessitant des privilèges élevés.
    • Définir l’ID de groupe (SGID) – l’autorisation SGID permet à un utilisateur d’exécuter un fichier avec les autorisations du propriétaire du groupe du fichier, plutôt que les autorisations de son groupe réel.
    • Sticky Bit – Le sticky bit est une autorisation généralement définie sur les répertoires pour garantir que les fichiers du répertoire ne peuvent être supprimés que par le propriétaire réel du répertoire, le propriétaire de ce fichier particulier ou l’utilisateur root.

    Les trois autorisations spéciales peuvent être utilisées parallèlement aux autorisations standard : lecture, écriture et exécution.

    Conclusion

    Les autorisations sont un concept important sous Linux, même si votre ordinateur n’a pas plusieurs utilisateurs. Comprendre l’autorisation est important pour garantir le contrôle, la sécurité et la confidentialité des données stockées dans un système Linux et de ses fonctionnalités. Pensez donc à vous familiariser avec les autorisations en mettant en pratique ce que vous avez appris sur les autorisations dans cet article.

    Vous pouvez également découvrir comment utiliser les commandes Linux sous Windows.