Comment activer la prise en charge de crypt_blowfish pour les mots de passe masqués et PHP sur un serveur Linux (Debian)?
Je fais référence au bcrypt basé sur Blowfish de style OpenBSD , connu en PHP sous le nom de CRYPT_BLOWFISH.
Pour autant que je sache, il n'y a pas de paquet Debian pour lui, quelles autres options ai-je pour activer cet algorithme de hachage pour PHP?
Remarque:
la fonction crypt () de PHP s'interface relativement directement avec la fonction crypt (3) de la bibliothèque C fournie par le système d'exploitation sous-jacent.
La mise à jour du nom des
packages n'est pas aussi claire qu'elle pourrait (devrait) l'être.
Le package PEAR Crypt_Blowfish est un remplacement direct de l'extension MCrypt de PHP, permettant un cryptage bidirectionnel rapide de Blowfish .
Le paquet Debian BCrypt est également une implémentation de l'algorithme «normal» de Blowfish bidirectionnel.
Ce que je recherche, c'est l'implémentation de hachage Bcrypt pour le hachage des mots de passe.
Réponses:
Le paquet que vous devez installer dans debian est
libpam-unix2
.Ensuite, vous devrez modifier les fichiers suivants sous
/etc/pam.d/
et modifier toutepam_unix.so
utilisation enpam_unix2.so
:Enfin, éditez le
common-password
fichier et remplacez le paramètre "md5" par "blowfish".Les mots de passe mis à jour après ces modifications seront hachés à l'aide de Blowfish. Les mots de passe cachés existants ne sont pas modifiés. La source
Pour utiliser Blowfish en PHP, vous fournissez un sel Blowfish à
crypt()
. Comme ça:Vous devez d'abord vérifier si CRYPT_BLOWFISH == 1. Et vous devrez utiliser un sel assez long, qui est égal (ou supérieur à) 22 caractères. La source
la source
passwd
ne demande pas l'ancien mot de passe lors de l'exécution à partir de root. Important: gardez votre session root ouverte jusqu'à ce que vous soyez sûr de pouvoir vous reconnecter!