web-dev-qa-db-fra.com

Comment exécuter backintime en tant qu'utilisateur

Autoriser les utilisateurs à exécuter du backintime. Je cours habituellement backintime-kde sur Ubuntu de la manière suivante:

Sudo su
ssh-agent bash
backintime-kde4 --config /root/.config/backintime/config --profile-id 1

C’est la seule façon dont j’ai trouvé qui fonctionnait sur mon système. En particulier

Sudo backintime-kde4

et

kdesudo backintime-kde4 

ne fonctionnera pas.

J'aimerais autoriser les utilisateurs ordinaires qui ne disposent pas des autorisations nécessaires à exécuter Sudo su pour exécuter également backintime. Puis-je en quelque sorte créer un script shell à partir des commandes pouvant être exécutées par n'importe quel utilisateur, de sorte qu'il doit entrer au plus son propre mot de passe (et peut-être celui de la clé ssh).

Veuillez ne pas suggérer d'autres moyens de faire tourner le backintime. Je cherche simplement une méthode équivalente à celle décrite ci-dessus (telle que le backintime fonctionne de la même manière testée). Cependant, l'utilisateur devrait pouvoir l'exécuter sans pouvoir obtenir les privilèges root généraux.

2
highsciguy

Il semble y avoir plus d'un problème:

1. Bogue n ° 1276348

ssh-agent est manquant dans backintime-kde dans les versions <= 1.0.34. Veuillez installer ce correctif avec Sudo patch /usr/bin/backintime-kde4 < backintime-kde4.diff

2. Sudo vs. kdesudo

Sudo ne change pas $HOME mais kdesudo.

$ Sudo env | grep ^HOME
HOME=/home/germar
$ kdesudo env | grep ^HOME
HOME=/root

BackInTime doit être démarré avec kdesudo (ou gksudo sur Gnome). C'est aussi pour cette raison que BIT n'a pas trouvé votre configuration automatiquement.

3. Les autorisations sont gâchées

Vous avez peut-être gâché les autorisations.

/home/<USER>/.config/backintime/ et /home/<USER>/.local/share/backintime/ doivent être possédés et ne peuvent être écrits que par <USER>

/root/.config/backintime/ et /root/.local/share/backintime/ doivent être possédés et ne peuvent être écrits qu'en tant que root.

4. Rendre différents utilisateurs capables d’exécuter BackInTime en tant que root

Tout d’abord: c’est très dangereux et je ne le recommanderai PAS!

Vos utilisateurs auront un accès en écriture à l'ensemble du système. Ils peuvent changer chaque configuration, espionner les dossiers de départ des autres utilisateurs et casser tout le système. Cela va saper tous les concepts de sécurité de Linux.

Vous devriez plutôt configurer BackInTime pour chaque utilisateur afin qu'il ne fasse que sauvegarder son propre domicile. De cette façon, ils n’ont pas du tout besoin d’autorisations root et vous et moi pouvons dormir à nouveau bien

Si vous le souhaitez, vous pouvez créer un nouveau groupe Sudo addgroup backintime et ajouter vos utilisateurs en tant que membres Sudo adduser <USER> backintime. Ajoutez ensuite cette ligne à /etc/sudoers

%backintime ALL=NOPASSWD: /usr/bin/backintime-kde4

Déconnectez-vous et connectez-vous avec <USER> pour activer l'appartenance au groupe. Vous devriez pouvoir exécuter kdesudo -c /usr/bin/backintime-kde4 sans demander de mot de passe. Mais encore une fois: NE FAITES PAS CELA

Disclaimer: Je suis membre de BackInTime Dev-Team

3
Germar