Limiter l'utilisation d'un logiciel à un user ou à un groupe d'utilisateurs

Comme la question revient assez souvent , un peu how to pour ceux qui veulent réserver / limiter l'utilisation d'un logiciel à un user ou à un groupe d'utilisateurs

Le mieux c'est de jouer avec les groupes, c'est le plus sûr et ça marche à 100% Créer un groupe spécifique (ici nommé restreint)

sudo addgroup restreint

Coller le(s) membre(s) qui auront le droit d'accéder au programme dans ce groupe (ici mon utilisateur est ragnarok

sudo addgroup ragnarok restreint

Se délogguer / relogguer et on cet utilisateur est dès lors dans le groupe restreint

groups ragnarok adm cdrom sudo dip plugdev lpadmin sambashare restreint

Partons d'un exemple concret : le programme bluefish prenons l'exemple du programme bluefish et vérifions ces droits

ls -l bluefish -rwxr-xr-x 1 root root 27352 juin 14 2017/usr/bin/bluefish

Donc attribué (sous Mint) à root en Lecture/Écriture/exécution, au groupe root et Lecture et exécution et à Tout le monde en Lecture et Execution

Il suffit donc de changer le groupe (mettre restreint) et les droits de celui ci (Lecture et Exécution) et de Tout Le Monde en rien.

Changer le groupe du programme

sudo chown root:restreint /usr/bin/bluefish

Corriger les droits

sudo chmod 770 /usr/bin/bluefish

Et hop le tour est joué. On vérifie que tout soit en ordre

ls -l /usr/bin/bluefish -rwxr-x--- 1 root restreint 697488 mai 11 2015 /usr/bin/bluefish

Donc si les utilisateurs - - - ont accès à l'exécution du programme bluefish, on les mets dans restreint - - - n'ont pas accès à l'exécution du programme bluefish, on ne les mets pas dans restreint