Con la finalidad de obtener privacidad, personalización y sobre todo máximo aprovechamiento de los recursos, Linux es un sistema multi-usuario, esto quiere decir que más de una persona puede utilizar el mismo sistema al mismo tiempo.
Desde luego, entre todos estos usuarios es necesario que exista uno que lleve el mando. Ese serías tú: el administrador de sistema. Como tal, tienes la capacidad de manejar los usuarios y grupos de la plataforma, creando, eliminando o asignando usuarios a diferentes grupos del sistema.
Sin embargo, este proceso puede resultar pesado para aquellos que no cuenten con mucha experiencia en este sistema operativo. ¿Quieres saber más al respecto? ¡Sigue leyendo! Porque en este artículo aprenderás cómo crear nuevas cuentas de usuario Linux a través del comando useradd.
Las instrucciones que explicaremos a continuación te van a servir para cualquier distribución de Linux ya sea Ubuntu, Fedora, Debian, CentOs…
Comando useradd
La sintaxis general para el comando useradd
es la siguiente:
useradd [OPTIONS] USERNAME
Sólo los usuarios root con privilegios sudo pueden usar el comando useradd
para crear nuevas cuentas de usuario.
Un comando con resultados inciertos
Cuando insertamos el comando, useradd
crea una nueva cuenta de usuario de acuerdo a las opciones especificadas en la línea de comandos y los valores por defecto establecidos en el archivo /etc/default/useradd/
Las variables definidas en este archivo difieren de distribución a distribución, lo que ocasiona que el comando useradd
produzca resultados distintos según la distribución de Linux que estés usando.
useradd
también lee el contenido del archivo /etc/login.defs
. Dicho archivo contiene configuraciones para el paquete de contraseñas ocultas, tales como políticas de vencimiento de contraseñas, rangos de IDs de usuarios utilizados al crear usuarios normales y de sistema, y otros parámetros detallados.
Cómo crear un nuevo usuario en Linux
Es probable que tu sistema operativo sea compartido, y que hayas llegado a la conclusión de que quieres tener una cuenta para ti solo, ya sea por privacidad o por mera comodidad. Pero ¿Cómo se hace esto?
Para crear una nueva cuenta de usuario, basta con introducir el comando useradd
seguido del nombre de usuario.
Por ejemplo, para crear un usuario llamado jorge
ejecutarías el siguiente comando:
sudo useradd jorge
Cuando sea ejecutado sin ninguna otra opción, el comando useradd
crea una nueva cuenta de usuario a través de las configuraciones por defecto especificadas en el archivo /etc/default/useradd
.
Este comando añade una entrada los archivos /etc/passwd
, /etc/shadow/
y /etc/gshadow/
.
Para poder entrar utilizando el usuario que acabas de crear, sólo necesitas configurar la contraseña de dicho usuario. Para hacerlo, necesitas ejecutar el comando passwd
seguido del nombre de usuario, de esta forma:
sudo passwd jorge
Después de esto, el sistema te invitará a confirmar la contraseña. Por favor, asegúrate de que ingreses una contraseña lo suficientemente fuerte.
Cómo añadir un nuevo usuario y crear un directorio de inicio
En la mayoría de las distribuciones de Linux, cuando se crea una nueva cuenta de usuario con el comando useradd
, el directorio de inicio del usuario no es creado a la par. Esto puede ser problemático y hasta incómodo ¿Cierto? Tranquilo, porque tenemos la solución.
Utiliza la opción –m (--create-home)
para crear el directorio de inicio del usuario como /home/jorge
:
sudo useradd –m jorge
Esta opción crea el directorio de inicio del nuevo usuario y copia archivos del directorio /etc/skel
al drectorio de inicio del usuario.
Dentro del directorio de inicio, el usuario puede escribir, editar y borrar archivos y directorios.
Crear un usuario con un directorio específico de inicio
Por defecto, el comando useradd
crea el directorio de inicio del usuario en /home
. Si quieres crear el directorio de inicio del usuario en otra ubicación, utiliza la opción d (--home)
.
Aquí tenemos un ejemplo mostrando cómo crear un nuevo usuario llamado jorge con un directorio de inicio de /opt/jorge
:
sudo useradd -m -d /opt/jorge jorge
Crear un usuario con un ID de usuario específico
En Linux y todos los sistemas operativos similares a Unix, los usuarios son identificados por un UID y nombre de usuario únicos.
El identificador de usuario (UID) es un entero único asignado por el sistema Linux a cada usuario. El UID y otras políticas de control de acceso se utilizan para establecer los tipos de acciones que un usuario puede ejecutar en los recursos del sistema.
Por defecto, cuando un nuevo usuario es creado, el sistema asigna el siguiente UID disponible de la variedad de ID de usuarios especificados en el archivo login.defs
.
Introduce useradd
con la opción –u (--uid)
para crear un usuario con UID específico. Por ejemplo, para crear un usuario llamado jorge con UID de 2000, ingresarías lo siguiente:
sudo useradd -u 2000 jorge
Si quieres verificar el UID del usuario, puedes hacerlo utilizando el comando id
:
id -u jorge
Salida
2000
Crear un usuario con un ID grupal específico
Los grupos de Linux son unidades organizacionales que son utilizadas para organizar y administrar las cuentas de usuario en Linux. El propósito primario de los grupos es definir un conjunto de privilegios tales como lectura, escritura o ejecución de permisos para determinados recursos que pueden ser compartidos entre los usuarios del grupo.
Cuando estás creando un nuevo usuario, el comportamiento por defecto del comando useradd
es crear un grupo con el mismo nombre que el nombre de usuario, y el mismo GID y UID.
La opción –g (--gid)
te permite crear un usuario con un grupo inicial de acceso. Puedes especificar tanto el nombre del grupo como el número GID, en cualquier caso, deben ser datos que ya existan en el sistema.
El siguiente ejemplo muestra cómo crear un nuevo usuario llamado jorge y establecer el grupo de acceso al grupo estudiantes:
sudo useradd -g estudiantes jorge
Para verificar el GID del usuario, utiliza el comando id
:
id -gn jorge
Salida
estudiantes
Crear un usuario y asignarlo a varios grupos
Hay dos tipos de grupos en los sistemas operativos Linux: el grupo Primario y el grupo Secundario o suplementario. Cada usuario puede pertenecer a, específicamente, un grupo primario, y cero o más grupos secundarios.
Ahora te toca especificar una lista de grupos secundarios de los que el usuario será miembro con la opción –g (--groups)
.
El comando que verás a continuación crea un nuevo usuario llamado jorge cuyo grupo primario es estudiantes y cuyos grupos secundarios son informaticos y programadores
sudo useradd -g estudiantes -G informaticos,programadores jorge
Puedes revisar los grupos del usuario introduciendo esto:
id jorge
Salida
uid=1002(jorge) gid=100(estudiantes) groups=100(estudiantes),10(informaticos),993(programadores)
Cómo crear un usuario con fecha de vencimiento en Linux
Para definir una fecha en la que la cuenta de usuario deje de ser válida, puedes usar la opción –e (--expiredate)
. Esta opción es sumamente útil para crear cuentas temporales.
Si quieres hacerlo de forma sencilla y sin problemas, sólo debes especificar la fecha en formato AAAA-MM-DD.
Por ejemplo, si quieres crear una cuenta llamada jorge con una fecha de vencimiento de 20 de diciembre de 2022 entonces ejecuta el comando de la siguiente manera:
sudo useradd -e 2022-12-20 jorge
Puedes utilizar el comando chage
para revisar la fecha de vencimiento de la cuenta:
sudo chage -l jorge
¡Y listo! Tendrás configurada tu cuenta con fecha de vencimiento.
Crear un usuario de sistema en Linux
En realidad, no hay ninguna diferencia técnica entre un usuario de sistema y uno normal. Generalmente, los usuarios de sistema son creados al instalar el sistema operativo y los nuevos paquetes. Pero si quieres crear una cuenta con privilegios en Linux, te lo mostramos:
Usa la opción –r(--system)
para crear una cuenta de sistema. Por ejemplo, para crear un usuario de sistema llamado jorge deberás ejecutar:
sudo useradd -r jorge
Los usuarios de sistema no tienen fecha de vencimiento. Además, sus UID son escogidos entre una variedad de ID de usuarios de sistema especificados en el archivo login.defs
.
Cambiar los valores useradd predeterminados
Las opciones useradd
por defecto pueden ser revisadas y cambiadas a través de la opción –D.—defaults
o editando manualmente los valores en el archivo /etc/default/useradd
.
Para ver las opciones por defecto actuales, introduce:
useradd –D
La consola de comandos devolverá la siguiente información:
Salida
GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=
SHELL=/bin/sh
SKEL=/etc/skel
CREATE_MAIL_SPOOL=no
Imaginemos que quieres cambiar el Shell de ingreso predeterminado de /bin/sh
a /bin/bash
. Para esto, sólo debes especificar el nuevo Shell de la siguiente forma:
sudo useradd -D -s /bin/bash
Sólo necesitas paciencia para obtener buenos resultados
Contrario a lo que muchos creen, el sistema Linux ofrece diversas ventajas con respecto a otros de la competencia. Si bien no es el más popular, no es una opción que debas dejar pasar desapercibido.
¡Deja de tenerle miedo! Sabemos que puede ser abrumador considerar un nuevo sistema operativo, por eso te ofrecemos una gran variedad de tutoriales de todo tipo. ¿Quieres saber más? Te invitamos a revisar el resto de nuestro contenido, seguro que no te arrepentirás.