[2024-feb-29] Sad news: Eric Layton aka Nocturnal Slacker aka vtel57 passed away on Feb 26th, shortly after hospitalization. He was one of our Wiki's most prominent admins. He will be missed.

Welcome to the Slackware Documentation Project

Gestión de usuarios y grupos

¿Qué son los usuarios y los grupos?

Slackware Linux hereda una fuerte tradición multiusuario de su inspiración UNIX. Esto significa que varias personas pueden usar el sistema a la vez, pero también significa que cada una de estas personas puede tener diferentes permisos. Esto permite a los usuarios evitar que otros modifiquen sus archivos, o permite a los administradores del sistema definir explícitamente lo que los usuarios pueden y no pueden hacer en el sistema. Además, los usuarios no necesitan ser personas reales en absoluto. De hecho, Slackware incluye varias docenas de cuentas de usuarios y grupos predefinidas que los usuarios normales no suelen utilizar. Más bien, estas cuentas permiten al administrador del sistema segmentar el sistema por razones de seguridad. Veremos cómo se hace en el siguiente capítulo sobre permisos de sistemas de archivos.

Administrar usuarios y grupos

Añadiendo usuarios y grupos

La forma más fácil de agregar nuevos usuarios en Slackware es mediante el uso de nuestro muy fino shell script adduser . adduser le pedirá que ingrese los detalles del nuevo usuario que desea crear y lo guiará a través del proceso de manera rápida y sencilla. Incluso creará una contraseña para el nuevo usuario.

darkstar:~# adduser

Login name for new user []: david

User ID ('UID') [ defaults to next available ]: 

Initial group [ users ]: 
Additional UNIX groups:

Users can belong to additional UNIX groups on the system.
For local users using graphical desktop login managers such
as XDM/KDM, users may need to be members of additional groups
to access the full functionality of removable media devices.

* Security implications *
Please be aware that by adding users to additional groups may
potentially give access to the removable media of other users.

If you are creating a new user for remote shell access only,
users do not need to belong to any additional groups as standard,
so you may press ENTER at the next prompt.

Press ENTER to continue without adding any additional groups
Or press the UP arrow to add/select/edit additional groups
:  audio cdrom floppy plugdev video

Home directory [ /home/david ] 

Shell [ /bin/bash ] 

Expiry date (YYYY-MM-DD) []: 

New account will be created as follows:

---------------------------------------
Login name.......:  david
UID..............:  [ Next available ]
Initial group....:  users
Additional groups:  audio,cdrom,floppy,plugdev,video
Home directory...:  /home/david
Shell............:  /bin/bash
Expiry date......:  [ Never ]

This is it... if you want to bail out, hit Control-C.  Otherwise, press
ENTER to go ahead and make the account.

Creating new account...

Changing the user information for david
Enter the new value, or press ENTER for the default
	Full Name []: 
	Room Number []: 
	Work Phone []: 
	Home Phone []: 
	Other []: 
Changing password for david
Enter the new password (minimum of 5, maximum of 127 characters)
Please use a combination of upper and lower case letters and numbers.
New password: 
Re-enter new password: 
Password changed.

Account setup complete.

La adición de grupos opcionales necesita un poco de explicación. Cada usuario en Slackware tiene un solo grupo del que siempre es miembro. Por defecto, este es el grupo “usuarios”. Sin embargo, los usuarios pueden pertenecer a más de un grupo a la vez y heredarán todos los permisos de cada grupo al que pertenecen. Los usuarios de escritorio típicos deberán agregar varias membresías de grupo para hacer cosas como reproducir sonido o acceder a medios extraíbles como cdroms o unidades flash USB. Simplemente puede presionar la tecla de flecha hacia arriba en esta sección y aparecerá mágicamente una lista de grupos predeterminados para usuarios de escritorio. Por supuesto, puede agregar o eliminar grupos de este listado.

Ahora que hemos demostrado cómo usar el programa interactivo adduser , veamos algunas herramientas poderosas no interactivas que quizás desee utilizar. El primero es useradd (8). useradd es un poco menos amigable, pero mucho más rápido para crear usuarios en lotes. Esto lo hace ideal para su uso en shell scripts. De hecho, adduser es un script de shell de este tipo y utiliza useradd para la mayor parte del trabajo pesado. useradd tiene muchas opciones y no podemos explicarlas todas aquí, así que consulte su página de manual para obtener todos los detalles. Ahora, hagamos un nuevo usuario.

darkstar:~# useradd -d /data/home/alan -s /bin/bash -g users -G audio,cdrom,floppy,plugdev,video alan

Aquí he añadido el usuario “alan” . Especifiqué el directorio de inicio del usuario como /data/home/alan y utilicé bash como mi shell. Además, especifiqué mi grupo predeterminado como “users” y me agregué a una serie de grupos útiles para uso dekstop. Notará que useradd no realiza ninguna solicitud como adduser . A menos que desee aceptar los valores predeterminados para todo, deberá indicar a useradd qué hacer.

Ahora que sabemos cómo agregar usuarios, debemos aprender cómo agregar grupos. Como habrá adivinado, el comando para hacer esto es groupadd (8). groupadd funciona de la misma manera que useradd , pero con muchas menos opciones. El siguiente comando agrega el grupo “slackers” al sistema.

darkstar:~# groupadd slackers

Eliminar usuarios y grupos también es fácil. Simplemente ejecuta el comando userdel (8) y/o groupdel (8). Por defecto, userdel dejará el directorio de inicio del usuarioen el sistema. Puede eliminar esto con el argumento - r .

Otras herramientas de usuario y grupo

Existen varias otras herramientas para la gestión de usuarios y grupos. Quizás el más importante es passwd (1). Este comando cambia la contraseña de una cuenta de usuario. Los usuarios normales pueden cambiar sus propias contraseñas solamente, pero root puede cambiar la contraseña de cualquier persona. Además, root puede bloquear una cuenta de usuario con la opción -l . En realidad, esto no cierra la cuenta, sino que cambia la contraseña cifrada del usuario a un valor que no se puede comparar.

La forma más sencilla de modificar la información de un usuario es la utilidad usermod (8) que es capaz de modificar todo, desde la membresía de un grupo hasta los directorios principales. No se proporcionará una lista completa de sus características aquí, así que consulte la página de manual. usermod es quizás la mejor herramienta para usar para modificar los miembros del grupo de un usuario. Las opciones - s y - G logran esto.

darkstar:~# usermod -a -G wheel alan
darkstar:~# usermod -G wheel alan

Es importante tener en cuenta las diferencias en los dos comandos anteriores. El primer comando agrega el usuario “alan” al grupo “wheel” sin modificar ningún otro grupo al que pertenece “alan” . El segundo comando también hace de “alan” un miembro del grupo “wheel”, pero también elimina la membresía del usuario de cualquier otro grupo, ¡algo que rara vez querrá hacer!

Otra herramienta útil es chsh (1) que cambia el shell predeterminado de un usuario. Al igual que passwd , los usuarios normales solo pueden cambiar su propio shell, pero el usuario root puede cambiar el de cualquier persona.

La última herramienta que vamos a discutir es chfn (1). Esto se utiliza para ingresar información de identificación sobre el usuario, como su número de teléfono y su nombre real. Esta información se almacena en el archivo passwd (5) y se recupera utilizando finger (1).

Gestionar usuarios y grupos manualmente

Como la mayoría de las cosas en Slackware Linux, los usuarios y grupos se almacenan en archivos de texto sin formato. Esto significa que puede editar todos los detalles de un usuario, o incluso crear un nuevo usuario o grupo simplemente editando estos archivos y realizando otras tareas, como crear el directorio de inicio del usuario. Por supuesto, después de ver cómo se hace esto, apreciará lo simples que son las herramientas incluidas para hacer esta tarea.

Nuestra primera parada es el archivo /etc/passwd . Aquí, toda la información sobre un usuario se almacena, excepto por (lo bastante extraña) la contraseña del usuario. La razón de esto es bastante simple. /etc/passwd debe ser legible por todos los usuarios del sistema, por lo que no querrá que las contraseñas se almacenen allí, incluso si están cifradas. Echemos un vistazo rápido a mi entrada en este archivo.

alan:x:1000:100:,,,:/home/alan:/bin/bash

Cada línea de este archivo contiene varios campos separados por dos puntos. Son, de izquierda a derecha: nombre de usuario, contraseña, UID, UID, campo de comentarios, directorio de inicio y shell. Notará que el campo de contraseña para cada entrada es una x. Esto se debe a que Slackware usa contraseñas ocultas, por lo que la contraseña cifrada real se almacena en /etc/shadow. Echemos un vistazo allí.

alan:$1$HlR?M3fkL@oeJmsdLfhsLFM*4dflPh8:14197:0:99999:7:::

El archivo shadow contiene algo más que la contraseña cifrada, como se dará cuenta. Los campos aquí, de nuevo de izquierda a derecha, son: nombre de usuario, contraseña encriptada, último día en que se cambió la contraseña, días antes de que la contraseña pueda ser cambiada de nuevo, cuántos días antes de que caduque la contraseña, los días en que la cuenta se desactivará después de que caduque , cuando la cuenta fue deshabilitada, y un campo reservado. Puede observar en algunas cuentas que el campo “días” a menudo incluyen números muy grandes. La razón de esto es que Slackware cuenta el tiempo desde “Epoch” que es el 1 de enero de 1970 por razones históricas.

Para crear una nueva cuenta de usuario, solo tendrá que abrir estos archivos usando vipw (8). Esto abrirá /etc/passwd en el editor definido por su variable VISUAL o su variable EDITOR si VISUAL no está definido. Si ninguno de los dos está presente, volverá a vi por defecto. Si pasa el argumento - s , se abrirá /etc/shadow en su lugar. Es importante usar vipw en lugar de usar cualquier otro editor, porque vipw bloqueará el archivo e impedirá que otros programas lo editen justo cuando usted lo está haciendo.

Eso no es todo lo que tendrás que hacer sin embargo; también debes crear el directorio de inicio del usuario y cambiar la contraseña del usuario utilizando passwd .

Capítulo anterior: Impresión

Capítulo siguiente: Permisos del sistema de archivos

Fuentes

  • Escrito originalmente por Alan Hicks, Chris Lumens, David Cantrell, Logan Johnson
  • Traducido por: Victor 2019/02/01 20:04 (UTC)

 es:slackbook:users ()