
Sé que es una "mala" idea, sé que no es seguro, lo sé. Busqué una respuesta en la red y todo lo que vi fue quejarme de que no es bueno. Pero me gusta usar Linux porque me permite crear el sistema que quiero y me gusta usar. El final de la introducción.
Intento cambiar la contraseña:
user:~% passwd
Changing password for user.
(current) UNIX password:
Enter new UNIX password:
Retype new UNIX password:
You must choose a longer password
Si lo intento sudo passwd user
, puedo establecer cualquier contraseña que desee, por lo que no necesito comprobaciones de complejidad de la contraseña en mi sistema.
Después de buscar en Google descubrí que debería haberPAMmódulo pam_cracklib que prueba la complejidad de la contraseña y se puede configurar. Pero la configuración de mi contraseña PAM no incluye pam_cracklib:
% cat /etc/pam.d/passwd | grep '^[^#]'
@include common-password
% cat /etc/pam.d/common-password | grep '^[^#]'
password [success=1 default=ignore] pam_unix.so obscure sha512
password requisite pam_deny.so
password required pam_permit.so
password optional pam_gnome_keyring.so
Supongo que pam_unix hace esta prueba... Ups... Chicos, en el momento en que terminé de escribir esta oración, me iluminó y escribí man pam_unix
en la terminal donde encontré las opciones necesarias para el módulo pam_unix.
Acabo de eliminar la opción oscura y agregué minlen=1 y ahora estoy feliz. Entonces ahora tengo esta línea en /etc/pam.d/common-password
:
password [success=1 default=ignore] pam_unix.so minlen=1 sha512
y puedo establecer cualquier contraseña.
Decidí mantener esta publicación para las personas que también puedan necesitar esta solución.
Respuesta1
Ok, responderé mi pregunta :)
Descubrí que pam_unix
el módulo realiza una verificación de la complejidad de la contraseña y se puede configurar.
man pam_unix
:
minlen=n
Set a minimum password length of n characters. The default value is
6. The maximum for DES crypt-based passwords is 8 characters.
obscure
Enable some extra checks on password strength. These checks are
based on the "obscure" checks in the original shadow package. The
behavior is similar to the pam_cracklib module, but for
non-dictionary-based checks.
Solución:
Modifique la línea en el pam_unix
módulo del /etc/pam.d/common-password
archivo para:
password [success=1 default=ignore] pam_unix.so minlen=1 sha512
Le permite configurar cualquier contraseña con una longitud mínima de 1.
Respuesta2
Si es una vez, usando el comando passwd como root, puede establecer una contraseña simple para un usuario simplemente ingresando el valor deseado y luego ingrese la contraseña dos veces cuando se le solicite.
john@workpad:~$ sudo bash
[sudo] password for john:
root@workpad:/home/john# passwd john
New password:
Retype new password:
passwd: password updated successfully
root@workpad:/home/john# exit
exit
john@workpad:~$
Respuesta3
Abra el common-password
archivo de configuración para editarlo:
sudo -H gedit /etc/pam.d/common-password
Comente esta línea agregando el #
carácter al frente como se muestra:
#password [success=2 default=ignore] pam_unix.so obscure use_authtok try_first_pass sha512
También comente esta línea; de lo contrario, la configuración de la contraseña le pedirá que pase una combinación de letras mayúsculas y minúsculas:
#password requisite pam_passwdqc.so enforce=everyone max=18 min=disabled,8,8,1,1 retry=2 similar=deny
Ahora simplemente agregue esta línea en el mismo archivo:
password [success=1 default=ignore] pam_unix.so minlen=1 sha512
esto debería hacerlo...
Respuesta4
Probé TODOS los métodos en una máquina con una instalación extraña y muy estricta usando un PAM resistente a la manipulación.
En esta máquina, ninguno de los trucos anteriores ayudó a cambiar la contraseña de una cuenta local (sin dominio de Windows) a algún valor nuevo. Las reglas PAM siempre se activan, incluso cuando se usa sudo passwd
Los cambios en /etc/pam.d/common-password dieron como resultado que passwd fallara por completo debido a un "error de manipulación".
Mi solución fue establecer la contraseña en otra máquina en la que también tengo acceso root, luego copiar/pegar el valor hash de /etc/shadow de esa máquina a la otra simplemente usando Sudo vi /etc/shadow . El estricto PAM no bloqueó eso y funciona. (sí, ya sé que también copia la sal)