Le droit selon Linux

Source : http://izaak.jellinek.com/tuxes/

L’une des raisons qui fait que les virus sous Linux n’existe pas vient du fait que la gestion des droits d’accès est très stricte et qu’un virus ne peut détruire les fichiers de votre OS comme cela a déjà dut vous arriver sous Windows

Alors voila comment ça ce passe sous Nux !

Les droits d’accès ?

Les droits d’accès d’un fichier sont les autorisations présente sur les fichiers et dossiers qui permet à votre OS de savoir si la personne voulant lire, modifier ou exécuter un fichier a les droits pour le faire. Ces droits d’accès sont fait pour chaque fichiers et dossiers de votre disque dur en définissant trois types de propriétaires.
Cette divisons en trois types de propriétaires est parfois la raison expliquant qu’un programme bug. En effet parfois le programme n’a pas les autorisations nécessaire et ne peut écrire ou exécuter des fichiers essentiels. Imaginé un serveur de jeu qui ne peut pas écrire le fichier qui gère la liste des bannis ^^ ça serait gênant.


Les trois types de propriétaires

Lors de la création d’un fichier, votre système d’exploitation génère ses droits d’accès en héritant des droits du dossier dans lequel on se trouve.
Il y a le propriétaire du fichier (que nous noterons u pour user), c’est à lui qu’appartient le fichier. Lorsque vous créez un fichier et que vous êtes l’utilisateur root c’est alors lui le propriétaire du fichier ce qui peut causer des problèmes par la suite.
Vient ensuite le groupe propriétaire (noté g pour group) qui permet d’assigner des droits à plusieurs utilisateurs appartenant au même groupe. Lorsque vous créez un fichier, c’est le groupe de l’utilisateur qui est prit. Si vous êtes en super_utilisateur (root) ce sera le groupe root qui sera associé au fichier.
Pour finir il y a les autres (noté o comme other) qui sont les utilisateurs ni dans le groupe ni propriétaire du fichier.

Maintenant que vous savez les trois types de propriétaires on va voir les deux commandes qui permettent de les changer.

Changer les propriétaires : chown
Pour changer le propriétaire du fichier, on utilise la commande avec cette syntaxe : chown nouvel_utilisateur nom_du_fichier

Si l’utilisateur avec qui vous exécutez la commande n’est pas le propriétaire du fichier, vous devrez utiliser sudo avant pour être administrateur mais nous reviendrons sur cette commande plus bas.


Changer le groupe des propriétaires : chgrp
De la même manière voilà la commande :
chgrp nouveau_groupe_utilisateur nom_du_fichier

Si l’utilisateur qui exécute la commande n’est pas le propriétaire du fichier, vous devrez utiliser sudo avant la commande chgrp.


Les permissions

Les permissions on été cité plus, il s’agit de l’action lire, écrire et exécuter d’un fichier. Ces permissions peuvent être modifié indépendamment des trois groupes utilisateurs.

  • La lecture (noté r pour read) d’un fichier permet de lire le contenu d’un fichier texte, une musique, un film…
  • L’écriture (noté w pour write) d’un fichier est l’autorisation pour modifier le contenu du fichier comme changer du texte dans un fichier par exemple.
  • L’exécution (noté x pour execute) d’un fichier convient dans le cas de script par exemple ou d’autres programmes.

Les dossiers
Dans le cas des dossiers, pour afficher son contenu, l’utilisateur doit avoir l’autorisation r. Il faut qu’il ait le w pour pouvoir écrire dans le répertoire et le x permet à l’utilisateur d’ouvrir des sous-dossiers ou d’ouvrir simplement des fichiers.


Changer les permissions : chmod
La commande se présente sous cette forme : chmod <type(s) propriétaire>[+ ou -]<permissions> nom_du_fichier

  • Les types de propriétaire : Nous les avons vu plus haut, vous mettez une des lettres ou plusieurs lettres. Si vous voulez mettre tout les utilisateurs u, g, o vous pouvez mettre plus simplement la lettre a.
  • Le + ou le – : Si vous voulez ajouter la permission vous mettez + sinon vous mettez le – pour la retirer.
  • Les permissions : Comme pour les types, vous devez mettre les lettres associez aux permissions que vous voulez affecter. Les permissions sont donc r, w ou x comme expliqué précédemment.


La commande sudo

Ce petit paragraphe n’est pas directement liée à la gestion des droits d’accès toutefois la commande sudo permet de se connecter temporairement en super-utilisateur que l’on nomme root ou à un autre utilisateur.


Devenir super-utilisateur ponctuellement
Lorsque vous vous connectez, il est conseiller de ne pas se connecter en tant que root mais en simple utilisateur afin d’éviter d’exécuter avec les droits root des programmes qui pourraient éventuellement endommager le système. Pour simplifier les choses, vous vous connectez en simple utilisateur et lorsque vous avec besoin des droits du super-utilisateur, vous pouvez exécuter ces commandes en les précédent de la commande sudo. Ce qui donnerait : sudo apt-get install amsn si l’ont souhaitait installer aMSN.


Changer d’utilisateur rapidement
Lorsque vous êtes connecté en root, il peut être intéressante parfois de devenir un utilisateur avec moins de droit pour exécuter des programmes ou écrire des fichiers appartenant à cet utilisateur.

Pour ce faire, vous avez juste à entrer la commande avec la syntaxe suivante : su login_utilisateur

De cette manière vous êtes connecté avec les droits de cet utilisateur jusqu’à ce que vous décidiez de redevenir root avec la commande : exit qui vous déconnectera de l’utilisateur.


Voilà comment on gère les droits sous Linux et pour de plus ample informations, reportez-vous aux liens ci-dessous. Cet article présente l’essentiel à savoir dans la gestion des droits sous Linux et des subtilités ont été passé sous silence.


En savoir plus

La documentation officiel de Ubuntu sur les permissions : http://doc.ubuntu-fr.org/droits

Article sur Wikipedia : http://fr.wikipedia.org/wiki/Permissions_Unix

Laisser un commentaire