Comment puis-je configurer le Centre de logiciel pour permettre aux utilisateurs non root d'installer des éléments à partir du référentiel Ubuntu sans avoir à saisir leur mot de passe?
Je suis pleinement conscient des implications pour la sécurité et je suis prêt à prendre le risque. Fedora 12 livré avec quelque chose comme ça. (En modifiant la configuration de PolicyKit, je crois)
Réponses:
Vous pouvez modifier les autorisations PolicyKit pour autoriser les utilisateurs à accéder au backend aptdaemon utilisé par le Centre logiciel.
dpkg --listfiles aptdaemon
montre que/usr/share/polkit-1/actions/org.debian.apt.policy
c'est le fichier spécifiant les actions possibles sur le backend d'aptdaemon.En regardant dans ce fichier, les
< action id="">
balises spécifient les actions possibles. Vous voudrez probablementorg.debian.apt.install-packages
permettre aux utilisateurs d'installer de nouveaux packages à partir de l'archive etorg.debian.apt.update-cache
aux utilisateurs de mettre à jour les listes de packages.Voir
man pklocalauthority
quels documents comment définir les autorisations locales sur les actions de PolicyKit. Si vous insérez ce qui suit/etc/polkit-1/localauthority/50-local.d/10-allow-users-to-install.pkla
, tout utilisateur connecté à la machine locale pourra installer des packages après avoir saisi son propre mot de passe (même s’ils ne font pas partie du groupe admin) et mettre à jour le cache des packages sans saisir de mot de passe.la source
/usr/share/polkit-1/actions/org.kubuntu.qaptworker.policy
Identity=*
pour que cela fonctionne, adapté de askubuntu.com/a/123260 . En outre, y a-t-il un moyen d'obtenir davantage de sorties de journal de Policy Kit dans/var/log/auth.log
( par exemple, d'autres fichiers journaux)? Je ne reçois que desauthentication fails
messages, mais aucune raison de l'échec ...Je ne pense pas qu’il soit actuellement possible de le faire via l’interface graphique, mais ce qui suit devrait fonctionner, même s’il est un peu compliqué. YMMV.
Ajoutez la ligne suivante à / etc / sudoers (utilisez
sudo visudo
pour éditer le fichier):Ensuite, il vous suffit de créer et d’ajouter les utilisateurs spécifiques au
packageinstallers
groupe:Maintenant
jdoe
peut faire ce qui suit:et vous pouvez éditer l’élément de menu du bureau pour le centre logiciel afin qu’il appelle en
software-center
ajoutant la commande au début de la commandegksudo
.PolicyKit peut vous permettre de le faire sans sudo, mais je ne le comprends pas pour le moment.
la source
La réponse de RAOF s'applique uniquement à Ubuntu. Kubuntu utilise QAptWorker comme back-end (observé pour Natty et Oneiric). Pour autoriser les installations non root, créez
/etc/polkit-1/localauthority/50-local.d/10-allow-non-root-install-packages.pkla
contenant:Je voulais permettre à des utilisateurs non-administrateurs d'installer des logiciels sans autoriser directement l'accès à sudo. Cela a été accompli en insérant les lignes suivantes dans les deux groupes de configuration:
Si un groupe doit obtenir une autorisation, utilisez
unix-group
plutôt queunix-user
.la source
sudo -i
je n’ai même pas accès à/etc/polkit-1/localauthority
(Ubuntu 17.10): " Je n’essaierai pas de traiter le répertoire / etc / polkit-1 / localauthority"Si vous avez seulement besoin d'une autorisation générique pour autoriser / interdire l'installation de paquet, choisissez PolicyKit.
Malheureusement, PolicyKit n’exerce aucun contrôle précis sur le paquet à installer. Si vous souhaitez autoriser vos utilisateurs à installer uniquement un ensemble restreint d'applications, vous devez utiliser
sudo
et installer quelque chose comme des canaux virtuels ...J'ai aussi cherché quelque chose comme ça, mais comme je n'ai rien trouvé, j'ai codé cette solution facile "softwarechannels", disponible ici sur GitHub
C’est un système très simple qui permet aux utilisateurs courants (non-administrateurs) d’installer des packages à partir de catalogues restreints.
Il vous suffit de définir les «canaux» (groupes de packages) dans un simple fichier texte et d’autoriser vos utilisateurs à lancer des canaux logiciels.
Ils ne verront que les paquets dans les canaux correspondant à leurs groupes unix.
la source