… porque de algo hay que morir, supongo.
Para el siguiente truco necesito los programas adduser, chage, pwgen y passwd. Y el resultado final serán cuentas de usuario en un sistema Linux a las que se forzará un cambio de contraseña en la primera conexión (en la que se utilice PAM, claro).
Primero creamos la cuenta de usuario de la siguiente manera:
$ sudo adduser --disabled-login --gecos "Usuario de prueba" locatis Añadiendo el usuario `locatis' ... Añadiendo el nuevo grupo `locatis' (1003) ... Añadiendo el nuevo usuario `locatis' (1003) con grupo `locatis' ... Creando el directorio personal `/home/locatis' ... Copiando los ficheros desde `/etc/skel' ...
No ha sido necesario proporcionar más información y siempre podemos añadirle el grupo inicial si nos hace falta.
Después le asignamos una contraseña que previamente generamos aleatóriamente con doce caracteres de longitud:
$ pwgen 12 1 oa4OoCh6Lic5 $ sudo passwd locatis Introduzca la nueva contraseña de UNIX: Vuelva a escribir la nueva contraseña de UNIX: passwd: contraseña actualizada correctamente $
Y por último cambiamos la fecha de expiración de dicha contraseña:
$ sudo chage -d 0 locatis
Ahora probaremos a conectar vía SSH con la cuenta recién creada:
$ ssh locatis@localhost locatis@localhost's password: You are required to change your password immediately (root enforced) Linux gladius 4.9.0-4-amd64 #1 SMP Debian 4.9.51-1 (2017-09-28) x86_64 The programs included with the Debian GNU/Linux system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. WARNING: Your password has expired. You must change your password now and login again! Cambiando la contraseña de locatis. (actual) contraseña de UNIX:
Y si no introducimos una contraseña y su verificación
(actual) contraseña de UNIX: passwd: Error de manipulación del testigo de autenticación passwd: no se ha cambiado la contraseña Connection to localhost closed. $
Nos sigue valiendo la contraseña que hemos creado pero se le ha denegado el acceso que es justo lo que queremos.
¿ Y todo esto a qué viene ?
Pues a que algunos se dedican a la informática, tienen que acceder a sistemas ajenos para hacer cosas de informáticos, y no saben (o no quieren saber) lo que es el correo electrónico cifrado para recibir credenciales.
Y así vamos.