Gestionar usuarios y grupos
Gestionar usuarios y grupos en Linux
La seguridad de los sistemas operativos para administrar los datos se apoya en un sistema de permisos. Este sistema de permisos se basa en permitir el acceso o denegar el acceso de los datos del sistema a un determinado usuario.
La gestión de usuarios y grupos permite organizar y coordinar el acceso de datos de un usuario o un grupo mediante el sistema de permisos. La base de la gestión de usuarios y grupos no está en dar o denegar acceso, la complejidad realmente está en el nivel de acceso que se debe permitir a determinados usuarios sin comprometer la seguridad del sistema.
La ventaja del grupo se basa en que los privilegios de un grupo serán heredados por todo usuario que pertenezca a ese grupo.
USUARIOS
TIPOS DE USUARIO:
La gestión de usuarios y grupos se puede realizar con binarios (useradd,usermod,userdel) o con scripts (adduser,deluser). Estos últimos están basados en los binarios y permiten crear un usuario con una configuración básica por defecto y otros datos que se generan mediante peticiones desde la misma terminal.
GESTIÓN DE USUARIOS CON SCRIPTS
Crear usuario con acceso al sistema
sudo adduser [usuario]
Crear un usuario estableciendo un grupo ya definido.
sudo adduser --ingroup [grupo] [usuario]
Asignar un usuario a un grupo
sudo adduser [usuario] [grupo]
Eliminar usuario (parcial)
deluser [usuario]
sudo deluser --remove-home [usuario]
man adduser
man deluser
GESTIÓN DE USUARIOS CON BINARIOS
Crear usuario
sudo useradd [usuario]
Crear un usuario con acceso al sistema
sudo useradd -m -G [otros grupos] -s /bin/bash [usuario]
Establecer contraseña
sudo passwd [usuario]
Establecer acceso a usuario sin contraseña
sudo passwd -d [usuario]
Establecer shell a un usuario
sudo useradd -s [shell] [usuario]
Eliminar usuario (parcial)
userdel [usuario]
Eliminar usuario (completa)
userdel -r [usuario]
Cambiar nombre a usuario
usermod -l [nuevo_usuario] [usuario]
Cambiar contraseña a usuario
passwd [usuario]
Cambiarse la contraseña a sí mismo
passwd
Bloquear usuario
passwd -l [user]
Desbloquear usuario
passwd -u [user]
Manuales
man useradd
man userdel
La eliminación parcial de un usuario elimina el usuario y su grupo, mientras que la eliminación completa de un usuario elimina el usuario, el grupo y si existen, elimina el directorio personal y el directorio mail asignado.
Nota: El directorio mail asignado a un usuario se encuentra en /var/mail/[usuario].
GRUPOS
De la misma manera que los usuarios, la gestión de los grupos se puede realizar con binarios y con scripts
GESTIÓN DE GRUPOS CON SCRIPTS
Crear grupo
sudo addgroup [grupo]
Crear grupo de sistema
sudo addgroup --system [grupo]
Eliminar grupo
sudo delgroup [grupo]
Eliminar grupo sin usuario asignado
sudo delgroup --only-if-empty [grupo]
Asignar un usuario a un grupo
sudo adduser [usuario] [grupo]
Desasignar un usuario de un grupo
sudo deluser [user] [group]
GESTIÓN DE GRUPOS CON BINARIOS
Crear grupo
sudo groupadd [group]
Crear grupo de sistema
sudo groupadd -r [grupo]
Modificar nombre de grupo
sudo groupmod -n [nuevo grupo] [grupo]
Eliminar grupo
sudo groupdel [grupo]
Asignar un usuario a un grupo o grupos
sudo usermod -a -G [grupo1,grupo2] [usuario]
Obtener grupos asignados a un usuario
sudo groups [user]
Nota: No se puede eliminar un grupo asignado como grupo principal de un usuario existente. Al eliminar un grupo es recomendable revisar sudoers (/etc/sudoers y los archivos en /etc/sudoers.d) por si ese grupo dispone de privilegios, esto evita que al crear un nuevo grupo con ese nombre herede privilegios inapropiados .
Un usuario asignado a más de un grupo puede establecer otro grupo como grupo principal
sudo newgrp [maingroup_tmp]
Volver a su anterior grupo principal
exit
Para que sirve el newgrp?
Un usuario dispone de un grupo principal al iniciar sesión, si se crea un directorio o un archivo se registra con el grupo principal. Teniendo esto en cuenta si, por ejemplo un directorio es compartido entre varios usuarios que crean archivos, cada archivo será registrado con el grupo de cada usuario. Con newgrp se puede establecer otro grupo como grupo principal de forma temporal, de esa forma, los archivos y directorios creados o modificados serán registrados con ese grupo permitiendo el acceso a todos los usuarios pertenecientes a ese grupo.
EJEMPLOS: CREAR Y ELIMINAR UN USUARIO
EJEMPLO: Crear y eliminar el usuario javi con adduser y deluser (scripts)
Se crea el usuario con acceso al sistema
sudo adduser javi
Se asigna el usuario a otro grupo
sudo adduser javi amigos
Se elimina el usuario
sudo deluser --remove-home javi
EJEMPLO: Crear y eliminar el usuario jose con useradd y userdel (binarios)
Creación del usuario en una sola línea (simplificada)
Se crea el usuario con acceso al sistema
sudo useradd -m -s /bin/bash jose
Creación del usuario paso a paso (extendida):
Se crea el usuario
sudo useradd jose
Se establece la contraseña al usuario
sudo passwd jose
Se crea el directorio personal de usuario
sudo mkdir /home/jose
Se establecen propiedad y grupo al directorio personal
sudo chown jose:jose /home/jose
Se establece el shell al usuario con acceso al sistema
sudo usermod -s /bin/bash jose
Se elimina el usuario
sudo userdel -r jose
Acceso al sistema desde la interfaz gráfica
Para acceder al sistema es suficiente con configurar el usuario el acceso a la shell y asignar una contraseña o establecer el acceso sin contraseña. Sin embargo, para poder acceder desde la interfaz gráfica es necesario también disponer de un directorio de usuario registrado con permisos de propiedad.
Nota: Los subdirectorios del directorio personal se crean automáticamente una vez se inicia sesión por primera vez desde la interfaz gráfica.
Privilegios
Un usuario o grupo por defecto, no dispone de privilegios, para asignarle privilegios es necesario configurar sudoers.
Nota: En versiones anteriores de Ubuntu(12.04 o inferiores) se otorgaban permisos mediante el grupo admin al usuario creado durante la instalación, por eso, en algunas instalaciones que han sido actualizadas es posible que se mantenga el grupo admin en el archivo /etc/sudoers. En Debian, en cambio, inicia con usuario root y aunque no se aconseja se pueden otorgar permisos a un usuario mediante el grupo sudo, de la misma forma que se hacía con Ubuntu con el grupo admin
Nota: En instalaciones nuevas es posible que no esté disponible adduser o useradd desde el usuario root. Esto se debe a que no hereda el acceso al directorio /sbin, para solucionar este inconveniente se puede llamar al comando mediante la ruta completa o bien acceder al usuario root heredando dicho acceso:
- Mediante ruta completa:
/sbin/adduser [usuario] [grupo]
- Mediante herencia (incluyendo guión al acceder a usurio root):
su -
Para poder comentar es necesario iniciar sesión