GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo crear/agregar usuarios en Linux

Introducción

Linux es un entorno multiusuario y el aprovisionamiento de usuarios es una responsabilidad esencial en la gestión del sistema. Los administradores del sistema agregan, eliminan y administran usuarios y grupos en el sistema.

El useradd El comando proporciona varias opciones, lo que da como resultado una forma completa de automatizar la administración de identidades y accesos.

Este artículo muestra cómo crear y agregar usuarios en Linux.

Requisitos previos

  • Acceso a la terminal para ejecutar los comandos.
  • Accede a un usuario con permisos sudo o root.
  • Un editor de texto, como nano o Vim.
  • Comandos básicos de Linux (obtenga nuestra hoja de trucos de comandos de Linux).

Sintaxis del comando useradd

La sintaxis básica para useradd el comando es:

useradd <options> <username>

Ejecutar el comando crea una nueva cuenta de usuario o actualiza un usuario existente según los valores en:

  • /etc/default/useradd - Los valores predeterminados para el useradd comando.
  • /etc/login.defs - Valores de control de configuración para el paquete de inicio de sesión.
  • El <options> proporcionado con el comando, que actualizan o anulan la configuración predefinida.

Los valores predeterminados varían entre diferentes sistemas.

Las reglas limitan el nombre de usuario a:

  • Longitud entre 1 y 32 caracteres.
  • El nombre de usuario comienza con una letra minúscula o un guión bajo.
  • El nombre de usuario puede contener cualquier combinación de letras mayúsculas y minúsculas, números, guiones y guiones bajos.
  • El nombre de usuario puede terminar en un signo de dólar ($ ).

La expresión regular para verificar la validez del nombre de usuario es:

[a-z_][a-z0-9_-]*[$]

Nota: Debian sigue un conjunto diferente de reglas para los nombres de usuario. Sin embargo, las reglas provistas son un buen punto de partida para todos los sistemas para ayudar a evitar problemas.

Además, el comando también crea un grupo para el nuevo usuario. Agregar un nuevo usuario requiere permisos sudo para modificar los archivos para almacenar información de usuarios y grupos.

Opciones de comando useradd

El useradd El comando viene con varias opciones. Las opciones comunes se encuentran en la siguiente tabla:

Opción Descripción
-b <directory>
--base-dir <directory>
Establece un directorio base predeterminado para el sistema.
-c <information>
--comment <information>
Establece una breve descripción del usuario, como el nombre completo o el rol.
-d <home directory>
--home-dir <home directory>
El directorio de inicio de sesión del usuario.
-D
--defaults
Muestra los valores predeterminados o los cambia cuando se combinan con otras opciones.
-e <YY-MM-DD>
--expiredate <YY-MM-DD>
La fecha en que caduca la cuenta de usuario.
-f <days>
--inactive <days>
Establece el tiempo en días que la cuenta se vuelve inactiva después de que expira la contraseña.
-g <name or number>
--gid <name or number>
Establece el grupo de inicio de sesión inicial del usuario.
-G <group1,group2,etc>
--groups <group1,group2,etc>
Agrega usuarios a grupos adicionales.
-k <skeleton directory>
--skel <skeleton directory>
Copia archivos y directorios en el directorio de inicio del usuario.
-m
--create-home
Crea un directorio de inicio para un usuario si no existe.
-M
--no-create-home
No crea un directorio de inicio (anula la configuración del sistema).
-o
--non-unique
Combina con -u para permitir UID duplicados.
-p <password>
--password <password>
Establece la contraseña del usuario (no recomendado).
-r
--system
Agrega una cuenta del sistema.
-s <shell path>
--shell <shell path>
Define el shell de inicio de sesión del usuario.
-u <uid>
--uid <uid>
ID de valor numérico único.
-U
--user-group
Crea un grupo con el mismo nombre que el usuario y agrega el usuario al grupo.

Creación de nuevos usuarios en Linux

La creación de nuevos usuarios en Linux hace lo siguiente:

1. Proporciona un UID y un GID únicos .

  • 0 está reservado para root y se asigna automáticamente.
  • 1-999 es para cuentas y servicios del sistema.
  • 1000 y superiores son para usuarios habituales.

Nota: Los números varían entre los diferentes sistemas operativos. Los valores de ejemplo son para Ubuntu.

2. Edita archivos que almacenan información de la cuenta.

  • /etc/contraseña - Enumera todos los usuarios registrados en el sistema.
  • /etc/sombra - Almacena contraseñas de usuario encriptadas.
  • /etc/grupo - Define grupos de usuarios.
  • /etc/gshadow - Almacena contraseñas de grupo encriptadas.

3. Establece permisos de usuario en el directorio de inicio a través del grupo.

Nota: Linux también proporciona un comando para modificar usuarios existentes con usermod.

Siga los ejemplos a continuación para ver cómo agregar usuarios en Linux.

Agregar un usuario en Linux

Para agregar un usuario en Linux, ejecute el siguiente comando en la terminal:

sudo useradd <username>

Si se le solicita, ingrese la contraseña sudo para continuar.

Sin ninguna opción, el useradd El comando agrega un usuario según las opciones predefinidas en /etc/useradd expediente. El nuevo usuario está bloqueado y requiere una contraseña para desbloquearlo. Use el comando passwd para desbloquear la cuenta:

sudo passwd <username>

El comando solicita ingresar y confirmar la contraseña.

Nota: Las contraseñas son un aspecto de seguridad importante. Consulta nuestra guía para obtener ideas sobre contraseñas seguras.

Después de crear una contraseña, aparece automáticamente una nueva entrada en /etc/passwd expediente. Para ver la información, vea el archivo con el comando cat y grep para el usuario:

sudo cat /etc/passwd | grep <username>

Los campos tienen el siguiente formato:

username:password:UID:GID:info:/home/directory:shell/path

El x carácter representa y oculta la contraseña del usuario por razones de seguridad. La contraseña cifrada está en /etc/shadow expediente.

Agregar un usuario en Linux y crear un directorio de inicio

Por defecto, el useradd El comando no crea un directorio de inicio. El /etc/contraseña El archivo muestra un enlace absoluto (/home/ ). Si el directorio no existe, el usuario redirige a casa (/ ) después de iniciar sesión.

Para crear un usuario y el directorio de inicio automáticamente, use el -m opción:

sudo useradd -m <username>

Compruebe si el directorio existe con el comando ls:

ls -lah /home/<username>

El directorio contiene archivos de inicialización copiados de /etc/skel directorio.

Adición de un usuario con un directorio de inicio específico

Para agregar un usuario en Linux con un directorio de inicio específico, use el -m opción con -d y proporcione la ruta del directorio:

sudo useradd -m -d <path> <username>

El useradd El comando advierte que el directorio ya existe y no copia archivos de /etc/skel . Utilice esta opción para crear un directorio de inicio personalizado o compartido.

Adición de un usuario sin directorio de inicio

Si /etc/login.defs configuración CREATE_HOME el valor de la variable es yes , el useradd El comando crea automáticamente un directorio de inicio.

Para anular la configuración predeterminada y agregar un usuario sin un directorio de inicio, use el -M opción:

sudo useradd -M <username>

El comando agrega al usuario sin crear un directorio de inicio, anulando la configuración predeterminada.

Adición de un usuario con ID de usuario específico

Para agregar un usuario con una identificación de usuario específica, use el -u etiquete y proporcione el UID:

sudo useradd -u <uid> <username>

Si el UID no es único, el terminal emite un mensaje y no agrega al usuario. Verifica el UID con el id comando:

id <username>

Utilice un UID superior a 1000 para indicar un usuario normal.

Adición de un usuario con ID de grupo específico

Para crear un usuario y agregarlo a un grupo específico, use el -g etiqueta:

sudo useradd -g <group name or GID> <username>

El nombre del grupo o GID debe existir. De lo contrario, el comando arroja un error. Verifique el GID del usuario con:

id <username>

La salida imprime el ID de grupo del usuario.

Adición de un usuario a varios grupos

Agregue un usuario a varios grupos con el -G y enumere los nombres de grupo o GID en una lista separada por comas, seguida del nombre de usuario. Por ejemplo:

sudo useradd -G <group1,group2,group3> <username>

Verifique los grupos de usuarios con:

id <username>

Los grupos deben existir y la lista no debe contener espacios. El comando no agrega al usuario si no existe ningún grupo.

Nota: Para agregar un usuario existente a un grupo, consulte la siguiente guía:Cómo agregar un usuario a un grupo en Linux.

Agregar un usuario con un shell de inicio de sesión específico

Cada nuevo usuario obtiene un shell de inicio de sesión predeterminado (como el Bourne shell o el Bourne Again Shell). Para definir explícitamente el shell del usuario, agregue el -s etiquete y proporcione la ruta del shell:

sudo useradd -s <shell path> <username>

Por ejemplo, para agregar un usuario y configurar Bash como shell de inicio de sesión predeterminado, ejecute:

sudo useradd -s /bin/bash <username>

Compruebe el /etc/passwd archivo para confirmar la selección de shell:

cat /etc/passwd | grep <username>

El campo final muestra el shell de inicio de sesión para el nuevo usuario.

Adición de un usuario con un comentario específico

Para agregar un usuario con un comentario específico, ejecute:

sudo useradd -c <comment> <username>

Para ver el comentario, consulte /etc/passwd archivo y grep para el usuario:

sudo cat /etc/passwd | grep <username>

El comentario es solo para fines descriptivos y no tiene ninguna funcionalidad real.

Agregar un usuario con fecha de caducidad de la cuenta

Agregue un usuario con una fecha de caducidad de la cuenta para eliminar automáticamente la cuenta después de la fecha proporcionada:

sudo useradd -e <YY-MM-D> <username>

Ver la información de caducidad de la cuenta con:

sudo chage -l <username>

La salida imprime la fecha de caducidad de la cuenta (Account expires ). Utilice esta opción para cuentas temporales.

Adición de un usuario con un período de desactivación

Si un usuario tiene configurada una caducidad de contraseña, el useradd El comando permite establecer un período antes de que la cuenta se desactive después del vencimiento. Si una cuenta caduca, el período de caducidad permitirá a los usuarios cambiar su contraseña y reactivar la cuenta.

Usa el -f comando y agregue el número de días:

sudo useradd -f <days> <username>

Por ejemplo, para que una cuenta se desactive tres días después de que caduque la contraseña, ejecute:

sudo useradd -f 3 <username>

Ver la información de caducidad con:

sudo cat /etc/shadow | grep <username>

El /etc/sombra El archivo almacena información de contraseñas, incluido el tiempo de inactividad (tercero al último campo).

Utilice este método para desactivar a los usuarios que no cambien su contraseña en el plazo previsto.

El período de desactivación es una buena medida de seguridad, y la duración recomendada es de 35 días. Los requisitos comerciales dictan cuál es la duración perfecta antes de que caduque la cuenta. Si el valor es demasiado bajo, las consecuencias son costosas para un administrador, mientras que un valor alto afecta la seguridad.

Adición de un usuario del sistema

Los programas y sistemas crean cuentas de usuario del sistema, que son diferentes de los usuarios regulares. Los programas como MySQL o Tomcat requieren una cuenta de usuario única para trabajar en el sistema, y ​​los demonios suelen crear usuarios del sistema durante la instalación.

Para crear un usuario del sistema, use el -r opción:

sudo useradd -r <username>

Verifique la información del usuario con:

sudo cat /etc/passwd | grep <username>

El usuario tiene un UID inferior a 1000, lo que indica que es un usuario del sistema.

El comando agregarusuario

El adduser El comando es una forma alternativa de agregar usuarios a un sistema Linux y actúa como una interfaz interactiva simple para useradd .

Para agregar un usuario, ejecute:

sudo adduser <username>

El comando imprime el usuario y el grupo en la consola.

A continuación, el comando solicita lo siguiente:

  • Contraseña, que se debe volver a ingresar para continuar.
  • Información del usuario. Los datos actúan como un comentario (igual que useradd -c comando y opción).

Presiona Y para completar el proceso. En caso de error, presione N y vuelva a ingresar la información correcta.

Verifique los parámetros del adduser comando con:

sudo cat /etc/passwd | grep <username>

El comando agrega todos los valores ingresados ​​durante la ejecución del comando y el shell Bash por defecto.

Añadir varios usuarios

El useradd y adduser Los comandos no admiten agregar varios usuarios a la vez. Para agregar varios usuarios, use un bucle for de Bash en un script o en la terminal directamente para recorrer una lista de nombres de usuario.

Nota: Aprenda cuáles son las diferencias entre los comandos useradd y adduser.

Por ejemplo, para agregar diez usuarios, haga lo siguiente:

1. Cree un archivo de texto usando un editor de texto:

nano user_list.txt

2. Agregue nombres de usuario al archivo, ingresando cada uno en una nueva línea. Por ejemplo:

alice
bob
charlie
dave

Guarde el archivo y cierre nano (CTRL +X , Y , luego Introducir ).

3. Usa un for haga un bucle para ver los nombres en el archivo y ejecute useradd en cada:

for i in `cat ~/user_list.txt` ; do useradd $i ; done

4. Mostrar los usuarios creados con:

for i in `cat ~/user_list.txt` ; do id $i ; done

Para agregar contraseñas, intercambie el comando en el do cláusula con passwd e ingrese la contraseña para cada usuario. Alternativamente, use el comando expect para automatizar el proceso de creación de contraseñas, especialmente si trabaja con una gran cantidad de usuarios.

Conclusión

Después de completar esta guía, sabrá cómo agregar nuevos usuarios a un sistema Linux con el useradd dominio.

A continuación, lea sobre la administración de acceso privilegiado y cómo ayuda a reducir los ataques de seguridad y las filtraciones de datos.


Linux
  1. Cómo agregar un usuario a un grupo en Linux

  2. Cómo crear un usuario de Linux usando Ansible

  3. Cómo administrar usuarios con useradd en linux

  4. Cómo crear un usuario Sudo en Rocky Linux 8

  5. Cómo crear un nuevo directorio en Linux

Cómo crear usuarios en Linux (comando useradd)

Cómo crear usuarios usando el comando Useradd en Linux

Cómo crear y administrar nuevos usuarios en Linux

Cómo agregar un usuario a un grupo en Linux

Cómo agregar un usuario a un grupo de Linux

Cómo agregar o crear un usuario sudo en el sistema Linux [inicio rápido]