¿Cómo puedo configurar el Centro de software para permitir que los usuarios no root instalen cosas desde los repositorios de Ubuntu sin tener que escribir su contraseña?
Soy plenamente consciente de las implicaciones de seguridad y estoy dispuesto a correr el riesgo. Fedora 12 viene con algo como esto. (Al modificar la configuración de PolicyKit, creo)
Respuestas:
Puede modificar los permisos de PolicyKit para permitir que los usuarios accedan al backend de aptdaemon que utiliza Software Center.
dpkg --listfiles aptdaemon
muestra que/usr/share/polkit-1/actions/org.debian.apt.policy
es el archivo que especifica las acciones posibles en el backend de aptdaemon.Mirando en ese archivo, las
< action id="">
etiquetas especifican las posibles acciones. Probablemente deseeorg.debian.apt.install-packages
permitir que los usuarios instalen nuevos paquetes desde el archivo yorg.debian.apt.update-cache
permitir que los usuarios actualicen las listas de paquetes.Vea
man pklocalauthority
qué documentos cómo establecer permisos locales en las acciones de PolicyKit. Poner lo siguiente en/etc/polkit-1/localauthority/50-local.d/10-allow-users-to-install.pkla
permitirá a cualquier usuario que haya iniciado sesión en la máquina local instalar paquetes después de escribir su propia contraseña (incluso cuando no estén en el grupo de administración) y actualizar el caché del paquete sin escribir ninguna contraseña.fuente
/usr/share/polkit-1/actions/org.kubuntu.qaptworker.policy
Identity=*
para que esto funcione, adaptado de askubuntu.com/a/123260 . Además, ¿hay alguna forma de obtener más resultados de registro del kit de políticas, por ejemplo/var/log/auth.log
(o cualquier otro archivo de registro)? Solo me danauthentication fails
mensajes, pero no hay razón por qué ha fallado ...No creo que actualmente sea posible hacerlo a través de la GUI, pero lo siguiente debería funcionar, aunque sea un poco torpe. YMMV.
Agregue la siguiente línea a / etc / sudoers (use
sudo visudo
para editar el archivo):Entonces solo necesita crear y agregar los usuarios específicos al
packageinstallers
grupo:Ahora
jdoe
puede hacer lo siguiente:y puede editar el elemento del menú del escritorio para el Centro de software para que llame al
software-center
anteponer el comandogksudo
.PolicyKit puede permitirle hacerlo sin sudo, pero está más allá de mi comprensión en este momento.
fuente
La respuesta de RAOF se aplica solo a Ubuntu. Kubuntu usa QAptWorker como backend (observado para Natty y Oneiric). Para permitir instalaciones no root, cree que
/etc/polkit-1/localauthority/50-local.d/10-allow-non-root-install-packages.pkla
contenga:Quería permitir que algunos usuarios que no son administradores instalen software sin otorgar acceso a sudo directamente. Eso se logró insertando las siguientes líneas en ambos grupos de configuración:
Si hay un grupo al que se le debe otorgar permiso, use en
unix-group
lugar deunix-user
.fuente
sudo -i
que ni siquiera tengo acceso a/etc/polkit-1/localauthority
(Ubuntu 17.10): "No intentará procesar el directorio / etc / polkit-1 / localauthority"Si solo necesita un permiso genérico para permitir / no permitir la instalación del paquete, vaya a PolicyKit.
Lamentablemente, PolicyKit no tiene un control preciso sobre el paquete para instalar. Si desea otorgar a sus usuarios permiso para instalar solo un conjunto restringido de aplicaciones, debe usar
sudo
e instalar algo como canales de software ...También busqué algo así, pero como no encontré nada, codifiqué esta solución fácil "softwarechannels", disponible aquí en GitHub
Es un sistema muy simple que permite a los usuarios comunes (no administradores) instalar paquetes de catálogos restringidos.
Simplemente defina 'canales' (grupos de paquetes) en un archivo de texto simple y otorgue a sus usuarios permisos para iniciar canales de software.
Solo verán paquetes en canales que coincidan con sus grupos unix.
fuente