Wie aktiviere ich die crypt_blowfish-Unterstützung für Shadow-Passwörter und PHP auf einem Linux (Debian) -Server?
Ich beziehe mich auf die Blowfish-basierte OpenBSD- Verschlüsselung, die in PHP als CRYPT_BLOWFISH bekannt ist.
Wie weit ich weiß, gibt es kein Debian-Paket dafür. Welche anderen Optionen habe ich, um diesen Hash-Algorithmus für PHP zu aktivieren?
Anmerkung:
PHP Krypta () Funktionen erzeugen Schnittstellen relativ direkt mit der C-Bibliothek Krypta (3) Funktion durch das zugrundeliegende Betriebssystem zur Verfügung gestellt.
Die
Benennung des Update- Pakets ist nicht so klar, wie es sein könnte (sollte).
Das PEAR Crypt_Blowfish-Paket ist ein direkter Ersatz für die MCrypt-Erweiterung von PHP und ermöglicht eine schnelle Zwei-Wege- Blowfish-Verschlüsselung.
Das Debian BCrypt-Paket ist auch eine Implementierung des 'normalen' Zwei-Wege-Blowfish-Algorithmus.
Was ich suche, ist die Bcrypt-Hash-Implementierung für Hashing-Passwörter.
Antworten:
Das Paket, das Sie in Debian installieren müssen, ist
libpam-unix2
.Dann müssen Sie die folgenden Dateien unter bearbeiten
/etc/pam.d/
und die gesamtepam_unix.so
Verwendung in ändernpam_unix2.so
:Bearbeiten Sie die
common-password
Datei und ersetzen Sie den Parameter "md5" durch "blowfish".Passwörter, die nach diesen Änderungen aktualisiert werden, werden mit Blowfish gehasht. Bestehende Shadow-Passwörter werden nicht geändert. Quelle
Um Blowfish in PHP zu verwenden, geben Sie ein Blowfish-Salz an
crypt()
. So was:Sie sollten zuerst prüfen, ob CRYPT_BLOWFISH == 1 ist. Und Sie müssen ein ausreichend langes Salt verwenden, das mindestens 22 Zeichen entspricht. Quelle
quelle
passwd
beim Ausführen von root nicht nach dem alten Kennwort gefragt wird. Wichtig: Lassen Sie Ihre Root-Sitzung geöffnet, bis Sie sicher sind, dass Sie sich erneut anmelden können!