Linux Usuarios/Grupos/Contraseñas (Debian)
Conceptos Básicos
- Identificación: el login que el usuario esta introduciendo
- Autentifican: la contraseña
Los Usuarios se identifican mediante un UID (user ID ) utilizado para el control de derechos en su conexión y un GID (Group ID único)
un usuario dispone de:
- un login (suele tener una longitud de 8 caracteres y no tiene que empezar por una cifra)
- un UID (con valor inferior a 100 (cuentas especiales) siendo el valor 0 el usuario Root) y superiores a 100 usuarios sin privilegios
- GID (correspondiente al grupo principal)
- una descripción
- un directorio de conexión
- un comando de conexión
Ficheros
/etc/passwd
contiene un listado de usuarios locales representados por 7 campos
login:password:UID:GID:comentario:Homedir:Shelll
- nombre de usuario
- en antiguas versiones si aparece una x encontramos el pass en /etc/shadow
- user id
- grupo principal
- comentario
- directorio de trabajo personal
- shell por defecto o comando
/etc/group
contiene la definicion de los grupos de los usuarios y con ellos sus grupos secundarios
Group:password:GID:user1,user2
pese modificar los usuarios el sistema no reaccionaria a cambios ya que lo gestiona el.
/etc/shadow
este fichero va junto al etc/passwd ya que contiene la contraseña cifrada de los usuarios y esta compuesto por 9 campos
- login
- contraseña cifrada $xx$ indica el tipo de cifrado
- dias de cambiode contraseña desde el 1/1/1970
- dias sin poder cambiar la contraseña 0 puede cambiar en cualquier momento.
- dias apartir de que se puede cambiar la contraseña
- dias ates de vencer la contraseña
- dias despues de vencer la contraseña para anular la cuenta
- dias desde que se desactivo la contraseña
- reservadi
Tipos de cifrado
- $1$ = MD5
- $2a$ = Blowfish
- $5 = SHA-256
- $6=SHA-516
- Otro: DES
como curiosidad de la captura siguiente no he podido acceder al shadow con un un usuario estandar he accedido como root y el cifrado del pass en Debian es $6=SHA-516
/etc/gshadow
Igual que el punto anterior pero para grupos
Añadiendo un nuevo usuairo
comando useradd
useradd <options> login
si no se especifican opciones se usan los valores por defecto en /etc/defaults/useradd
-m crea el directorio personal
-u especifica el valor del UID
-g especifica el grupo primario GID
-G Grupos secundarios separados por comas
-d ruta al directorio personal
-c comentario asociado a la cuenta
-k ruta del directorio que contiene el esqueleto del arbol /etc/skell
-s Shell
-p contraseña del usuario (la contraseña tiene que estar ya cifrada se aconseja utilizar el comando passwd)
#useradd -m -u 1011 -g users -G finanzas,comercial -s /bin/bash -d /home/maria -c «cuenta de maria» maria
ponemos contraseña a maria
#passwd maria
Opciones de shadow como root
-l lock bloquea la cuenta al añadir delante ! de la contraseña cifrada
-u Desbloquea la cuenta
-d suprime la contraseña de la cuenta
-n <j> duracion de la vida de la contraseña en dias
-x <j> vida maxima de la contraseña
-w<j> dias antes del aviso
-i <j> periodo de gracia antes de desactivar la cuenta
-S estatus de la cuenta
#passwd -n 10 -x 55 -w 14 -i 2 maria
tiene que esperar 10 dias despues del ultimo cambio de contraseña para modificarla nuevamente, su contraseña sera valida durante 55 dias y se le avisara 14 dias antes de que caduque y despues de esos dias tendra un plus de 2 dias antes de que quede bloqueada.
Modificar un usuario usermod (con los comandos del useradd)
eliminar usuaro userdel
Administración de grupos
Creación
#groupadd <Nombre del grupo> (-g para modificar el GID)
comando groupmod modifica el grupo
-n nombre Renombrar el grupo
-g <GID> Se modifica el GID (No se modifica al grupo al que pertenecen los ficheros correspondientes)
-A <user> Añade el usuario especificado en el grupo (secundario)
-R <user> Suprime el usuario especificado
comando groupdel suprimir un grupo
#groupdel <nombre del grupo>