Product SiteDocumentation Site

8.4. Bases de datos de usuarios y grupos

The list of users is usually stored in the /etc/passwd file, while the /etc/shadow file stores hashed passwords. Both are text files, in a relatively simple format, which can be read and modified with a text editor. Each user is listed there on a line with several fields separated with a colon (“:”).

8.4.1. Lista de usuarios: /etc/passwd

Esta es una lista de los campos en el archivo /etc/passwd:
  • nombre de usuario, por ejemplo rhertzog;
  • contraseña: esta es una contraseña cifrada por una función unidireccional (crypt), que utiliza DES, MD5, SHA-256 o SHA-512. El valor especial «x» indica que la contraseña cifrada está almacenada en /etc/shadow;
  • uid: número único que identifica a cada usuario;
  • gid: número único del grupo principal del usuario (de forma predeterminada, Debian crea un grupo específico para cada usuario);
  • GECOS: campo de datos que generalmente contiene el nombre completo del usuario;
  • directorio de inicio de sesión, asignado al usuario para almacenar sus archivos personales (al que generalmente apunta la variable de entorno $HOME);
  • programa a ejecutar al iniciar sesión. Generalmente es un intérprete de órdenes (consola) que le da libertad al usuario. Si especifica /bin/false (que no hace nada y vuelve el control inmediatamente), el usuario no podrá iniciar sesión.

8.4.2. El archivo de contraseñas ocultas y cifradas: /etc/shadow

El archivo /etc/shadow contiene los siguientes campos:
  • nombre de usuario;
  • contraseña cifrada;
  • varios campos que administran el vencimiento de la contraseña.

8.4.3. Modificación de una cuenta o contraseña existente

The following commands allow modification of the information stored in specific fields of the user databases: passwd permits a regular user to change their password, which in turn, updates the /etc/shadow file; chfn (CHange Full Name), reserved for the super-user (root), modifies the GECOS field. chsh (CHange SHell) allows the user to change their login shell; however, available choices will be limited to those listed in /etc/shells; the administrator, on the other hand, is not bound by this restriction and can set the shell to any program of their choosing.
Finalmente chage (cambiar edad: «CHange AGE») permite al administrador cambiar la configuración de expiración de la contraseña (la opción -l usuario mostrará la configuración actual). También puede forzar la expiración de una contraseña utilizando la orden passwd -e usuario, que obligará al usuario a cambiar su contraseña la próxima vez que inicie sesión.

8.4.4. Desactivación de una cuenta

Puede llegar a necesitar «desactivar una cuenta» (bloquear el acceso a un usuario) como castigo, para una investigación o simplemente en caso de una ausencia prolongada o definitiva de un usuario. Una cuenta desactivada significa que el usuario no podrá iniciar sesión y obtener acceso a la máquina. La cuenta se mantiene intacta en el equipo y no se eliminarán archivos o datos; simplemente es inaccesible. Puede lograr esto utilizando passwd -l usuario (bloquear: «lock»). Puede reactivar la cuenta de forma similar, utilizando la opción -u (desbloquear: «unlock»).

8.4.5. Lista de grupos: /etc/group

Se enumeran los grupos en el archivo /etc/group, una simple base de datos de texto en un formato similar al del archivo /etc/passwd con los siguientes campos:
  • nombre del grupo;
  • contraseña (opcional): sólo es utilizada para unirse a un grupo cuando no es un miembro normal (con newgrp o sg, revise el recuadro VOLVER A LOS CIMIENTOS Trabajar con varios grupos);
  • gid: número único de identificación del grupo;
  • lista de miembros: lista separados por comas de nombres de usuario que son miembros del grupo.
The addgroup and delgroup commands add or delete a group, respectively. The groupmod command modifies a group's information (its gid or identifier). The command gpasswd group changes the password for the group, while the gpasswd -r group command deletes it.