Original article: Linux: How to Add Users and Create Users with useradd

Si más de una persona está usando su máquina Linux en casa, o si estás administrando un servidor que brinda acceso a múltiples usuarios, el comando useradd  es esencial para crear nuevos usuarios.

Además, muchos de los servicios que utilizas como desarrollador pueden requerir sus propias cuentas de usuario para funcionar. Entonces, incluso como desarrollador independiente en tu propia máquina es posible que busques estos comandos cuando instales MySQL o algo similar.

Puedes obtener una descripción general completa de las diversas opciones disponibles viendo la documentación del manual de la utilidad: man useradd.

Pero si eso resulta abrumador, aquí hay un desglose de algunas de las opciones comunes que puedes usar al crear un usuario.

Crear un usuario

El formato simple para este comando es useradd [opciones] NOMBREDEUSUARIO.

Por ejemplo: useradd test (anteponer sudo si no has iniciado sesión como usuario root).

Esto creará un usuario llamado test, pero es una operación limitada y no generará otras cosas útiles como su carpeta de inicio (home), o su palabra clave (password).

Añadir una palabra clave

Luego puedes añadir una palabra clave para el usuario test usando el comando: passwd test. A continuación te pedirá que ingreses una palabra clave para el usuario.

Hay una opción para añadir una palabra clave encriptada a través de la opción -p en useradd, pero no es recomendable por razones de seguridad.

Ten en cuenta que la opción -p no te permite ingresar una palabra clave como texto sin formato, sino que espera que lo encriptes primero. Esto es intencionalmente difícil porque no deberías hacerlo. Simplemente, utiliza el comando passwd.

Otras opciones comunes

Carpetas de inicio

Para crear un usuario con la carpeta de inicio predeterminada (home) utiliza la siguiente opción:

useradd -m test

Este usuario ahora tiene una carpeta /home/test.

Para crear la carpeta de inicio con otro nombre puedes utilizar la opción -d, por ejemplo, del siguiente modo:

useradd -m -d /nombre-de-carpeta test

Shell (intérprete de comandos)

De manera predeterminada, es probable que tus usuarios creados tengan el shell de inicio de sesión bin/bash o bin/sh, que estará definido en /etc/default/useradd.

Puedes anular este valor predeterminado y definir otro con la opción -s del siguiente modo:

useradd -s usr/bin/zsh test

Poniéndolo todo junto

Para construir el comando completo, tienes que poner las opciones una tras otra - sin importar el orden - y terminal con el nombre de usuario que quieres crear.

Entonces, crear un usuario con una carpeta de inicio "home" y un shell personalizado se vería así:

useradd -m -s /usr/bin/zsh user

Y luego tendrías que añadir una palabra clave para el usuario: passwd user

Lee el manual

Ahora que has visto lo básico de lo que puede hacer esta herramienta, esperamos que la página man sea un poco navegable.

man useradd te mostrará como añadir cosas, como una fecha de vencimiento de la cuenta, asignar grupos, entre otras.