Manuales para la línea de comandos

Man » Manual de useradd en línea - documentación en línea detallada para la página de manual de useradd

🌍
useradd - crear un nuevo usuario o actualizar la información predeterminada del nuevo usuario

SINTAXIS

useradd [opciones] NOMBRE_DE_INICIO_DE_SESIÓN

useradd -D

useradd -D [opciones]

DESCRIPCIÓN

useradd es una utilidad de bajo nivel para agregar usuarios. En Debian, los administradores generalmente deben usar

adduser(8) en su lugar.

Cuando se invoca sin la opción -D, el comando useradd crea una nueva cuenta de usuario utilizando los valores especificados en la línea de comandos más los valores predeterminados del sistema. Dependiendo de las opciones de la línea de comandos, el comando useradd actualizará los archivos del sistema y también puede crear el nuevo directorio de inicio del usuario y copiar los archivos iniciales.

De forma predeterminada, también se creará un grupo para el nuevo usuario (consulte -g, -N, -U y USERGROUPS_ENAB).

OPCIONES

Las opciones que se aplican al comando useradd son:

--badname

Permitir nombres que no cumplan con los estándares.

-b, --base-dir DIRECTORIO_BASE

El directorio base predeterminado para el sistema si no se especifica -d DIRECTORIO_INICIO. DIRECTORIO_BASE es concatenado con el nombre de la cuenta para definir el directorio de inicio.

Si no se especifica esta opción, useradd utilizará el directorio base especificado por la variable HOME en /etc/default/useradd o /home por defecto.

-c, --comment COMENTARIO

Cualquier cadena de texto. Generalmente es una descripción corta de la cuenta y, actualmente, se utiliza como el campo para el nombre completo del usuario.

-d, --home-dir DIRECTORIO_INICIO

El nuevo usuario se creará utilizando DIRECTORIO_INICIO como el valor para el directorio de inicio de sesión del usuario. El valor predeterminado es agregar el NOMBRE_DE_INICIO a DIRECTORIO_BASE y usar eso como el nombre del directorio de inicio de sesión. El directorio DIRECTORIO_INICIO no se crea de forma predeterminada. Sin embargo, se creará para los usuarios que no sean del sistema si se especifica el indicador -m o si CREATE_HOME en login.defs está configurado como verdadero. Sin embargo, nunca se creará si se especifica el indicador -M.

-D, --defaults

Consulte la sección a continuación, "Cambiar los valores predeterminados".

-e, --expiredate FECHA_DE_EXPIRACIÓN

Establece la fecha en la que la cuenta de usuario se deshabilitará. El valor se puede especificar como una fecha en el formato AAAA-MM-DD o como un número de días desde 1970-01-01. La fecha se interpreta utilizando la zona horaria UTC.

Si no se especifica, useradd utiliza la fecha de caducidad predeterminada especificada por la variable EXPIRE en /etc/default/useradd o una cadena vacía (sin caducidad) por defecto.

-f, --inactive INACTIVO

Define el número de días después de que una contraseña exceda su edad máxima antes de que la cuenta de usuario se bloquee. Si el usuario no cambia su contraseña dentro de este período de tiempo, su cuenta se vuelve inactiva. Este valor se almacena en el archivo de contraseñas shadow. Para obtener más información, consulte shadow(5).


Un valor de 0 deshabilita la cuenta cuando la contraseña caduca, sin demora.

Un valor de -1 vacía el campo respectivo en el archivo de contraseñas de shadow, lo que significa que el período de inactividad no se aplicará.

Si no se especifica, useradd utiliza el período de inactividad predeterminado especificado por la variable INACTIVE en /etc/default/useradd, o -1 por defecto si no se especifica ningún valor.

-F, --add-subids-for-system

Actualiza /etc/subuid y /etc/subgid incluso al crear una cuenta de sistema con la opción -r.

-g, --gid GROUP

El nombre o el número del grupo primario del usuario. El nombre del grupo debe existir. Un número de grupo debe referirse a un grupo ya existente.

Si no se especifica, el comportamiento de useradd dependerá de la variable USERGROUPS_ENAB en /etc/login.defs. Si esta variable está configurada en sí (o si se especifica -U/--user-group en la línea de comandos), se creará un grupo para el usuario, con el mismo nombre que el nombre de inicio de sesión. Si la variable está configurada en no (o si se especifica -N/--no-user-group en la línea de comandos), useradd establecerá el grupo primario del nuevo usuario en el valor especificado por la variable GROUP en /etc/default/useradd, o 100 por defecto.

-G, --groups GROUP1[,GROUP2,...[,GROUPN]]]

Una lista de grupos suplementarios de los que también es miembro el usuario. Cada grupo se separa del siguiente por una coma, sin espacios en blanco intermedios. Los grupos están sujetos a las mismas restricciones que el grupo especificado con la opción -g. El valor predeterminado es que el usuario pertenezca solo al grupo inicial. Además de pasar la opción -G, puede agregar la opción GROUPS al archivo /etc/default/useradd, lo que agregará a todos los usuarios a esos grupos suplementarios.

-h, --help

Muestra el mensaje de ayuda y sale.

-k, --skel SKEL_DIR

El directorio de plantilla, que contiene archivos y directorios que se copiarán en el directorio de inicio del usuario cuando el directorio de inicio sea creado por useradd.

Esta opción solo es válida si se especifica la opción -m (o --create-home).

Si no se especifica esta opción, el directorio de plantilla se define mediante la variable SKEL en /etc/default/useradd o, por defecto, /etc/skel.

Los enlaces simbólicos absolutos que enlazan al directorio de plantilla tendrán el prefijo /etc/skel reemplazado por el directorio de inicio del usuario.

Si es posible, se copian las ACL y los atributos extendidos.

-K, --key KEY=VALUE

Anula los valores predeterminados de /etc/login.defs (UID_MIN, UID_MAX, UMASK, PASS_MAX_DAYS y otros).

Ejemplo: -K PASS_MAX_DAYS =-1 se puede utilizar al crear una cuenta para desactivar el envejecimiento de la contraseña. Se pueden especificar múltiples opciones -K, por ejemplo: -K UID_MIN =100 -K UID_MAX=499

-l, --no-log-init

No agregue al usuario a las bases de datos lastlog y faillog.

Por defecto, las entradas del usuario en las bases de datos lastlog y faillog se restablecen para evitar reutilizar la entrada de un usuario eliminado anteriormente.

Si no se especifica esta opción, useradd también consultará la variable LOG_INIT en /etc/default/useradd; si está configurada en no, el usuario no se agregará a las bases de datos lastlog y faillog.


-m, --create-home
Crea el directorio de inicio del usuario si no existe. Los archivos y directorios contenidos en el directorio de plantilla (que se puede definir con la opción -k) se copiarán al directorio de inicio.

Por defecto, si no se especifica esta opción y CREATE_HOME no está habilitado, no se crean directorios de inicio.

El directorio donde se crea el directorio de inicio del usuario debe existir y tener el contexto y los permisos SELinux adecuados. De lo contrario, el directorio de inicio del usuario no se puede crear ni acceder a él.

-M, --no-create-home
No cree el directorio de inicio del usuario, incluso si la configuración del sistema desde /etc/login.defs (CREATE_HOME) está configurada en sí.

-N, --no-user-group
No cree un grupo con el mismo nombre que el usuario, sino que agregue el usuario al grupo especificado por la opción -g o por la variable GROUP en /etc/default/useradd.

El comportamiento predeterminado (si no se especifican las opciones -g, -N y -U) está definido por la variable USERGROUPS_ENAB en /etc/login.defs.

-o, --non-unique
permite la creación de una cuenta con un UID ya existente.

Esta opción solo es válida en combinación con la opción -u. Dado que la identidad de un usuario sirve como clave para establecer la correspondencia entre los usuarios, por un lado, y los permisos, la propiedad de los archivos y otros aspectos que determinan el comportamiento del sistema, por otro lado, más de un nombre de inicio de sesión accederá a la cuenta del UID dado.

-p, --password PASSWORD
define una contraseña inicial para la cuenta. Se espera que PASSWORD esté encriptada, como la devuelta por crypt (3). Dentro de un script de shell, esta opción permite crear de manera eficiente lotes de usuarios.

Sin esta opción, la nueva cuenta estará bloqueada y no tendrá contraseña definida, es decir, un signo de exclamación en el campo correspondiente de /etc/shadow. Este es un estado en el que el usuario no podrá acceder a la cuenta ni definir una contraseña por sí mismo.

Nota: Evite esta opción en la línea de comandos porque la contraseña (o la contraseña encriptada) será visible para los usuarios que muestren los procesos.

Debe asegurarse de que la contraseña cumpla con la política de contraseñas del sistema.

-r, --system
Crea una cuenta de sistema.

Los usuarios del sistema se crearán sin información de envejecimiento en /etc/shadow, y sus identificadores numéricos se elegirán en el rango SYS_UID_MIN-SYS_UID_MAX, definido en /etc/login.defs, en lugar de UID_MIN-UID_MAX (y sus contrapartes GID para la creación de grupos).

Tenga en cuenta que useradd no creará un directorio de inicio para dicho usuario, independientemente de la configuración predeterminada en /etc/login.defs (CREATE_HOME). Debe especificar las opciones -m si desea que se cree un directorio de inicio para una cuenta de sistema.

Tenga en cuenta que esta opción no actualizará /etc/subuid y /etc/subgid. Debe especificar las opciones -F si desea actualizar los archivos para que se cree una cuenta de sistema.

-R, --root CHROOT_DIR
Aplique los cambios en el directorio CHROOT_DIR y utilice los archivos de configuración del directorio CHROOT_DIR. Solo se admiten rutas absolutas.

-P, --prefix DIRECTORIO_PREFIJO
Aplica los cambios a los archivos de configuración que se encuentran debajo del sistema de archivos raíz que se encuentra en el directorio DIRECTORIO_PREFIJO. Esta opción no realiza un chroot y está destinada a preparar un destino de compilación cruzada. Algunas limitaciones: los usuarios/grupos NIS y LDAP no se verifican. La autenticación PAM utiliza los archivos del host. No hay soporte para SELINUX.

-s, --shell SHELL
establece la ruta al shell de inicio de sesión del usuario. Sin esta opción, el sistema utilizará la variable SHELL especificada en /etc/default/useradd o, si tampoco está configurada, el campo del shell de inicio de sesión en /etc/passwd permanecerá vacío.

-u, --uid UID
El valor numérico del ID del usuario. Este valor debe ser único, a menos que se utilice la opción -o. El valor debe ser no negativo. El valor predeterminado es utilizar el ID más pequeño mayor o igual a UID_MIN y mayor que todos los demás usuarios.

-U, --user-group
Crea un grupo con el mismo nombre que el usuario y agrega el usuario a este grupo.

El comportamiento predeterminado (si no se especifican las opciones -g, -N y -U) está definido por la variable USERGROUPS_ENAB en /etc/login.defs.

-Z, --selinux-user SEUSER
define el usuario de SELinux para la nueva cuenta. Sin esta opción, SELinux utiliza el usuario predeterminado. Tenga en cuenta que el sistema shadow no almacena el selinux-user, utiliza semanage(8) para ello.

--selinux-range SERANGE
define el rango MLS de SELinux para la nueva cuenta. Sin esta opción, SELinux utiliza el rango predeterminado. Tenga en cuenta que el sistema shadow no almacena el selinux-range, utiliza semanage(8) para ello.

Esta opción solo es válida si se especifica la opción -Z (o --selinux-user).

Cambiando los valores predeterminados

Cuando se invoca solo con la opción -D, useradd mostrará los valores predeterminados actuales. Cuando se invoca con -D más otras opciones, useradd actualizará los valores predeterminados para las opciones especificadas. Las opciones válidas para cambiar los valores predeterminados son:

-b, --base-dir DIRECTORIO_BASE
establece el prefijo de ruta para el directorio de inicio de un nuevo usuario. El nombre del usuario se agregará al final de DIRECTORIO_BASE para formar el nombre del directorio de inicio del nuevo usuario, si no se utiliza la opción -d al crear una nueva cuenta.

Esta opción establece la variable HOME en /etc/default/useradd.

-e, --expiredate FECHA_EXPIRACION
establece la fecha en la que las cuentas de usuario recién creadas se desactivan.

Esta opción establece la variable EXPIRE en /etc/default/useradd.

-f, --inactive INACTIVO
especifica el número de días después de que una contraseña expire durante los cuales el usuario aún puede iniciar sesión. Después de este período, la cuenta se bloquea.

Esta opción establece la variable INACTIVE en /etc/default/useradd.

-g, --gid GRUPO
establece el grupo primario predeterminado para los usuarios recién creados, aceptando nombres de grupos o un ID de grupo numérico. El grupo con nombre debe existir, y el GID debe tener una entrada existente.

Esta opción establece la variable GROUP en /etc/default/useradd.

-s, --shell SHELL
define el shell de inicio de sesión predeterminado para los nuevos usuarios.

Esta opción establece la variable SHELL en /etc/default/useradd.

NOTAS

El administrador del sistema es responsable de colocar los archivos de usuario predeterminados en el directorio /etc/skel/ (o en cualquier otro directorio de plantilla especificado en /etc/default/useradd o en la línea de comandos).

PRECAUCIONES

No se puede agregar un usuario a un grupo NIS o LDAP. Esto debe realizarse en el servidor correspondiente.

De manera similar, si el nombre de usuario ya existe en una base de datos de usuarios externa, como NIS o LDAP, useradd denegará la solicitud de creación de la cuenta de usuario.

Los nombres de usuario solo pueden contener letras mayúsculas y minúsculas, dígitos, guiones bajos o guiones. Pueden terminar con un signo de dólar. Los guiones no están permitidos al principio del nombre de usuario. Los nombres de usuario totalmente numéricos y los nombres de usuario . o .. también están prohibidos. No se recomienda utilizar nombres de usuario que comiencen con el carácter . ya que sus directorios de inicio estarán ocultos en la salida de ls.

Los nombres de usuario pueden tener hasta 256 caracteres de longitud.

CONFIGURACIÓN

Las siguientes variables de configuración en /etc/login.defs cambian el comportamiento de esta herramienta:

CREATE_HOME (booleano)

Indica si se debe crear un directorio de inicio de forma predeterminada para los nuevos usuarios.

Esta configuración no se aplica a los usuarios del sistema y se puede anular en la línea de comandos.

GID_MAX (número), GID_MIN (número)

Rango de ID de grupo que se utilizan para la creación de grupos regulares por useradd, groupadd o newusers.

El valor predeterminado para GID_MIN (resp. GID_MAX) es 1000 (resp. 60000).

HOME_MODE (número)

El modo para los nuevos directorios de inicio. Si no se especifica, se utiliza la UMASK para crear el modo.

useradd y newusers utilizan esto para establecer el modo del directorio de inicio que crean.

LASTLOG_UID_MAX (número)

ID de usuario máximo para el cual se deben actualizar las entradas de lastlog. Dado que los ID de usuario más altos generalmente son rastreados por servicios remotos de identidad y autenticación de usuarios, no hay necesidad de crear un archivo lastlog grande y disperso para ellos.

La ausencia de la opción LASTLOG_UID_MAX en la configuración significa que no hay límite de ID de usuario para escribir entradas lastlog.

MAIL_DIR (cadena)

El directorio del spool de correo. Esto es necesario para manipular el buzón cuando se modifica o elimina la cuenta de usuario correspondiente. Si no se especifica, se utiliza un valor predeterminado en tiempo de compilación. El parámetro CREATE_MAIL_SPOOL en /etc/default/useradd determina si se debe crear el spool de correo.

MAIL_FILE (cadena)

Define la ubicación de los archivos de spool de correo de los usuarios en relación con su directorio de inicio.

Las variables MAIL_DIR y MAIL_FILE se utilizan por useradd, usermod y userdel para crear, mover o eliminar el spool de correo del usuario.

MAX_MEMBERS_PER_GROUP (número)

Número máximo de miembros por entrada de grupo. Cuando se alcanza el máximo, se inicia una nueva entrada de grupo (línea) en /etc/group (con el mismo nombre, la misma contraseña y el mismo GID).

El valor predeterminado es 0, lo que significa que no hay límites en el número de miembros en un grupo.

Esta característica (división de grupo) permite limitar la longitud de las líneas en el archivo de grupo. Esto es útil para asegurarse de que las líneas para los grupos NIS no tengan más de 1024 caracteres.


Si necesita aplicar dicha limitación, puede utilizar 25.

Nota: la división de grupos puede no ser compatible con todas las herramientas (incluso en el conjunto de herramientas Shadow).
No debe utilizar esta variable a menos que realmente la necesite.

PASS_MAX_DAYS (número)

El número máximo de días que una contraseña puede utilizarse. Si la contraseña es más antigua que este valor, se forzará un cambio de contraseña. Si no se especifica, se asumirá -1 (lo que desactiva la restricción).

PASS_MIN_DAYS (número)

El número mínimo de días permitidos entre los cambios de contraseña. Cualquier intento de cambio de contraseña que se realice antes de este tiempo se rechazará. Si no se especifica, se asumirá 0 (lo que desactiva la restricción).

PASS_WARN_AGE (número)

El número de días de advertencia que se muestran antes de que una contraseña caduque. Un valor de cero significa que la advertencia se muestra solo el día de la caducidad, y un valor de -1 significa que no se muestra ninguna advertencia. Si no se especifica, no se proporcionará ninguna advertencia.

SUB_GID_MIN (número), SUB_GID_MAX (número), SUB_GID_COUNT (número)

Si existe /etc/subuid, los comandos useradd y newusers (a menos que el usuario ya tenga identificadores de grupo subordinados) asignan SUB_GID_COUNT identificadores de grupo no utilizados del rango SUB_GID_MIN a SUB_GID_MAX para cada nuevo usuario.

Los valores predeterminados de SUB_GID_MIN, SUB_GID_MAX, SUB_GID_COUNT son respectivamente 100000, 600100000 y 65536.

SUB_UID_MIN (número), SUB_UID_MAX (número), SUB_UID_COUNT (número)

Si existe /etc/subuid, los comandos useradd y newusers (a menos que el usuario ya tenga identificadores de usuario subordinados) asignan SUB_UID_COUNT identificadores de usuario no utilizados del rango SUB_UID_MIN a SUB_UID_MAX para cada nuevo usuario.

Los valores predeterminados de SUB_UID_MIN, SUB_UID_MAX, SUB_UID_COUNT son respectivamente 100000, 600100000 y 65536.

SYS_GID_MAX (número), SYS_GID_MIN (número)

Rango de identificadores de grupo utilizados para la creación de grupos de sistema por useradd, groupadd o newusers.

El valor predeterminado para SYS_GID_MIN (resp. SYS_GID_MAX) es 101 (resp. GID_MIN-1).

SYS_UID_MAX (número), SYS_UID_MIN (número)

Rango de identificadores de usuario utilizados para la creación de usuarios de sistema por useradd o newusers.

El valor predeterminado para SYS_UID_MIN (resp. SYS_UID_MAX) es 101 (resp. UID_MIN-1).

UID_MAX (número), UID_MIN (número)

Rango de identificadores de usuario utilizados para la creación de usuarios regulares por useradd o newusers.

El valor predeterminado para UID_MIN (resp. UID_MAX) es 1000 (resp. 60000).

UMASK (número)

La máscara de creación de modo de archivo se inicializa con este valor. Si no se especifica, la máscara se inicializará con 022.

useradd y newusers utilizan esta máscara para establecer el modo del directorio de inicio que crean si no se establece HOME_MODE.

También se utiliza por pam_umask como el valor umask predeterminado.

USERGROUPS_ENAB (booleano)

Si se establece en sí, userdel eliminará el grupo del usuario si no contiene más miembros, y useradd creará por defecto un grupo con el nombre del usuario.

ARCHIVOS

/etc/passwd

Información de la cuenta de usuario.

/etc/shadow

Información segura de la cuenta de usuario.

/etc/group

Información de la cuenta de grupo.

/etc/gshadow

Información segura de la cuenta de grupo.


/etc/default/useradd

Valores predeterminados para la creación de cuentas.

/etc/shadow-maint/useradd-pre.d/*, /etc/shadow-maint/useradd-post.d/*

Archivos de secuencia para ejecutar durante la adición de usuarios. La variable de entorno ACTION se llenará con useradd y SUBJECT con el nombre de usuario. useradd-pre.d se ejecutará antes de cualquier adición de usuario. useradd-post.d se ejecutará después de la adición de usuario. Si un script sale con un valor distinto de cero, la ejecución se detendrá.

/etc/skel/

Directorio que contiene archivos predeterminados.

/etc/subgid

ID de grupo subordinados por usuario.

/etc/subuid

ID de usuario subordinados por usuario.

/etc/login.defs

Configuración del conjunto de contraseñas de Shadow.

VALORES DE SALIDA

El comando useradd sale con los siguientes valores:

0   éxito

1   no se puede actualizar el archivo de contraseñas

2   sintaxis de comando no válida

3   argumento no válido para la opción

4   UID ya en uso (y no se especifica -o)

6   el grupo especificado no existe

9   nombre de usuario o nombre de grupo ya en uso

10  no se puede actualizar el archivo de grupo

12  no se puede crear el directorio de inicio

14  no se puede actualizar el mapeo de usuario de SELinux

19  nombre de usuario o nombre de grupo no válido

VER TAMBIÉN

chfn(1), chsh(1), passwd(1), crypt(3), groupadd(8), groupdel(8), groupmod(8), login.defs(5), newusers(8), subgid(5), subuid(5), userdel(8), usermod(8).