IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Premiers pas avec Xenomai

Image non disponible


précédentsommairesuivant

IX. Exécution des programmes Xenomai et sécurité

Jusqu'à présent, nous avons lancé tous nos programmes logués en tant que root.

Cette situation, qui est acceptable en développement, l'est beaucoup moins lorsque le produit est opérationnel puisqu'une mauvaise manipulation peut mettre en péril Linux.

Les trois solutions ci-dessous répondent à ce besoin de sécurisation.

IX-A. « Xenomai GID »

Passée en tant que paramètre du noyau Linux, cette option autorise un groupe d'utilisateurs à lancer les applications Xenomai. Exemple : xeno_nucleus.xenomai_gid=500.

IX-B. Activation du bit d'endossement

C'est une solution simple. Comme pour la commande passwd, nous allons activer le bit d'endossement.

Le fichier est exécuté en tant que dchabal :

 
Sélectionnez
[dchabal@localhost tuto]$ ./hello
Xenomai: binding failed: Operation not permitted.
[dchabal@localhost tuto]$

En tant que root :

 
Sélectionnez
[root@localhost tuto]# ls -l hello
-rwxr-xr-x 1 dchabal dchabal 7794 Sep  6 10:34 hello
[root@localhost tuto]# chown root:root hello
[root@localhost tuto]# ls -l hello
-rwxr-xr-x 1 root root 7794 Sep  6 10:34 hello
[root@localhost tuto]# chmod +s hello
[root@localhost tuto]# ls -l hello
-rwsr-sr-x 1 root root 7794 Sep  6 10:34 hello
[root@localhost tuto]#

Le bit d'endossement activé, on s'approprie les droits du propriétaire du fichier :

 
Sélectionnez
[dchabal@localhost tuto]$
[dchabal@localhost tuto]$ ./hello
Hello world!

[dchabal@localhost tuto]$

À noter que n'importe quel utilisateur du même groupe que dchabal pourra utiliser ce programme.

IX-C. sudo

Sudo (SUperuser DO) permet une gestion des accès plus fine et plus « sécuritaire » que le bit d'endossement ou le contrôle au niveau du groupe.

Ici, on autorise l'utilisateur dchabal à lancer le programme hello avec tous les arguments qu'il souhaite.

En tant que root, lancer visudo et ajouter cette ligne :

 
Sélectionnez
dchabal ALL=NOPASSWD: /home/dchabal/tuto/hello *

L'exécutable est alors lancé comme un paramètre de sudo :

 
Sélectionnez
[dchabal@localhost tuto]$ ./hello
Xenomai: binding failed: Operation not permitted.
[dchabal@localhost tuto]$ sudo ./hello
Hello world!

précédentsommairesuivant

Copyright © 2012 David Chabal. Aucune reproduction, même partielle, ne peut être faite de ce site ni de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.