On n'est pas dredi, mais, je ne peux pas résister...
le groupe input suffit et je pourrais donc modifier le service systemd pour lancer le démon avec des droits plus restreints
Dans la ligner de commande, ou équivalent, utiliser chpst nobody:input [command] devrais faire le boulot.
La commande chpst est fournie, chez Debian, via le paquet runit, et j'ai eu l'agréable surprise de constater en passant a Debian 10, une nouvelle implémentation officielle du méta-paquet "init": "runit-init" (c'est un peu pour ça que je me permets cette digression, faut que je vérifies certaines choses avec, et si ça déconne ou si je peux améliorer, voire comment aider, si y'a pas trop de tours autour du pot...).
Pour les capabilities, c'est juste pas le rôle du système d'init de gérer ça, c'est le rôle du système de paquets, vu que, de ce que j'en comprend, c'est lié au fichier lui-même. Je reconnaît ne pas y comprendre grand chose, cela dit. Et puis, systemd gérera bientôt le boot, alors les paquets, qui sait?
Plus sérieusement, je pense que la gestion par groupes est bien plus pertinente que la gestion par capabilities: déjà, moins de risques que la capability nécessaire soit la cap' DIEU (je me comprend, flemme de rechercher le lien dans lequel il était expliqué qu'une cap' était utilisée pour tout ce qui n'avais pas de catégorie, ce qui résultait en en une cap' "root"), de plus c'est plus portable, et «accessoirement», pas besoin d'être root pour installer le binaire, parce que de ce que je sais, pour donner a un binaire des capacités, il faut être root (cf remarque précédente sur mon niveau de compréhension du sujet).
Bon, j'avoue ne pas encore connaître vraiment les bases de ce monde la, je ne sais pas en détails comment marche le système de droits: est-ce un processus sous root qui initialise tous le /dev avec divers user:groups? Se sert-il de capabilities? Je sais pas. Faudrait que j'aille jouer avec hurd, je pense que ça m'en apprendrais beaucoup sur le sujet, du fait de se baser sur une philosophie différente. Ou les BSD, chose que je me promets de faire depuis des années, mais a chaque fois je le fais que via VM, ça risque pas de me motiver...
[^] # Re: droits root non nécessaires
Posté par freem . En réponse au journal Mini-projet (python): un démon système pour gérer des raccourcis clavier. Évalué à 1.
On n'est pas dredi, mais, je ne peux pas résister...
Dans la ligner de commande, ou équivalent, utiliser
chpst nobody:input [command]devrais faire le boulot.La commande chpst est fournie, chez Debian, via le paquet runit, et j'ai eu l'agréable surprise de constater en passant a Debian 10, une nouvelle implémentation officielle du méta-paquet "init": "runit-init" (c'est un peu pour ça que je me permets cette digression, faut que je vérifies certaines choses avec, et si ça déconne ou si je peux améliorer, voire comment aider, si y'a pas trop de tours autour du pot...).
Pour les
capabilities, c'est juste pas le rôle du système d'init de gérer ça, c'est le rôle du système de paquets, vu que, de ce que j'en comprend, c'est lié au fichier lui-même. Je reconnaît ne pas y comprendre grand chose, cela dit. Et puis, systemd gérera bientôt le boot, alors les paquets, qui sait?Plus sérieusement, je pense que la gestion par groupes est bien plus pertinente que la gestion par capabilities: déjà, moins de risques que la capability nécessaire soit la cap' DIEU (je me comprend, flemme de rechercher le lien dans lequel il était expliqué qu'une cap' était utilisée pour tout ce qui n'avais pas de catégorie, ce qui résultait en en une cap' "root"), de plus c'est plus portable, et «accessoirement», pas besoin d'être root pour installer le binaire, parce que de ce que je sais, pour donner a un binaire des capacités, il faut être root (cf remarque précédente sur mon niveau de compréhension du sujet).
Bon, j'avoue ne pas encore connaître vraiment les bases de ce monde la, je ne sais pas en détails comment marche le système de droits: est-ce un processus sous root qui initialise tous le /dev avec divers user:groups? Se sert-il de capabilities? Je sais pas. Faudrait que j'aille jouer avec hurd, je pense que ça m'en apprendrais beaucoup sur le sujet, du fait de se baser sur une philosophie différente. Ou les BSD, chose que je me promets de faire depuis des années, mais a chaque fois je le fais que via VM, ça risque pas de me motiver...