¿Cómo habilito el soporte de crypt_blowfish para contraseñas sombreadas y PHP en un servidor Linux (Debian)?
Me refiero al bcrypt basado en Blowfish de estilo OpenBSD , conocido en PHP como CRYPT_BLOWFISH.
Hasta donde sé, no hay un paquete Debian para él, ¿qué otras opciones tengo para habilitar este algoritmo de hash para PHP?
Nota: la función de
cifrado PHP ( PHP ) interactúa relativamente directamente con la función de cifrado de biblioteca C (3) proporcionada por el sistema operativo subyacente.
El nombre del paquete de actualización no es tan claro como podría (debería) ser.
El paquete PEAR Crypt_Blowfish es un reemplazo directo para la extensión MCrypt de PHP, lo que permite un cifrado rápido de blowfish bidireccional .
También el paquete Debian BCrypt es también una implementación del algoritmo de pez de dos vías 'normal'.
Lo que estoy buscando es la implementación de Bcrypt-hash para contraseñas hash.
Respuestas:
El paquete que necesita instalar en Debian es
libpam-unix2
.Luego, tendrá que editar los siguientes archivos
/etc/pam.d/
y cambiar todo elpam_unix.so
uso apam_unix2.so
:Finalmente, edite el
common-password
archivo y reemplace el parámetro "md5" con "blowfish".Las contraseñas que se actualizan después de realizar estas modificaciones se cifrarán con blowfish. Las contraseñas ocultas existentes no se modifican. Fuente
Para usar blowfish en PHP, proporciona una sal de blowfish a
crypt()
. Me gusta esto:Primero debe verificar si CRYPT_BLOWFISH == 1. Y deberá usar una sal lo suficientemente larga, que sea igual (o mayor que) 22 caracteres. Fuente
fuente
passwd
no solicita la contraseña anterior cuando se ejecuta desde la raíz. Importante: ¡mantenga su sesión raíz abierta hasta que esté seguro de poder iniciar sesión nuevamente!