jueves, 28 de marzo de 2013

Evitar solicitud contraseña al cierre del sistema

Muchos se habrán dado cuenta que algunas veces cuando queremos realizar el cierre de sistema se nos solicita la clave root para llevarlo a termino. La aparición de esa ventana de control no sucede siempre, pero cuando lo hace, es lógico preguntarse entonces porqué demonios solicita la clave root para un hacer tan simple como es el cierre del sistema. Sobre todo cuando somos usuario único.


En este caso, (cuando somos usuario único) esto sucede cuando hemos abierto cualquier aplicación como root. Entonces el sistema interpreta que se están ejecutando dos usuarios. El corriente y el root, y en el caso de querer cerrar el sistema se nos mostrará la fastidiosa ventanita.
Por otra parte, lo que ya no tiene ninguna lógica (cuando somos usuario único) es que si le pulsamos a Cancelar en la ventana que se nos muestra para este proceso, el cierre del sistema se realizará de todos modos. ¿!? Con lo cual, es algo más molesto que realmente útil, ya que en definitiva cualquiera se lo puede saltar y lo único que logra es el retraso del cierre del equipo.

Pero lo peor es cuando se tiene varias cuentas de usuario. Aquí veo yo un grave fallo de seguridad. No plantearé ninguna solución a este problema en concreto ya que no la tengo, pero si un consejo útil y totalmente efectivo.
Expliquemos esto:
Supongamos que tenemos dos (pueden ser más) sesiones abiertas. Hago hincapié en lo de abiertas, que no activas.
Sesión Frannoe y sesión Noemí.
Supongamos que mi hija se ha ausentado un rato y yo (¡muy mal hecho! ¡esto no se debe hacer!) quiero ver lo que está haciendo en su sesión. Pues tan solo tengo que clicar en Cerrar Sistema en mi sesión para que automáticamente cuando pulse en Cancelar en la ventana de control que se muestra, me introduzca en la suya.
Lo lógico sería (como cuando clicamos en Cambiar de Usuario) nos mandara a la pantalla de login. Pero no lo hace. Extrañamente nos introduce en una de las sesiones activas. ¿!?

Para evitar esto lo que debemos hacer en el caso de compartir equipo, y en los casos en que nos ausentemos con nuestra sesión abierta es pulsar el botón Bloquear la Pantalla.
De este modo aunque se realice lo anteriormente explicado, si no se sabe la clave le será imposible a cualquiera acceder a nuestra sesión.

Bueno lo que voy hacer ahora es explicar como evitar esa dichosa ventana de control. Así de este modo cuando cliques en Apagar Sistema este se apagará sin más.
Si sigues los pasos aquí indicados, esa ventana no volverá a salir.
Nota: Lo del fallo de seguridad seguirá exactamente igual, lo mejor (como se dijo anteriormente) es utilizar el Bloquear la Pantalla.

Para evitar la aparición de la ventana de control editamos el siguiente archivo:
  • sudo pluma /usr/share/polkit-1/actions/org.freedesktop.consolekit.policy
Buscamos la siguiente línea:
org.freedesktop.consolekit.system.stop-multiple-users

Cinco líneas más abajo de ésta veremos esta otra:
<allow_active>auth_admin_keep</allow_active>

La modificamos dejándola así:
<allow_active>yes</allow_active>

Ahora buscamos esta otra:
org.freedesktop.consolekit.system.restart-multiple-users

También cinco líneas más abajo veremos la siguiente:
<allow_active>auth_admin_keep</allow_active>

La modificamos dejánndola así:
<allow_active>yes</allow_active>

Guardamos lo cambios y listo. Esa ventana de control ya no volverá a aparecer.


Como dato informativo diré que si os pasáis por la siguiente ruta:
  • /usr/share/polkit-1/actions/
Veréis una serie de archivos, los cuales podemos modificar de modo similar para evitar solicitudes de permisos root. Cosas como estas es lo que yo realizo siempre después de instalar mi distro. Por ejemplo, si no queremos que al ejecutar GParted nos pida contraseña root modificaremos el archivo llamado com.ubuntu.pkexec.gparted.policy. Si tampoco queremos que lo haga el Synaptic modificaremos el llamado com.ubuntu.pkexec.synaptic.policy, etc.

Ojo: Esto puede ser muy recomendable en el caso de ser usuario único, pero no lo es nada en el caso de compartir el PC ya que estos permisos se extienden a nivel global.

No hay comentarios:

Publicar un comentario