¿Cómo cambiar/deshabilitar la prueba de complejidad de la contraseña al cambiar la contraseña?

¿Cómo cambiar/deshabilitar la prueba de complejidad de la contraseña al cambiar la contraseña?

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_unixen 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_unixel 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_unixmódulo del /etc/pam.d/common-passwordarchivo 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-passwordarchivo 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)

información relacionada