Gestionar un servidor RHEL 7, como es el caso con cualquier otro servidor Linux, requerirá que sepas cómo agregar, editar, suspender o eliminar cuentas de usuario, y otorgar a los usuarios los permisos necesarios para acceder a archivos, directorios y otros recursos del sistema para realizar sus tareas asignadas.

Gestión de cuentas de usuario
Para agregar una nueva cuenta de usuario a un servidor RHEL 7, puedes ejecutar cualquiera de los siguientes dos comandos como root:
# adduser [new_account] # useradd [new_account]
Cuando se agrega una nueva cuenta de usuario, por defecto se realizan las siguientes operaciones.
- Se crea su directorio personal (
/home/username
a menos que se especifique lo contrario). - Estos archivos ocultos
.bash_logout
,.bash_profile
y.bashrc
se copian dentro del directorio personal del usuario, y se utilizarán para proporcionar variables de entorno para su sesión de usuario. Puedes explorar cada uno de ellos para más detalles. - A mail spool directory is created for the added user account.
- A group is created with the same name as the new user account.
El resumen completo de la cuenta se almacena en el archivo /etc/passwd
. Este archivo contiene un registro por cuenta de usuario del sistema y tiene el siguiente formato (los campos están separados por dos puntos):
[username]:[x]:[UID]:[GID]:[Comment]:[Home directory]:[Default shell]
- Estos dos campos
[username]
y[Comentario]
son autoexplicativos. - El segundo campo ‘x’ indica que la cuenta está protegida por una contraseña sombreada (en
/etc/shadow
), que se utiliza para iniciar sesión como[username]
. - Los campos
[UID]
y[GID]
son enteros que muestran la Identificación de Usuario y la Identificación de Grupo primario al que pertenece[username]
, respectivamente.
Finalmente,
- El
[Directorio de inicio]
muestra la ubicación absoluta del directorio de inicio de[nombre de usuario]
, y [Shell predeterminada]
es la shell que se asigna a este usuario cuando inicia sesión en el sistema.
Otro archivo importante con el que debes familiarizarte es /etc/group
, donde se almacena la información de los grupos. Al igual que en /etc/passwd
, hay un registro por línea y sus campos también están delimitados por dos puntos:
[Group name]:[Group password]:[GID]:[Group members]
donde,
[Nombre de grupo]
es el nombre del grupo.- ¿Este grupo utiliza una contraseña de grupo? (Una “x” significa no).
[GID]
: igual que en/etc/passwd
.[Miembros del grupo]
: una lista de usuarios, separados por comas, que son miembros de cada grupo.
Después de agregar una cuenta, en cualquier momento, puedes editar la información de la cuenta de usuario usando usermod, cuya sintaxis básica es:
# usermod [options] [username]
Leer también:
15 Ejemplos del comando ‘useradd’
15 Ejemplos del comando ‘usermod’
EJEMPLO 1: Establecer la fecha de vencimiento de una cuenta
Si trabajas para una empresa que tiene algún tipo de política para habilitar una cuenta durante un cierto intervalo de tiempo, o si deseas otorgar acceso por un período limitado, puedes usar la bandera --expiredate
seguida de una fecha en formato AAAA-MM-DD. Para verificar que el cambio se haya aplicado, puedes comparar la salida
# chage -l [username]
antes y después de actualizar la fecha de vencimiento de la cuenta, como se muestra en la siguiente imagen.

EJEMPLO 2: Agregar al usuario a grupos suplementarios
Además del grupo primario que se crea cuando se agrega una nueva cuenta de usuario al sistema, un usuario puede ser agregado a grupos suplementarios usando las opciones combinadas -aG o –append –groups, seguidas de una lista separada por comas de grupos.
EJEMPLO 3: Cambiar la ubicación predeterminada del directorio de inicio del usuario y/o cambiar su shell
Si por alguna razón necesitas cambiar la ubicación predeterminada del directorio de inicio del usuario (que no sea /home/username), deberás usar las opciones -d o –home, seguidas de la ruta absoluta al nuevo directorio de inicio.
Si un usuario desea usar otra shell que no sea bash (por ejemplo, sh), que se asigna por defecto, usa usermod con la bandera –shell, seguida de la ruta a la nueva shell.
EJEMPLO 4: Mostrar los grupos a los que pertenece un usuario
Después de agregar al usuario a un grupo suplementario, puedes verificar que ahora realmente pertenece a dicho(s) grupo(s):
# groups [username] # id [username]
La siguiente imagen representa Ejemplos 2 a través de 4:

En el ejemplo anterior:
# usermod --append --groups gacanepa,users --home /tmp --shell /bin/sh tecmint
Para eliminar a un usuario de un grupo, omita el interruptor --append
en el comando anterior y liste los grupos a los que desea que el usuario pertenezca siguiendo la bandera --groups
.
EJEMPLO 5: Deshabilitar cuenta bloqueando la contraseña
Para deshabilitar una cuenta, deberá utilizar ya sea la opción -L (L minúscula) o la opción –lock para bloquear la contraseña de un usuario. Esto evitará que el usuario pueda iniciar sesión.
EJEMPLO 6: Desbloquear contraseña
Cuando necesite volver a habilitar al usuario para que pueda iniciar sesión en el servidor nuevamente, utilice la opción -U o la opción –unlock para desbloquear la contraseña de un usuario que fue bloqueada previamente, como se explica en el Ejemplo 5 anterior.
# usermod --unlock tecmint
La siguiente imagen ilustra Ejemplos 5 y 6:

EJEMPLO 7: Eliminar un grupo o una cuenta de usuario
Para eliminar un grupo, querrá utilizar groupdel, mientras que para eliminar una cuenta de usuario utilizará userdel (agregue el interruptor –r si también desea eliminar el contenido de su directorio de inicio y el buzón de correo):
# groupdel [group_name] # Delete a group # userdel -r [user_name] # Remove user_name from the system, along with his/her home directory and mail spool
Si hay archivos propiedad de nombre_grupo, no se eliminarán, pero el propietario del grupo se establecerá en el GID del grupo que se eliminó.
Source:
https://www.tecmint.com/rhcsa-exam-manage-users-and-groups/