CentOS 7 - Crear usuarios en Linux useradd y adduser
Tabla de contenido:
- Comando
useradd
- Cómo crear un nuevo usuario en Linux
- Cómo agregar un nuevo usuario y crear un directorio de inicio
- Crear un usuario con un directorio de inicio específico
- Crear un usuario con ID de usuario específico
- Crear un usuario con ID de grupo específico
- Crear un usuario y asignar múltiples grupos
- Crear un usuario con un shell de inicio de sesión específico
- Crear un usuario con comentario personalizado
- Crear un usuario con una fecha de vencimiento
- Crear un usuario del sistema
- Cambio de los valores predeterminados de useradd
- Conclusión
Linux es un sistema multiusuario, lo que significa que más de una persona puede interactuar con el mismo sistema al mismo tiempo. Como administrador del sistema, usted tiene la responsabilidad de administrar los usuarios y grupos del sistema creando y eliminando usuarios y asignándolos a diferentes grupos.
En Linux, puede crear una cuenta de usuario y asignar el usuario a diferentes grupos con el comando
useradd
.
useradd
es una utilidad de bajo nivel, es más probable que los usuarios de Debian y Ubuntu usen el comando adduser más amigable.
, hablaremos sobre cómo usar el comando
useradd
y explorar sus opciones.
Comando
useradd
La sintaxis general para el comando
useradd
es la siguiente:
useradd USERNAME
Para poder utilizar el comando
useradd
y crear nuevos usuarios, debe iniciar sesión como usuario root o como usuario con acceso sudo.
Cuando se invoca,
useradd
crea una nueva cuenta de usuario utilizando las opciones especificadas en la línea de comando más los valores predeterminados especificados en el
/etc/default/useradd
.
Las variables definidas en este archivo difieren de una distribución a otra, lo que hace que el comando
useradd
produzca diferentes resultados en diferentes sistemas.
El comando también lee el contenido del archivo
/etc/login.defs
. Este archivo contiene la configuración para el conjunto de contraseñas ocultas, como la política de caducidad de contraseñas, los rangos de ID de usuario utilizados al crear usuarios normales y del sistema y más.
Cómo crear un nuevo usuario en Linux
Para crear una nueva cuenta de usuario, escriba
useradd
seguido del nombre de usuario.
Por ejemplo, para crear un nuevo usuario llamado
username
que ejecutaría:
sudo useradd username
En su forma más simple cuando se usa sin ninguna opción, useradd creará una nueva cuenta de usuario con la configuración predeterminada especificada en el
/etc/default/useradd
.
El comando agrega una entrada a los
/etc/passwd
,
/etc/shadow,
/etc/group
y
/etc/gshadow
.
Para poder iniciar sesión como el usuario recién creado, debe establecer la contraseña del usuario. Para hacerlo, ejecute el comando
passwd
seguido del nombre de usuario:
sudo passwd username
Se le pedirá que ingrese y confirme la contraseña. Asegúrate de usar una contraseña segura.
Changing password for user username. New password: Retype new password: passwd: all authentication tokens updated successfully.
Cómo agregar un nuevo usuario y crear un directorio de inicio
En la mayoría de las distribuciones de Linux, al crear una nueva cuenta de usuario con el comando
useradd
no se crea el directorio de inicio del usuario.
Use la opción
-m
(
--create-home
) para crear el directorio de inicio del usuario como
/home/username
:
sudo useradd -m username
El comando anterior crea el directorio de inicio del nuevo usuario y copia archivos del directorio
/etc/skel
directorio de inicio del usuario. Si enumera los archivos en el directorio
/home/username
, verá los archivos de inicialización:
ls -la /home/username/
drwxr-xr-x 2 username username 4096 Dec 11 11:23. drwxr-xr-x 4 root root 4096 Dec 11 11:23.. -rw-r--r-- 1 username username 220 Apr 4 2018.bash_logout -rw-r--r-- 1 username username 3771 Apr 4 2018.bashrc -rw-r--r-- 1 username username 807 Apr 4 2018.profile
Dentro del directorio de inicio, el usuario puede escribir, editar y eliminar archivos y directorios.
Crear un usuario con un directorio de inicio específico
Por ejemplo, para crear un nuevo usuario llamado
username
con un directorio de inicio de
/opt/username
, deberá ejecutar el siguiente comando:
sudo useradd -m -d /opt/username username
Crear un usuario con ID de usuario específico
En sistemas operativos Linux y similares a Unix, los usuarios se identifican por un UID y un nombre de usuario únicos.
El identificador de usuario (UID) es un entero positivo único asignado por el sistema Linux a cada usuario. El UID junto con otras políticas de control de acceso se usa para determinar los tipos de acciones que un usuario puede realizar en los recursos del sistema.
Por defecto, cuando se crea un nuevo usuario, el sistema asigna el siguiente UID disponible del rango de ID de usuario especificado en el archivo
login.defs
.
Use la opción
-u
(
--uid
) para crear un usuario con un UID específico. Por ejemplo, para crear un nuevo usuario llamado
username
con UID de
1500
, escribiría:
sudo useradd -u 1500 username
Puede verificar el UID del usuario, utilizando el comando
id
:
id -u username
Crear un usuario con ID de grupo específico
Los grupos de Linux son unidades de organización que se utilizan para organizar y administrar cuentas de usuario en Linux. El objetivo principal de los grupos es definir un conjunto de privilegios como leer, escribir o ejecutar permisos para un recurso dado que se puede compartir entre los usuarios dentro del grupo.
Al crear un nuevo usuario, el comportamiento predeterminado del comando
useradd
es crear un grupo con el mismo nombre que el nombre de usuario y el mismo GID que UID.
Use la opción
-g
(
--gid
) para crear un usuario con un grupo de inicio de sesión inicial específico. Puede especificar el nombre del grupo o el número GID. El nombre del grupo o GID ya debe existir.
Por ejemplo, para crear un nuevo usuario llamado
username
y establecer el grupo de inicio de sesión en
users
escriba:
sudo useradd -g users username
Para verificar el GID del usuario, use el comando
id
:
id -gn username
Crear un usuario y asignar múltiples grupos
Hay dos tipos de grupos en los sistemas operativos Linux Grupo primario y Grupo secundario o suplementario. Cada usuario puede pertenecer exactamente a un grupo primario y cero o más grupos secundarios.
La opción
-G
(
--groups
) le permite especificar una lista de grupos suplementarios de los que el usuario será miembro.
El siguiente comando creará un nuevo usuario llamado
username
con los
users
grupo primario y la
wheel
y la
docker
grupos secundarios.
sudo useradd -g users -G wheel, developers username
Puede verificar los grupos de usuarios escribiendo
id username
uid=1002(username) gid=100(users) groups=100(users), 10(wheel), 993(docker)
Crear un usuario con un shell de inicio de sesión específico
De manera predeterminada, el shell de inicio de sesión del nuevo usuario se establece en el especificado en el
/etc/default/useradd
. En algunas distribuciones de Linux como Ubuntu 18.04, el shell predeterminado está configurado en
/bin/sh
mientras que en otros está configurado en
/bin/bash
.
La opción
-s
(
--shell
) le permite especificar el shell de inicio de sesión del nuevo usuario.
Por ejemplo, para crear un nuevo usuario llamado
username
con
/usr/bin/zsh
como un tipo de shell de inicio de sesión:
sudo useradd -s /usr/bin/zsh username
Verifique la entrada del usuario en el
/etc/passwd
para verificar el shell de inicio de sesión del usuario:
grep username /etc/passwd
username:x:1001:1001::/home/username:/usr/bin/zsh
Crear un usuario con comentario personalizado
La opción
-c
(
--comment
) le permite agregar una breve descripción para el nuevo usuario. Por lo general, el nombre completo del usuario o la información de contacto se agregan como comentario.
En el siguiente ejemplo, estamos creando un nuevo usuario llamado
username
con cadena de texto
Test User Account
como comentario:
sudo useradd -c "Test User Account" username
El comentario se guarda en el
/etc/passwd
:
grep username /etc/passwd
username:x:1001:1001:Test User Account:/home/username:/bin/sh
El campo de comentarios también se conoce como
GECOS
.
Crear un usuario con una fecha de vencimiento
La opción
-e
(
--expiredate
) le permite definir un momento en el que las nuevas cuentas de usuario caducarán. Esta opción es útil para crear cuentas temporales. La fecha debe especificarse utilizando el
YYYY-MM-DD
.
Por ejemplo, para crear una nueva cuenta de usuario llamada
username
con un tiempo de vencimiento establecido el 22 de enero de 2019, ejecutará:
sudo useradd -e 2019-01-22 username
Puede usar el comando
chage
para verificar la fecha de vencimiento de la cuenta de usuario:
sudo chage -l username
La salida se verá más o menos así:
Last password change: Dec 11, 2018 Password expires: never Password inactive: never Account expires: Jan 22, 2019 Minimum number of days between password change: 0 Maximum number of days between password change: 99999 Number of days of warning before password expires: 7
Crear un usuario del sistema
No existe una diferencia técnica real entre el sistema y los usuarios normales (normales). Normalmente, los usuarios del sistema se crean al instalar el sistema operativo y los nuevos paquetes.
En algunas situaciones, es posible que deba crear un usuario del sistema que será utilizado por alguna aplicación.
Use la opción
-r
(
--system
) para crear una cuenta de usuario del sistema. Por ejemplo, para crear un nuevo usuario del sistema llamado
username
, ejecutaría:
sudo useradd -r username
Los usuarios del sistema se crean sin fecha de vencimiento. Sus UID se eligen del rango de ID de usuario del sistema especificado en el archivo
login.defs
, que es diferente del rango utilizado por los usuarios normales.
Cambio de los valores predeterminados de useradd
Las opciones de useradd predeterminadas se pueden ver y cambiar usando la opción
-D
,
--defaults
o editando manualmente los valores en el
/etc/default/useradd
.
Para ver las opciones predeterminadas actuales, escriba:
useradd -D
La salida se verá más o menos así:
GROUP=100 HOME=/home INACTIVE=-1 EXPIRE= SHELL=/bin/sh SKEL=/etc/skel CREATE_MAIL_SPOOL=no
Supongamos que desea cambiar el shell de inicio de sesión predeterminado de
/bin/sh
a
/bin/bash
. Para hacerlo, especifique el nuevo shell como se muestra a continuación:
sudo useradd -D -s /bin/bash
Puede verificar que el valor de shell predeterminado se cambia ejecutando el siguiente comando:
sudo useradd -D | grep -i shell
Conclusión
En este tutorial, le hemos mostrado cómo crear nuevas cuentas de usuario utilizando el comando
useradd
. Se aplican las mismas instrucciones para cualquier distribución de Linux, incluidos Ubuntu, CentOS, RHEL, Debian, Fedora y Arch Linux.
Siéntase libre de dejar un comentario si tiene alguna pregunta.
grupo de usuarios de terminalCómo crear una base de datos mysql en linux a través de la línea de comando
Este tutorial explica cómo usar la línea de comando para crear bases de datos MySQL o MariaDB.
Cómo crear directorios en linux (comando mkdir)
En los sistemas Linux, puede crear nuevos directorios desde la línea de comandos o con la ayuda del administrador de archivos de su escritorio. El comando que le permite crear directorios (también conocidos como carpetas) es mkdir.
Cómo crear grupos en Linux (comando groupadd)
En este artículo, hablaremos sobre cómo crear nuevos grupos en Linux, utilizando el comando groupadd. Los grupos se utilizan para organizar y administrar cuentas de usuario.