Page suivante Page précédente Table des matières

2. Distribuer permissions et autres droits d'accès (indispensable!)

Il faut maintenant modifier certains droits d'accès accordés aux utilisateurs classiques, histoire que les fichiers de périphérique précédemment crées ne soient pas uniquement exploitables par le super-utilisateur.

2.1 Ce qu'il ne faut pas faire

A l'origine, je préconisais une petite combine, solution certes un peu rude, mais qui convenait à la plupart d'entre nous. Néanmoins, elle n'était pas sans poser certains problèmes, le plus important concernait probablement celui de la sécurité. Pour rappel, les commandes proposées étaient les suivantes:

chmod 666 /dev/dsp
chmod 666 /dev/mixer

Cette façon de faire ne pose à priori aucun problème particulier, sauf si on est un peu paranoïaque bien-sûr. Seulement, cette manipulation relève plutôt du bidouillage, et c'est en bonne partie pour cette raison qu'il faut suivre à la lettre la recommandation faite dans le titre de cette sous-section.

2.2 Les bonnes manières

Voici la méthode que tout le monde devrait normalement suivre. Celle-ci consiste à intégrer chaque utilisateur du système dans un ou plusieurs groupes (d'utilisateurs) particuliers ; sont attribuées à ces groupes certaines permissions permettant l'accès ou non à distinctes ressources du système. Autrement dit, on donne la permission ou non à certaines personnes d'accéder à différentes parties du système, en fonction de leur appartenance à tel ou tel groupe d'utilisateur. Je ne vais trop m'attarder sur le pourquoi, tout ceci est formidablement bien expliqué dans la FAQ de la liste de diffusion des utilisateurs francophones de Debian, dans la section numéro 8 qui traite des permissions. A consulter d'urgence donc : http://www.ens-lyon.fr/~mquinson/debian/faq-french/debian-french-faq.html/index.html

2.3 Un petit exemple

A l'aide d'un petit exemple, nous allons ici prendre un peu de temps pour tenter d'expliquer le plus pédagogiquement possible une des manière de procéder pour mettre en pratique une administration correcte de tous les droits d'accès accordés à ces utilisateurs.

Nous considérons donc ici le super-utilisateur toto, qui souhaite créer un compte utilisateur sur son ordinateur préféré, afin que sa petite soeur adorée frangine puisse écouter diverses sources musicales...

Première étape, nous devons tout d'abord créer un nouveau compte utilisateur. Fastoche, à l'aide de la commande adduser, qui s'utilise de la manière suivante:

adduser <nomutilisateur> <nomgroupe>

Notez bien que si nous ne spécifions pas de groupe à cette commande, lorsque l'on ajoutera un nouvel utilisateur au système, alors un nouveau groupe au nom de cet utilisateur sera également crée (rien d'alarmant, rassurez vous...). Nous créons donc notre nouveau compte :

adduser frangine

L'utilisateur frangine se retrouvera donc pour l'instant uniquement dans un seul groupe, au même nom que celui de son compte, c'est à dire frangine. Si nous avions déjà eu un groupe de créé et convenant à notre utilisateur frangine - par exemple le groupe emmerdeuses - et, que nous avions souhaité l'y intégrer, alors dans ce cas la commande aurait été:

adduser frangine emmerdeuses

Cette fois, attardons et intéressons nous justement à ces fameux groupes. Il sont répertoriés dans le fichier /etc/group. Y sont décrits un certain nombre en son sein, leur(s) fonction(s) ou leur(s) utilité(s) étant expliquées pour la plupart dans la FAQ citée précédemment et, que vous avez naturellement déjà tous lu...

Nous nous penchons précisément maintenant sur le cas du groupe audio, c'est celui la même qui nous intéresse vraiment. Par exemple et pour le moment, un simple grep audio /etc/group nous renvoie ceci:

audio:x:29:

La structure d'une ligne décrivant un groupe est la suivante, composée de quatre champs:

<nomdugroupe>:<motdepasse>:<numerodugroupe>:<utilisateur_admis1>,...,<utilisateur_admisX>

C'est à dire que dans notre cas présent, le groupe s'appelle audio, et le mot de passe qui lui est associé est ici caché (ne vous souciez pas de ce champ, il est différent selon les configurations. Ici les mots de passe sont stockés ailleurs ; tout ça pour dire que x ne correspond pas au mot de passe réel. Bref, je m'égare...). Les deux derniers champs correspond respectivement au numéro d'identification du groupe (il est unique et vaut ici 29), suivit ensuite de tous les noms des comptes utilisateur faisant partie de ce groupe, ces noms étant séparés pas des virgules. Ici, il n'y rien, donc aucun utilisateur classique n'est habilité à utiliser les ressources attribuées au groupe audio.

Le groupe audio maîtrise donc par exemple (et entre autres), la ressource /dev/dsp. Un simple ls -ls /dev/dsp doit normalement nous en rendre compte, donnant vraisemblablement la sortie suivante:

crw-rw----    1 root     audio     14,   3 Mar 24 14:51 /dev/dsp

Pour que notre utilisateur frangine puisse avoir accès à cette ressource, il nous faut l'intégrer à ce fameux groupe audio. Encore une fois, rien de plus facile. Toujours à l'aide de la commande adduser, comme cela:

adduser frangine audio

Littéralement: "le dictateur toto décrète que frangine est autorisé à lorgner et vandaliser tout ce qui porte la marque audio". Pour le reste, c'est presque: "tu peut te brosser frangine" (TM)...

La description du groupe audio dans /etc/group a normalement changé et devrait désormais correspondre à ceci:

audio:x:29:frangine

Simple, non?


Page suivante Page précédente Table des matières