Pourquoi exécuter un service en tant qu'utilisateur système?

19

J'ai une question générale sur le monde UNIX.

J'utilise actuellement Ubuntu à la maison et j'ai installé Transmission sur un appareil et il s'exécute et enregistre les fichiers en tant qu'utilisateur de transmission-debian . Je me demande s'il est logique pour moi de changer cela pour mon propre utilisateur, il est donc plus facile d'interagir avec les fichiers et je n'ai pas besoin de sudo ? Pourquoi serait-ce une mauvaise idée à faire?

ScipioAfricanus
la source

Réponses:

40

La principale raison de la recommandation d'exécuter Transmission en tant que propre utilisateur système dédié plutôt que votre utilisateur est que, si le logiciel présente une vulnérabilité qui permet des exploits qui exposeront des fichiers en dehors de son répertoire configuré, il ne finira pas par exposer le les fichiers sensibles de votre répertoire personnel, car Linux lui-même empêchera ce type d'accès via les autorisations de base.

Afin de faciliter la gestion des fichiers dans le répertoire de Transmission avec votre utilisateur normal, vous devriez envisager d'ajouter votre utilisateur au debian-transmissiongroupe, qui est le groupe propriétaire des fichiers dans le répertoire de Transmission, et qui a (ou du moins devrait avoir) accès en lecture / écriture à ce répertoire et aux fichiers qu'il contient.

Le howto Ubuntu suggère cette commande (légèrement adaptée pour obtenir votre utilisateur d'une variable d'environnement):

sudo usermod -a -G debian-transmission "$USER"

(N'oubliez pas de vous déconnecter et de vous reconnecter après avoir exécuté usermod, car cela n'affectera pas les groupes de tout processus existant.)

Espérons que cela vous facilitera la gestion des fichiers téléchargés avec Transmission, tout en le maintenant sous son propre utilisateur système dédié, pour une meilleure sécurité.

filbranden
la source
1
J'avais juste le même problème moi-même et j'ai envisagé de changer le service en utilisateur régulier. C'est bien mieux. Merci!
Alko
3
Vous pouvez également mais des autorisations par défaut sur le répertoire, pour vous donner la permission, en utilisant setfacl. voir unix.stackexchange.com/questions/101263/…
ctrl-alt-delor
1
Hé, merci beaucoup.
ScipioAfricanus