Estoy usando Fedora 19. De manera predeterminada, está configurado con pam para deshabilitar las contraseñas incorrectas, como "contraseña". Esto es bueno. Intentar cambiar este valor predeterminado es exasperante. Esta es una caja para probar cosas internas, no conectadas a Internet, ni ninguna máquina que lo esté. Las contraseñas incorrectas facilitan el proceso de prueba. Alternativamente, ¿cómo diablos cambias los requisitos de contraseña?
autenticación del sistema
man pam_cracklib
tiene algunos excelentes ejemplos de establecer diferentes requisitos de contraseña. Entonces abro /etc/pam.d/system-auth
, que es donde ves líneas como:
#%PAM-1.0
# This file is auto-generated.
# User changes will be destroyed the next time authconfig is run.
password requisite pam_pwquality.so try_first_pass retry=3 authtok_type=
password sufficient pam_unix.so sha512 shadow nullok try_first_pass use_authtok
password required pam_deny.so
*oficina central*. En mi experiencia, advertencias como esta significan que sus cambios se borran cada vez que se ejecuta el administrador de paquetes y / o al azar.
authconfig
Entonces ... authconfig
es el siguiente paso. Busco todos los archivos llamados "authconfig". /etc/sysconfig/authconfig
parece prometedor. Y, no hay advertencia en la parte superior sobre la destrucción de mis ediciones por capricho. Encuentro esta línea USEPWQUALITY=yes
y la cambio. Ahora corro:
# authconfig --test
<snip>
pam_pwquality is enabled (try_first_pass retry=3 authtok_type=)
<snip>
wtf. Entonces leamos man authconfig
un poco más de cerca. Oh! Parece que ese archivo no es leído por authconfig, ha cambiado . Entonces ... ¿cómo se configura authconfig? El manual sugiere system-config-authentication
que instalo y no proporciona nada parecido a una casilla de verificación para deshabilitar pam_pwquality. La siguiente sugerencia del manual son las opciones de línea de comandos. ¡Excelente! Me encantan las herramientas de línea de comandos. Solo que ninguna de las opciones de línea de comandos documentadas desactiva pam_pwquality.
pwquality.conf
Gracias a la respuesta de Aaron, supe que hace un par de años Fedora decidió hacer /etc/security/pwquality.conf
el lugar para configurar los requisitos de calidad de la contraseña. Desafortunadamente, como se documenta en el archivo y en man 5 pwquality.conf
, no hay (1) una forma de deshabilitar la verificación del diccionario y (2) no se puede establecer la longitud de contraseña permitida por debajo de seis.
yum remove pam
elimina, por lo que puedo decir por el tiempo que lleva desplazar todos sus paquetes dependientes, todo . Incluyendo yum y systemd. Además, deshabilitar a pam se siente como un mazo, cuando creo que solo quiero usar papel de lija.Respuestas:
Después de una mirada rápida al código fuente en
/usr/sbin/authconfig
y/usr/share/authconfig/authinfo.py
:authconfig --help
/etc/security/pwquality.conf
configuraciones como la longitud mínima de la contraseña), excepto pwquality. En mi humilde opinión, esto es un error y debe ser reportado.Desde la
authinfo.py
línea 2489 y 2156:Primeras
readSysconfig
lecturas/etc/sysconfig/authconfig
; entonces lo que pones allí se sobrescribereadPAM
con lo que está en/etc/pam.d/*
(especialmentepassword_auth*
ysystem_auth*
):TL; DR : para las opciones que no se anulan (o no se pueden eliminar), la configuración se toma de la configuración actual, incluidos los archivos etiquetados autogenerados . Para que funcione, edite
/etc/sysconfig/authconfig
y elimine las líneas mostradas porgrep -E pwq\|crack /etc/pam.d/*
Editar : Hay un segundo error, que hace que el consejo anterior todavía no funcione: línea 2248:
Debe elegir una de las dos implementaciones de control de calidad, ¡o se elegirá una por usted! Combinado con el primer error, esto hace que sea imposible deshabilitarlo.
fuente
Puede tomar el control manual sobre su
system-auth
archivo. Cree un nuevo archivo (puede comenzar copiandosystem-auth-ac
) y cambie elsystem-auth
enlace simbólico para que apunte al nuevo archivo.Esto hace que sea su responsabilidad actualizar esta parte de su configuración de PAM, ya que authconfig ya no tocará el enlace simbólico o el archivo al que apunta. Sin embargo, authconfig seguirá actualizando el
system-auth-ac
archivo, por lo que puede seguir usándolo como referencia si lo necesita. Con un poco de inteligencia, incluso puede incluirloinclude
en su copia local, pero cómo hacerlo está más allá del alcance de esta pregunta.También debe verificar otros enlaces simbólicos, como
password-auth
. Es posible que deba darles el mismo tratamiento.Desde la página del
authconfig(8)
manual, debajo deFiles
:Entonces, si
system-auth
es un archivo, authconfig lo cambia para vincularlosystem-auth-ac
. Pero sisystem-auth
es un enlace simbólico, authconfig lo deja solo.fuente
Parece ser configurable a través de
/etc/security/pwquality.conf
Fuente: https://fedoraproject.org/wiki/Features/PasswordQualityChecking
fuente
pwquality.conf
no admite la desactivación de las verificaciones de diccionario o la desactivación de las verificaciones de longitud de contraseña.authconfig --updateall
restablece los archivos. Estoy completamente perplejo ante esa respuesta, ya que contradice directamente el comportamiento que estoy observando.USEPWQUALITY=no
y / oUSECRACKLIB=no
no resuelve mi problema, incluso antes de ejecutar authconfig.Todavía puede cambiar desde la línea de comando. Recibirá una advertencia, pero le permitirá establecer una contraseña que sea demasiado corta, así como una que no cumpla con las reglas de complejidad.
fuente
passwd <username>
comando como root (ya sea con el terminal raízsudo passwd <username>
o despuéssu -
.passwd
como root, ignorará las políticas de contraseña. Si solo necesita configurarlo una vez y olvidarlo, entonces eso funcionará. Si está intentando configurarlo para que cada usuario pueda cambiar libremente sus contraseñas, entonces necesita otra solución.passwd
sin que fm la use con pam. Poco tiene que ver con la pregunta real, pero hace que la afirmación en esta "respuesta" sea verdadera.Acabo de encontrar esta pregunta basada en una búsqueda relacionada, y creo que tengo una respuesta para usted.
Fedora crea enlaces simbólicos a los archivos generados por authconfig. es decir.
system-auth
enlaces asystem-auth-ac
. Si creasystem-auth
su propio archivo, entonces, en teoría, cualquier cambio futuro realizado porauth-config
se actualizarásystem-auth-ac
pero dejará sus archivos modificados sin cambios.En realidad es bastante elegante, pero solo lo descubrí al preguntarme qué
*-ac
hicieron los archivos.fuente
authconfig
(pauthconfig --updateall
. Ej. ) Eliminará su archivo y lo vinculará de nuevo al-ac
archivo.