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

48

Sé que es una idea "mala", sé que no es seguro, lo sé. Busqué en la red una respuesta y todo lo que vi fue quejarse de que no era 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:

ruslan:~% passwd
Changing password for ruslan.
(current) UNIX password:
Enter new UNIX password:
Retype new UNIX password:
You must choose a longer password

Si lo intento sudo passwd ruslan, puedo configurar cualquier contraseña que desee para no necesitar verificaciones de complejidad de contraseña para passwd en mi sistema.

Después de buscar en Google, descubrí que debería haber un módulo PAM pam_cracklib que pruebe la complejidad de la contraseña y se pueda configurar. Pero mi configuración de 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 ... Oops ... Chicos, en el momento en que terminé de escribir esta oración, obtuve una iluminación y escribí man pam_unixen el 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 configurar cualquier contraseña que quiera.

Decidí mantener esta publicación para las personas que también podrían necesitar esta solución. Perdón y gracias.

rslnx
fuente
No puedo responder mi propia pregunta durante 8 horas después de preguntar, esperaré :)
rslnx
Simplemente quería cambiar mi pwd a 123. No pude hacer eso con passwd. Intenté "sudo passwd <user_name>" y funcionó de maravilla. No necesitaba descansar del mumbo-jumbo. Gracias por esa parte! :)
zeFree
@zeFree, el punto clave de mi solución es permitir que cualquier usuario (que no tenga permisos de sudo) use contraseñas simples
rslnx
1
Gran introducción Tengo una computadora portátil con Windows que gasta 50% de ciclos de CPU protegiéndome de los virus. ¿Adivina qué? No necesita ningún virus. La computadora ya no tiene valor. Entonces ... Linux nos permite hacer lo que queramos. Estoy detrás de un firewall y la computadora no sale de mi casa. Contraseña corta? Sí por favor.
javadba
@rslnx Creo que cuando publica su pregunta, le da la opción de proporcionar una respuesta de inmediato; Creo que el retraso de 8 horas solo está ahí si no publica su par de Q / A al mismo tiempo
jrh

Respuestas:

53

Ok, responderé mi pregunta :)

Descubrí que el pam_unixmódulo realiza una comprobació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 del pam_unixmódulo en el /etc/pam.d/common-passwordarchivo para:

password    [success=1 default=ignore]  pam_unix.so minlen=1 sha512

Le permite establecer cualquier contraseña con una longitud mínima de 1.

rslnx
fuente
Detalles relacionados con la complejidad de la contraseña: askubuntu.com/questions/244115/…
Kevin Bowen
11

Si es una vez, utilizando el comando passwd como root, puede establecer una contraseña simple para un usuario simplemente ingresando el valor deseado.

sudo su && passwd username

y luego ingrese la contraseña dos veces en las indicaciones.

sweetfa
fuente
1
Quiere decir que hacer sudo su && passwd usernameeso, Linux le permitirá usar cualquier contraseña que desee.
usuario
7

Abra el archivo de configuración de contraseña común para editar

sudo gedit /etc/pam.d/common-password

Comenta esta línea:

#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 contraseña le pedirá que pase una combinación de letras mayúsculas / minúsculas:

#password   requisite           pam_passwdqc.so enforce=everyone max=18 min=disabled,8,8,1,1 retry=2 similar=deny

ahora solo agregue esta línea en el mismo archivo:

password    [success=1 default=ignore]  pam_unix.so **minlen=1** sha512

esto debería hacerlo ...

rptr87
fuente
Para su información, no hay línea pam_passwdqc.so en mi instalación predeterminada del servidor 14.04. ¿Quizás alguien (administrador) lo agregó a propósito? ;)
Tomofumi