¿Cómo administrar grupos, usuarios y permisos?
Linux es un sistema operativo multiusuario y multitarea, es decir, que múltiples usuario pueden trabajar en el sistema de forma simultánea, ejecutando diversas tareas a al vez. Por este motivo es muy importante que el sistema operativo permita la gestión y control de los usuarios.
Los sistemas basados en Unix organizan todo esto por usuarios y grupos, donde cada usuario debe identificarse con un nombre de usuario y una contraseña. Durante el proceso de login, la contraseña introducida por cada usuario, es encriptada y comparada con las contraseñas encriptadas que han sido previamente almacenadas en el sistema.
Los grupos son útiles para agrupar una serie de permisos especiales en el sistema a un grupo de usuarios determinado, todo usuario debe pertenecer, al menos, a un grupo. En todo sistema debe haber un superusuario (root
), que tendrá todos los permisos y privilegios máximos que le permitirán hacer cualquier operación sobre el sistema.
A continuación, se describen algunos ejemplos de los comandos más comunes para la gestión de grupos, usuarios y sus respectivos permisos.
Usuarios y grupos
groupadd nombre_del_grupo # crear un nuevo grupo
groupdel nombre_del_grupo # borrar un grupo
groupmod -n nuevo_nombre_del_grupo viejo_nombre_del_grupo # cambiar nombre de un grupo
useradd user1 # crear un nuevo usuario
useradd -c Nombre_completo -g admin -d /home/user1 -s /bin/bash user1 # Crear un usuario user1 perteneciente al grupo admin
userdel -r user1 # borrar un usuario y eliminar el directorio home
usermod -c “User FTP” -g system -d /ftp/user1 -s /bin/nologin user1 # cambiar atributos de usuario
usermod -aG grupo1,grupo2 user1 # agregar el usuario user1 a otros grupos existentes
passwd # cambiar contraseña
passwd user1 # cambiar la contraseña de un usuario
chage -E 2011-12-31 user1 # cambiar la fecha en que una clave expira para el usuario
pwck # revisar la sintaxis correcta el formato de fichero de /etc/passwd y la existencia de usuarios
grpck # revisar la sintaxis correcta y el formato del fichero /etc/group y la existencia de grupos
Permisos en ficheros
ls -lh # mostrar permisos
ls /tmp | pr -T5 -W$COLUMNS # dividir la terminal en 5 columnas
chmod ugo+rwx dir1 # colocar permisos de lectura (r), escritura (w) y ejecución (x) al propietario (u), al grupo (g) y a otros (o) sobre el directorio dir1
chmod go-rwx dir1 # quitar permiso de lectura (r), escritura (w) y ejecución (x) al grupo (g) y otros (o) sobre el directorio dir1
chown user1 file1 # cambiar el dueño de un fichero
chown -R user1 dir1 # cambiar el propietario de un directorio y de todos los ficheros y directorios contenidos dentro
chgrp grupo1 file1 # cambiar grupo de fichero
chown user1:grupo1 file1 # cambiar usuario y el grupo propietario de un fichero
find / -perm -u+s # visualizar todos los ficheros del sistema con SUID configurado
chmod u+s /bin/file1 # colocar el bit SUID en un fichero binario. El usuario que corriendo ese fichero adquiere los mismos privilegios como dueño
chmod u-s /bin/file1 # deshabilitar el bit SUID en un fichero binario
chmod g+s /home/public # colocar un bit SGID en un directorio, similar al SUID pero por directorio
chmod g-s /home/public # desabilitar un bit SGID en un directorio
chmod o+t /home/public # colocar un bit STIKY en un directorio. Permite el borrado de ficheros solamente a los dueños legítimos
chmod o-t /home/public # desabilitar un bit STIKY en un directorio
¿Disfrutas leyendo este artículo?
Aquí hay algunos artículos más que tal vez le guste leer: