Red Hat Linux 7.0: Le Guide officiel de d�marrage Red Hat Linux | ||
---|---|---|
Pr�c�dent | Chapitre 15. Vous �tes ici | Suivant |
Plus haut dans ce chapitre, lorsque nous avons essay� d'utiliser cd pour passer dans le r�pertoire de connexion root, nous avons re�u le message suivant�:
[newuser@localhost newuser]$ cd /root bash: /root: Permission denied [newuser@localhost newuser]$ |
Il s'agissait d'un exemple des fonctions de s�curit� de Linux. Linux, comme UNIX, est un syst�me multi-utilisateur et les autorisations d'acc�s aux fichiers permettent au syst�me de garantir une protection contre toute mauvaise manipulation, malveillante ou accidentelle.
Si l'autorisation d'acc�s nous est refus�e, nous pouvons ex�cuter la commande su pour acqu�rir le statut root, comme nous l'avons vu pr�c�demment. Car toute personne connaissant le mot de passe root b�n�ficie d'un acc�s total.
[newuser@localhost newuser]$ su Password: votre-mot-de-passe-root [root@localhost newuser]# cd /root [root@localhost /root]# |
Le passage au statut de superutilisateur n'est cependant pas toujours pratique ou judicieux car il est si facile d'endommager par erreur des fichiers de configuration importants.
Tous les fichiers et r�pertoires sont la "propri�t�" de la personne qui les a cr��s. Nous avons cr�� le fichier tennis.txt (dans notre r�pertoire de connexion), par cons�quent, tennis.txt nous "appartient".
Cela signifie que nous pouvons sp�cifier qui est autoris� � lire le fichier, � �crire dans le fichier ou, s'il s'agit plut�t d'une application que d'un fichier texte, � ex�cuter le fichier.
La lecture, l'�criture et l'ex�cution constituent les trois param�tres principaux des autorisations.
Tous les utilisateurs du syst�me �tant plac� � leur cr�ation dans un groupe, nous pouvons �galement sp�cifier si certains groupes disposent de droits de lecture, d'�criture ou d'ex�cution.
Examinons de plus pr�s le fichier tennis.txt avec la commande ls et l'option (long) -l (voir la Figure 15-16).
[newuser@localhost newuser]$ ls -l tennis.txt -rw-rw-r-- 1 newuser newuser 150 Mar 19 08:08 tennis.txt |
Un certain nombre de d�tails sont pr�sents ici. Nous pouvons voir qui peut lire (r) et �crire sur le fichier (w), de m�me que la personne qui l'a cr�� (newuser) et le groupe auquel son propri�taire (newuser) appartient.
![]() | Votre groupe par d�faut |
---|---|
N'oubliez pas que, par d�faut, votre groupe �tait le nom de connexion choisi. |
Les autres informations figurant � droite du groupe incluent le nom du fichier, la date et l'heure de sa cr�ation ainsi que sa taille.
Comment tous ces tirets et caract�res sont-ils organis�s�? Ce n'est pas aussi compliqu� qu'il n'y para�t. Passons � une analyse plus d�taill�e�:
-rw-rw-r-- |
Cette colonne comporte dix emplacements. Le premier repr�sente le type de fichier. Les neuf autres sont en fait trois ensembles d'autorisations pour trois cat�gories diff�rentes d'utilisateurs.
Ces trois ensembles sont�: le propri�taire du fichier, le groupe auquel le fichier appartient et "autres", c'est-�-dire les utilisateurs et les groupes autres que le propri�taire du fichier (newuser) et les membres de son groupe (�galement appel� newuser).
D�veloppons un peu les param�tres de ce fichier�:
- (rw-) (rw-) (r--) 1 newuser newuser | | | | type owner group others |
Le premier �l�ment, qui sp�cifie le type de fichier, peut correspondre � l'un des �l�ments suivants�:
d -- un r�pertoire
- -- un fichier standard (autre qu'un r�pertoire ou un lien)
l -- un lien symbolique vers un autre programme ou fichier du syst�me
Au-del� du premier �l�ment, nous verrons l'un des caract�res ci-dessous dans les trois ensembles suivants�:
r -- il est possible de lire le fichier
w -- il est possible d'�crire dans le fichier
x -- il est possible d'ex�cuter le fichier (s'il s'agit d'un programme)
Si la section propri�taire, groupe ou autres contient un tiret, cela signifie qu'une autorisation particuli�re n'a pas �t� accord�e.
Examinons � nouveau la premi�re colonne de tennis.txt et identifions les autorisations correspondantes (voir la Figure 15-17).
[newuser@localhost newuser]$ ls -l tennis.txt -rw-rw-r-- 1 newuser newuser 150 Mar 19 08:08 tennis.txt [newuser@localhost newuser]$ |
Le propri�taire du fichier, newuser, a l'autorisation de lire et de modifier le fichier�; il ne s'agit pas d'un programme, de sorte que newuser n'a pas l'autorisation de l'ex�cuter. Le groupe, newuser, a �galement l'autorisation de lire et de modifier tennis.txt. Tout comme la notation de programme pour l'utilisateur newuser, il n'y a pas d'autorisation d'ex�cution pour le groupe newuser.
Dans la derni�re s�rie, nous pouvons voir que ceux qui ne sont pas l'utilisateur newuser ou ne font pas partie du groupe newuser peuvent lire le fichier, mais ne peuvent ni le modifier ni l'ex�cuter.
Nous pouvons utiliser la commande chmod pour changer les autorisations d'un fichier.
Travaillons un peu plus sur tennis.txt afin de changer les autorisations � l'aide de la commande chmod.
Le fichier original et ses param�tres initiaux d'autorisation se pr�sentent comme suit�:
-rw-rw-r-- 1 newuser newuser 150 Mar 19 08:08 tennis.txt |
Tant que nous sommes les propri�taires du fichier -- ou que nous sommes connect�s au compte root -- nous pouvons changer les autorisations en combinant librement les param�tres utilisateur, groupe et autres.
D�sormais, le propri�taire (� savoir nous) et notre groupe (newuser) peuvent lire et modifier le fichier.
Toute personne ext�rieure � notre groupe ne pourra lire que le fichier (r--).
![]() | Des autorisations sont n�cessaires |
---|---|
N'oubliez pas que les autorisations d'acc�s au fichier constituent une fonction de s�curit�. Chaque fois que vous accordez des droits de lecture, d'�criture et d'ex�cution, vous augmentez le risque de mauvaise manipulation. En r�gle g�n�rale, il vaut mieux �viter d'autoriser le reste du monde � lire ou � �crire dans vos fichiers. |
Dans ce cas toutefois, disons que nous voulons autoriser tout utilisateur � �crire dans le fichier pour qu'il puisse le lire, l'annoter et le sauvegarder. Cela signifie que nous devrons changer la section "autres" des autorisations d'acc�s au fichier.
Comme nous sommes les propri�taires du fichier, nous n'avons pas besoin pour cela d'ex�cuter la commande su pour acqu�rir le statut root. Commen�ons par regarder le fichier. A l'invite du shell, entrez�:
ls -l tennis.txt |
ce qui nous donne les informations suivantes sur le fichier�:
-rw-rw-r-- 1 newuser newuser 150 Mar 19 08:08 tennis.txt |
Entrez maintenant�:
chmod o+w tennis.txt |
Pour v�rifier les r�sultats, nous pouvons de nouveau afficher la liste d�taill�e du fichier. Ce dernier se pr�sente d�sormais comme suit�:
-rw-rw-rw- 1 newuser newuser 150 Mar 19 08:08 tennis.txt |
Voici le r�sultat�: tout le monde peut d�sormais lire et �crire dans le fichier (Figure 15-18).
En entrant o+w, nous avons d�clar� "pour la section autres, ajouter l'autorisation d'�criture au fichier tennis.txt."
Si nous voulons supprimer les autorisations d'acc�s en lecture et �criture au fichier tennis.txt (bien qu'il ne s'agisse que d'une liste de courses sommaire), nous pouvons utiliser la commande chmod pour supprimer les autorisations de lecture et d'�criture de la mani�re suivante�:
chmod go-rw tennis.txt |
et le r�sultat sera�:
-rw------- 1 newuser newuser 150 Mar 19 08:08 tennis.txt |
En entrant go-rw, nous avons d�clar� "pour le groupe et pour les autres, retirer les autorisations de lecture et d'�criture pour le fichier tennis.txt."
Vous pouvez consid�rer ces param�tres comme une sorte de st�nographie que vous pouvez utiliser pour changer des autorisations avec chmod�; en effet, tout ce que vous avez � faire, c'est de vous souvenir de quelques symboles et lettres avec la commande chmod.
Voici une liste de ce que cette st�nographie repr�sente�:
Identit�s
u -- l'utilisateur qui poss�de le fichier (le propri�taire)
g -- le groupe auquel appartient l'utilisateur
o -- autres (ni le propri�taire, ni le groupe du propri�taire)
a -- tous (u, g et o)
Autorisations
r -- acc�s en lecture
w -- acc�s en �criture
x -- acc�s en ex�cution
Actions
+ -- ajoute l'autorisation
- -- retire l'autorisation
= -- en fait l'autorisation unique
Voulez-vous faire un essai�? Retirons � tout le monde toutes les autorisations pour le fichier tennis.txt.
chmod a-rw tennis.txt |
Maintenant, v�rifions si nous pouvons lire le fichier�:
[newuser@localhost newuser]$ cat tennis.txt cat: tennis.txt: Permission denied [newuser@localhost newuser]$ |
Nous pouvions nous douter que �a marcherait�; nous ne pouvons m�me pas acc�der au fichier. Mais puisque le fichier nous appartient, nous pouvons toujours modifier ses autorisations pour nous octroyer l'acc�s en lecture et �criture (voir la Figure 15-19).
[newuser@localhost newuser]$ chmod u+rw tennis.txt [newuser@localhost newuser]$ cat tennis.txt acheter des tennis puis aller � la boutique de caf� puis acheter du caf� puis ramener le caf� � la maison enlever les chaussures mettre les tennis faire du caf� souffler ! [newuser@localhost newuser]$ |
Voici quelques exemples courants de param�tres pouvant �tre utilis�s avec chmod�:
g+w -- ajoute un acc�s en �criture pour le groupe
o-rw -- retire toutes les autorisations pour les autres
u+x -- autorise le propri�taire du fichier � ex�cuter ce dernier
a+rw -- autorise tout le monde � lire et � �crire dans le fichier
ug+r -- autorise le propri�taire et le groupe � lire le fichier
g=rx -- autorise le groupe � lire et � ex�cuter seulement (et pas � �crire)
En ajoutant l'option R, nous pouvons changer les autorisations pour les arborescences compl�tes de r�pertoires.
Il y a un l�ger hic quand m�me car ne nous pouvons pas vraiment "ex�cuter" un r�pertoire comme une application. A la place, lorsque nous ajoutons ou retirons une autorisation d'ex�cution pour un r�pertoire, nous accordons ou refusons l'autorisation de rechercher dans ce r�pertoire.
Pour permettre � tout le monde de lire et d'�crire dans le r�pertoire tigger dans notre r�pertoire de connexion, il suffit d'entrer�:
chmod -R a+rw tigger |
En revanche…, si nous n'autorisons pas d'autres utilisateurs � ex�cuter la commande tigger, peu importe qui dispose d'un acc�s en lecture ou en �criture car personne ne pourra acc�der au r�pertoire, � moins de conna�tre exactement le nom du fichier recherch�.
Entrons par exemple�:
chmod a-x tigger |
pour retirer l'autorisation d'ex�cution � tout le monde.
Voici ce qui se passe maintenant lorsque nous essayons d'utiliser la commande cd pour acc�der � tigger�:
[newuser@localhost newuser]$ cd tigger bash: tigger: Permission denied [newuser@localhost newuser]$ |
Restaurons nos autorisations et celles de notre groupe.
chmod ug+x tigger |
Si nous v�rifions le r�sultat � l'aide de ls -dl, nous verrons que l'acc�s � tigger ne sera refus� qu'aux "autres".
Pr�c�dent | Sommaire | Suivant |
Encha�nement de commandes | Niveau sup�rieur | Param�tres num�riques de chmod |