sábado, 28 de septiembre de 2013

Crear un usuario invitado en Mint Cinnamon

La forma en que versiones anteriores de Mint, con Gnome2,  se podía tener un "usuario invitado"  ( ver tema Usuarios especiales para torpes: usuario invitado, y usuarios no-admin) ya no es posible en las versiones de Mint con Cinnamon.

La idea es tener un usuario ( en este tema lo llamo usuario noadmin ya que no tiene permisos de administración del sistema ), ya creado anteriormente desde la cuenta del usuario administrador  - en este tema lo llamo usuario_habitual ( Configuración del Sistema-Cuentas de usuario ) y accesible desde la pantalla de acceso, y que esté siempre como recién creado, para que lo pueda usar un usuario invitado,  y que lo que éste haga con él se borre al salir de la sesión gráfica. El usuario noadmin no tiene permisos de administrador y por lo tanto no puede modificar/dañar  el sistema.

Para lograrlo he escrito un pequeño script ( rm-noadmin ) de forma que ahora cada vez que se sale de la pantalla de acceso, para entrar en la sesión gráfica de un usuario, se ejecuta el script, con lo que al entrar en la sesión gráfica del usuario noadmin, está recién creado, sin rastro de posibles cambios que se hayan realizado en una sesión anterior con ese usuario. Con este script tampoco puede guardar ningún cambio en la apariencia de su sesión gráfica ni guardar ningún archivo en su directorio de usuario, ya que al salir de la sesión gráfica todo se borra.

El texto del script rm-noadmin y la forma de hacer que se autoejecute al salir de la pantalla de acceso, y entrar en la sesión gráfica de un usuario,  se explica a continuación.

------------------------------------

El texto del script rm-noadmin es: ( La forma de crear un script básico esta explicada en el tema: Crear un script básico )
#!/bin/sh
rm -rf /home/noadmin   
mkdir /home/noadmin    
chown -R noadmin:noadmin /home/noadmin 
exit 

El primer comando ( rm -rf /home/noadmin ) borra todo el contenido, - directorios y archivos visibles y ocultos - , del directorio /home/noadmin.
El segundo comando ( mkdir /home/noadmin ) vuelve a crear dicho directorio en su estado por defecto.
El tercer comando ( chown -R noadmin:noadmin /home/noadmin ) hace que todos sus subdirectorios y archivos, visibles y ocultos, pertenezcan al usuario noadmin y al grupo noadmin.

-----------------------------------------

La forma de hacer que el script se autoejecute autmáticamente cada vez que se sale de la pantalla de acceso, para entrar en la sesión gráfica de un usuario, es la siguiente:

He guardado el script rm-noadmin en /home/usuario_habitual/Scripts/rm-noadmin ( es decir en la carpeta del usuario habitual )
He editado con sudo gedit /etc/mdm/PostSession/Default dicho archivo, añadiendo la línea:
/home/usuario_habitual/Scripts/rm-noadmin
de forma que ahora está así:
#!/bin/sh
/home/usuario_habitual/Scripts/rm-noadmin
exit 0

He guardado los cambios realizados en dicho archivo.

Ahora cada vez que se sale de la pantalla de acceso, para entrar en la sesión gráfica de un usuario, se ejecuta el script, con lo que al entrar en la sesión gráfica del usuario noadmin, éste está recién creado, sin rastro de posibles cambios que se hayan realizado en una sesión anterior con ese usuario.
El usuario noadmin no tiene permisos de administrador y por lo tanto no puede modificar/dañar el sistema. Con este script tampoco puede guardar ningún cambio en la apariencia de su sesión gráfica ni guardar ningún archivo en su directorio de usuario, ya que al salir de la sesión gráfica todo el contenido de su directorio se borra; solo podría guardar archivos en unidades externas de almacenamiento: pendrives, discos duros externos, etc que estén montadas en ese momento, pero si no lo están no podrá montarlas.

-------------------------

Si en vez del gestor de la pantalla de acceso mdm propio de Cinnamon, se usa gdm propio de Gnome-shell, los pasos a seguir son los mismos, salvo que el archivo que hay que editar para añadir la dirección donde esta el script, es: /etc/mdm/PostSession/Default

-------------------------

Si se usa  lightdm como gestor de la pantalla de acceso - propio de Ubuntu - el archivo que hay que editar se explica en  http://ubuntuforums.org/showthread.php?t=1918649&p=11656736#post11656736  y parecer ser muy similar a como se hace en gdm o mdm.

-------------------------

2 comentarios:

  1. Muy bueno! Lo estudié hace poco pero en servidores de Active Directory de Windows, usuarios congelados me parece que les llamábamos. Que también se podrían crear en Linux, por ejemplo abres la primera sesión de ese usuario, personalizas la interfaz y le dejas algun archivo explicatorio en el escritorio o en Documentos, copias ese home y al script le dices que cada vez que se salga de la sesión borre el home actual y copie la "plantilla" que has creado. Muy buen artículo.

    ResponderEliminar

A la vez que haces un comentario, por favor da una puntuación al tema: malo, normal, bueno o muy bueno.
Gracias.