Ubuntu Logo

Cómo trabajar con usuarios y grupos en Ubuntu 12.04

Ubuntu LogoEn el post de hoy voy a dejar una pequeña guía de como trabajar con los usuarios y los grupos de Ubuntu 12.04. Esto lo dejo debido a la necesidad de establecer un pequeño control dentro de la “mini” red que estoy montando para mi uso y disfrute personal. Cuando añada los ordenadores de los vecinos a esta red (evidentemente ni ellos mismos sabrán que forman parte de ella, pero yo si podré acceder a sus recursos) mostraré también como lo voy a hacer. Pero mientras esto no llegua, me voy a limitar a dejar aquí a modo de apunte, para futuras consultas sobre ello las diferentes formas de trabajar.
Para trabajar con los usuarios y los grupos en Ubuntu podemos hacerlo de dos maneras diferentes;

1. Gráfica -> La más sencilla
2. Texto por Línea de comandos -> Es la más técnica pero al mismo tiempo es la más potente al permitirnos hacer varias cosas a la vez.

MODO GRAFICO EN UBUNTU

Para Ubuntu 12.04: En la gui (interfaz gráfica), de la ahora llamada “cuentas de usuario“, han quitado algunas opciones (gestionar grupos y usuarios) y básicamente, solo se puede crear/eliminar usuarios, tipo de cuenta, idioma, contraseña y opciones de inicio.

Si queremos más, hay que instalar el paquete “gnome-system-tools” en el centro de software o:



Este paquete contiene las siguientes aplicaciones:

  • Users and groups > Esta es la anterior “usuarios y grupos” que nos da las opciones perdidas.
  • Date and time
  • Network options
  • Services
  • Shares (NFS and Samba)

Ya podemos abrir “usuarios y grupos” desde el Dash.

Usuarios y Grupos

1. Para añadir un usuario nuevo:

Pulsa el botón “Pulse para realizar los cambios” e introduce la contraseña de root o superusuario.
Presiona + Añadir Usuario y se abre el Editor de Cuentas de Usuario.

En la pestaña “CUENTA” como mínimo debes de rellenar:

  • El Nombre de usuario. No uses espacios ni caracteres ASCII
  • El Nombre real. Esto es opcional
  • El perfil: eliges entre Administrador, Usuario de Escritorio y Usuario sin Privilegios (esto genera los privilegios de usuario predeterminados, aunque posteriormente los puedes modificar).
  • La contraseña: la puedes poner a mano (2 veces) o eliges que Ubuntu la genere automáticamente.

En la pestaña “INFORMACION DE CONTACTO“:

  • Puedes poner la ubicación de la oficina y teléfonos. Esto es opcional.

En la pestaña “PRIVILEGIOS DEL USUARIO“:

  • Puedes añadir o quitar los privilegios a los que el nuevo usuario tendrá acceso, como por ejemplo usar dispositivos de audio.

En la pestaña “AVANZADO“:

  • El directorio personal, el intérprete de comandos, el grupo principal y el ID del usuario se adivina automáticamente dependiendo del perfil seleccionado, por lo que no debes de modificarlos.

2. Para modificar un usuario existente:

Selecciona el usuario que quieres modificar y pulsa el botón Propiedades. Aparecerá una ventana similar a la usada para añadir usuarios nuevos, permitiéndote modificarlos.

3. Para borrar un usuario existente:

Selecciona el usuario o usuarios que quieres borrar y pulsa el botón Borrar en la pestaña Usuarios, debido a la importancia de estos datos, se te pedirá confirmación para cada usuario que quieras borrar.

Por razones de seguridad, el directorio personal de los usuarios borrados no se borrará.

4. Para añadir un grupo nuevo:

Pulsa el botón “Gestionar Grupos” y pulsa “Añadir grupo”, aparecerá una ventana nueva pidiendo los datos del grupo nuevo:

  • Nombe del grupo.
  • ID del grupo.
  • Opcionalmente puedes especificar los usuarios que pertenecerán a este grupo.

5. Para modificar un grupo exixtente:

Pulsa el botón “Gestionar Usuarios”, seleccionas el grupo y pulsa el botón Propiedades. A continuación aparecerá una ventana similar a la de añadir grupo, donde podrás modificar los datos.

6. Para borrar un grupo existente:

Pulsa el botón “Gestionar Usuarios”, seleccionas el grupo y pulsa el botón Borrar, debido a la importancia de estos datos, se te pedirá confirmación para cada grupo que quieras borrar.

MODO TEXTO CON LA TERMINAL

Para gestionar los usuario debes usar el comando sudo. Estos son los comandos:

1. Añadir usuarios y grupos

Para añadir un usuario:

sudo adduser nombreusuario

El sistema pedirá alguna información adicional sobre el usuario y un password o clave. Por defecto, se crea un grupo con el nombre del usuario y éste será el grupo por defecto. Este comportamiento se configura en /etc/adduser.conf.

Para añadir un usuario al sistema estableciendo users como su grupo principal:

sudo adduser –ingroup users nombreusuario

Para ver las opciones de añadir usuarios utiliza el comando man.

sudo man adduser

Para añadir nuevos grupos, cuando el número de usuarios es numeroso y heterogéneo y así simplificamos el tema. Esto se hace con el comando addgroup. Por ejemplo:.

sudo addgroup nombregrupo

Para añadir un nuevo usuario a un grupo existente puedes hacer lo siguiente:

sudo adduser nombreusuario nombregrupo

Para añadir un usuario existente a un grupo existente puedes usar el mismo comando:

sudo adduser nombreusuario nombregrupo

2. Eliminar usuarios y grupos

Para eliminar usuarios y grupos se emplean userdel y groupdel respectivamente. Por ejemplo: Para eliminar el usuario sapoclay:

sudo userdel sapoclay

Si además se indica la opción -r, también se borrará el directorio personal del usuario con todo su contenido:

sudo userdel -r sapoclay

Para eliminar el grupo croadores:

sudo groupdel croadores

3. Modificar usuarios y grupos

Para modificar las características de los usuarios y grupos se emplean los comandos usermod y sudo groupmod. Algunos ejemplos:

Para cambiar el directorio de inicio del usuario juan para que sea /home/croadores/sapoclay. La opción -m hace que mueva el contenido del antiguo directorio al nuevo emplazamiento.

sudo usermod -d /home/croadores/sapoclay -m

Para cambiar el grupo inicial del usuario sapoclay para que sea croadores.

sudo usermod -g croadores sapoclay

Para cambia
r el nombre del usuario sapoclay. El nuevo nombre es pseudosocial.

sudo usermod -l pseudosocial sapoclay

Para cambiar el nombre del grupo croadores a fumadores.

sudo groupmod -n fumadores croadores

4. Ficheros relacionados con la gestión de usuarios y grupos

Algunos ficheros relacionados con las cuentas de usuario son:

  • /etc/passwd: contiene información sobre cada usuario: ID, grupo principal, descripción, directorio de inicio, shell, etc. También contiene el password encriptado, salvo que se usen shadow passwords.
  • /etc/shadow: contiene los passwords encriptados de los usuarios cuando se emplean shadow passwords.
  • /etc/group: contiene los miembros de cada grupo, excepto para el grupo principal, que aparece en /etc/passwd.
  • /etc/skel: directorio que contiene el contenido del directorio de los nuevos usuarios.

5. Algunos grupos especiales

En el sistema existen algunos grupos especiales que sirven para controlar el acceso de los usuarios a distintos dispositivos. El control se consigue mediante los permisos adecuados a ficheros de dispositivo situados en /dev. Algunos de estos grupos son:

  • cdrom: dispositivos de CD–ROM. El dispositivo concreto afectado depende de donde estén conectadas las unidades de CD–ROM. Por ejemplo, /dev/hdc.
  • floppy: unidades de diskette, por ejemplo, /dev/fd0
  • dialout: puertos serie. Afecta, por ejemplo, a los modems externos conectados al sistema. Por ejemplo, /dev/ttyS1
  • audio: controla el acceso a dispositivos relacionados con la tarjeta de sonido. Por ejemplo, /dev/dsp, /dev/mixer y /dev/sndstat.

Para dar acceso a un usuario a uno de estos servicios, basta con añadirlo al grupo adecuado. Por ejemplo, para dar acceso al usuario sapoclay a la disquetera haríamos:

sudo adduser sapoclay floppy

Alternativamente, para sistemas pequeños suele ser mejor”desproteger” los dispositivos adecuados para que todos los usuarios puedan usarlos, evitando tener que recordar añadir usuarios a los grupos adecuados. Por ejemplo, para dar acceso de lectura al CD–ROM (suponiendo que esté en /dev/hdc) y de lectura/escritura a la disketera a todos los usuarios, haríamos:

sudo chmod a+r /dev/hdc
sudo chmod a+rw /dev/fd0*

6. Límites a los usuarios

En los sitemas UNIX/LINUX existe la posibilidad de limitar recursos a los usuarios o grupos, por ejemplo, el máximo numero de logins que puede realizar simultáneamente un usuario, el máximo tiempo de CPU, el máximo numero de procesos etc. Estos límites se controlan en LINUX a través del fichero /etc/security/limits.conf. También es posible limitar los tiempos de acceso a los usuarios. Una de las formas de hacerlo es con el servicio timeoutd. Este servicio se instala a través de la distribución y, una vez instalado aparece un fichero de configuración /etc/timeouts. En este fichero de configuración las lineas en blanco o que comienzan por # no son interpretadas. El resto de las líneas debe tener alguna de las dos siguientes sintaxis:

TIMES:TTYS:USERS:GROUPS:MAXIDLE:MAXSESS:MAXDAY:WARN

o bien

TIMES:TTYS:USERS:GROUPS:LOGINSTATUS

Ejemplos de límites horarios:

El ususario estephario no puede hacer login durante el fin de semana:

SaSu:*:estephario:*:NOLOGIN

Sólo el ususario root puede acceder desde las consolas tty1 a tty6:

Al:tty1,tty2,tty3,tty4,tty5,tty6:root:*:LOGIN
Al:tty1,tty2,tty3,tty4,tty5,tty6:*:*:NOLOGIN

Sólo el usuario root puede acceder entre las 15:00 y las 16:00h de cada dia:

Al1500-1600:*:root:*:LOGIN
Al1500-1600:*:*:*:NOLOGIN

Una vez que se ha preparado el fichero /etc/timeouts es necesario reiniciar el servidor timeoutd:

/etc/init.d/timeoutd restart
Stopped /usr/sbin/timeoutd (pid 2412).
Starting /usr/sbin/timeoutd…

Es importante destacar que este proceso no actúa durante el proceso de login lo que da lugar a que, aunque un usuario tenga prohibido el acceso a una máquina en un momento determinado, inicialmente puede entrar y sólo, una vez que se ejecute el proceso timeoutd, será expulsado del sistema. Para conseguir que durante el proceso de login se revisen las condiciones de timeouts se debe incluir las siguientes lineas en el fichero /etc/profile:

Comprueba restricciones de timeoutd (ver timeoutd, timeouts(5))

/usr/sbin/timeoutd ‘whoami‘ ‘basename ‘tty‘‘ || exit

Con esta línea incluso aunque el servicio timeoutd este parado si en el fichero /etc/timeouts se prohibe el acceso a un usuario éste no podrá entrar en el sistema.

7. Límites de cuotas

El sistema de cuotas provee un mecanismo de control y uso del espacio de disco duro disponible en un sistema. Se pueden establecer limites en la cantidad de espacio y el número de ficheros de que puede disponer un usuario o grupo. En las cuotas hay cuatro números para cada límite: la cantidad actual ocupada; el límite soft (quota propiamente dicha); el límite hard (espacio sobre cuota), y el tiempo que resta antes de eliminar el exceso entre soft y hard. Mientras que el límite soft puede ser superado temporalmente, el límite hard nunca puede rebasarse.

Administrando el sistema de cuotas:

Para implementar el sistema de cuotas es necesario instalar algún paquete de control de dicho sistema. En Ubuntu hay un paquete denominado cuota que instala todo lo necesario para implementar todo el sistema. Una vez instalado tenemos que realizar una serie de pasos para activar el mecanismo de cuotas. Estos pasos son:

7.1. Configuración del kernel

Antes de instalar el sistema de cuotas debe disponerse de un kernel con la opción de quota–system habilitada. Esto se consigue en el proceso de compilación de un nuevo kernel respondiendo yes a la pregunta de Disk QUOTA support Los kernels precompilados que se distribuyen con Debian (paquetes kernel-image.ya tienen esta opción habilitada.

7.2. Elección del sistema de ficheros sobre el que se aplican las cuotas

Una vez dispuesto el kernel, hay que seleccionar que sistema de ficheros necesitan tener aplicadas las cuotas. Lo normal es que solo el sistema donde están las cuentas de usuarios tengan cuotas, aunque es recomendable que tenga cuotas todo sistema de ficheros donde los usuarios puedan escribir. Para habilitar las cuotas en un sistema de ficheros hay que editar el fichero /etc/fstab e incluir las opciones usrquota y grpquota:

# /etc/fstab: static file system information.
# file system mount point type options dump pas
/dev/hda5 / ext2 defaults,errors=remount-ro,usrquota,grpquota 0

7.3. Habilitar las cuotas

Para instalar los ficheros de cuotas se debe ejecutar el comando:

quotacheck -avug
Scanning /dev/hda5 [/] done
Checked 4943 directories and 57624 files
Using quotafile /quota.user
Updating in-core user quotas
Using quotafile /quota.group
Updating in-core group quotas

La primera vez que se ejecuta este comando sirve para crear los ficheros de
quotas: quota.user y quota.group

7.4. Especificar cuotas para usuarios o grupos

Para editar la cuota de un usuario o grupo se usa el programa edquota con la opción -u para editar las cuotas de usuarios y con la opcion -g para editar las opciones de grupo. Sólo hay que editar los números que están detrás de soft y hard. El período de gracia que hay entre el límite soft y el hard puede cambiarse con:

edquota -t

La mayoría de las veces los usuarios tienen la misma cuota. Una forma rápida de editar la cuota de todos los usuarios es colocarse en el directorio donde tienen sus directorios raíz cada usuario. Editar la cuota de uno de estos usuarios con los valores apropiados y, posteriormente, ejecutar:

edquota -p usuarioprototipo *

Para verificar las cuotas que tiene un usuario se utiliza el comando:

quota -v

El superusuario puede ver las cuotas de todos los usuarios con el comando:

repquota filesystem

7.5. Deshabilitar cuotas para usuarios y grupos

Para deshabilitar las cuotas de un usuario o grupo solo hay que editarlas cuotas y poner los limites a 0. Así un usuario puede usar tantos bloques e inodos como quiera.

 

Y siguiendo estos pequeños consejos se puede trabajar bien con usuarios y grupos en los sitemas Debian.

Fuente: gOOgle

Deja un comentario