Domina los comandos useradd, passwd y group en Linux paso a paso

DUGLAS MORENODUGLAS MORENO 👁 19

Introducción

En este post vamos a desglosar tres comandos esenciales para la gestión de usuarios y grupos en cualquier distribución de Linux: useradd, passwd y group. Te explicaré qué hace cada uno, su sintaxis básica, las opciones más utilizadas y, por supuesto, ejemplos prácticos que podés copiar y pegar en la terminal. Al final incluiremos una sección con los errores más comunes y buenas prácticas para que no te trabes al administrar tu servidor.

1. useradd

¿Qué hace?

useradd crea una nueva cuenta de usuario en el sistema. No asigna una contraseña ni configura su directorio home de forma automática (salvo que le indiques lo contrario).

Sintaxis básica

useradd [opciones] nombre_usuario

Opciones/flags más usadas

Opción Descripción
-m Crea el directorio home del usuario (/home/nombre_usuario).
-d /ruta Define una ruta personalizada para el home.
-s /bin/bash Especifica el shell por defecto (bash, zsh, etc.).
-G grupo1,grupo2 Añade al usuario a grupos suplementarios.
-c "Comentario" Comentario o nombre completo del usuario.
-u UID UID explícito (útil para usuarios de servicios).

Ejemplos prácticos

# Crear al usuario "juan" con su home y shell bash
sudo useradd -m -s /bin/bash juan

# Crear "maria" y asignarle a los grupos "docker" y "www-data"
sudo useradd -m -G docker,www-data -c "Maria Pérez" maria

# Crear un usuario del sistema sin login (por ejemplo, para un daemon)
sudo useradd -r -s /usr/sbin/nologin backup

2. passwd

¿Qué hace?

passwd permite establecer o cambiar la contraseña de un usuario. También sirve para bloquear o desbloquear cuentas.

Sintaxis básica

passwd [opciones] [nombre_usuario]

Opciones/flags más usadas

Opción Descripción
-l Bloquea la cuenta (añade ! al password hash).
-u Desbloquea la cuenta.
-d Elimina la contraseña (permite login sin password).
-e Fuerza el cambio de contraseña al próximo login.

Ejemplos prácticos

# Asignar una nueva contraseña a "juan"
sudo passwd juan

# Bloquear la cuenta de "maria"
sudo passwd -l maria

# Forzar a "backup" a cambiar su contraseña al iniciar sesión
sudo passwd -e backup

3. group

¿Qué hace?

El comando group maneja grupos del sistema. Se utiliza principalmente para crear, modificar y eliminar grupos.

Sub‑comandos más comunes

Sub‑comando Descripción
addgroup nombre Crea un nuevo grupo.
delgroup nombre Elimina un grupo existente.
modgroup -n nuevo_nombre nombre Cambia el nombre de un grupo.
gpasswd -a usuario grupo Añade usuario al grupo.
gpasswd -d usuario grupo Quita usuario del grupo.

Ejemplos prácticos

# Crear el grupo "desarrolladores"
sudo groupadd desarrolladores

# Añadir a "juan" al grupo "desarrolladores"
sudo gpasswd -a juan desarrolladores

# Quitar a "maria" del grupo "docker"
sudo gpasswd -d maria docker

# Renombrar el grupo "www-data" a "web"
sudo groupmod -n web www-data

4. Errores comunes y buenas prácticas

Error frecuente Por qué ocurre Buenas prácticas
Olvidar el flag -m al crear usuarios El usuario no tiene directorio home y al intentar iniciar sesión falla. Siempre usar -m salvo que el home sea gestionado manualmente.
No asignar una contraseña después de crear el usuario El usuario queda sin acceso y puede generar confusión. Ejecutar passwd nombre_usuario inmediatamente después de useradd.
Añadir usuarios a grupos con usermod -G sin la opción -a Reemplaza los grupos existentes, dejando al usuario sin pertenencias previas. Usar usermod -a -G grupo1,grupo2 usuario o gpasswd -a.
Usar UID/GID fijos sin control Puede generar conflictos con usuarios del sistema. Reservar rangos de UID/GID: <1000 para sistema, >1000 para usuarios normales.
No validar la política de contraseñas Contraseñas débiles comprometen la seguridad. Configurar PAM (/etc/pam.d/common-password) y usar passwd -e para forzar cambios periódicos.

Checklist rápido antes de cerrar la sesión

  1. Verificar que el usuario tenga home (/etc/passwd).
  2. Confirmar que la contraseña esté seteada y que no esté bloqueada.
  3. Chequear la pertenencia a grupos con id nombre_usuario.
  4. Revisar que los UID/GID no colisionen con otros usuarios.

Con estos pasos y los ejemplos anteriores, ya podés administrar usuarios y grupos en Linux de forma segura y eficiente. ¡A practicar y no temer a la línea de comandos!

Comentarios (0)

Sé el primero en comentar.

Dejá tu comentario