Jak włączyć obsługę crypt_blowfish dla ukrytych haseł i PHP na serwerze Linux (Debian)?
Mam na myśli bcrypt oparty na Blowfish w stylu OpenBSD , znany w PHP jako CRYPT_BLOWFISH.
O ile wiem, nie ma dla niego pakietu Debian, jakie inne opcje muszę włączyć ten algorytm mieszania dla PHP?
Uwaga: fuzja
PHP crypt () łączy się stosunkowo bezpośrednio z funkcją crypt (3) biblioteki C udostępnianą przez podstawowy system operacyjny.
Aktualizacja
nazewnictwa pakietów nie jest tak klarowna, jak mogłaby (powinna) być.
Pakiet PEAR Crypt_Blowfish zastępuje rozszerzenie PHPrypt MCrypt, pozwalając na szybkie dwukierunkowe szyfrowanie blowfish.
Również pakiet BCrypt Debiana jest także implementacją „normalnego” dwukierunkowego algorytmu blowfish.
To, czego szukam, to implementacja Bcrypt-hash dla hashów.
Odpowiedzi:
Pakiet, który musisz zainstalować w Debianie to
libpam-unix2
.Następnie będziesz musiał edytować następujące pliki pod
/etc/pam.d/
i zmienić całepam_unix.so
użycie napam_unix2.so
:Na koniec edytuj
common-password
plik i zamień parametr „md5” na „blowfish”.Hasła, które są aktualizowane po dokonaniu tych modyfikacji, zostaną zaszyfrowane przy użyciu blowfish. Istniejące hasła cienia nie są modyfikowane. Źródło
Aby użyć blowfish w PHP, podajesz sól blowfish do
crypt()
. Lubię to:Najpierw sprawdź, czy CRYPT_BLOWFISH == 1. I musisz użyć wystarczająco długiej soli, która jest równa (lub większa niż) 22 znakom. Źródło
źródło
passwd
nie pyta o stare hasło, gdy uruchamiasz z roota. Ważne: utrzymuj otwartą sesję root, dopóki nie będziesz pewny, że możesz się zalogować ponownie!