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:
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:
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.