How to Create and Use .htpasswd

Ustawienie jakiejś formy uwierzytelniania hasłem dla strony internetowej może być kluczową częścią udostępniania treści autoryzowanym użytkownikom. W innym artykule omówimy jak to zrobić za pomocą kilku fajnych reguł .htaccess. Jeśli chcesz przeczytać więcej o tym, jak to zrobić, możesz sprawdzić nasz artykuł, który obejmuje jak zabezpieczyć pliki lub katalogi hasłem za pomocą .htaccess. Jednakże, możesz się zastanawiać jak te dane uwierzytelniające są sprawdzane i gdzie są przechowywane? Odpowiedź jest z plikiem .htpasswd, który będzie przedmiotem tego artykułu.

Co to jest .htpasswd?

Plik .htpasswd jest zwykle używany podczas ochrony pliku, folderu lub całej strony internetowej za pomocą hasła przy użyciu uwierzytelniania HTTP i wdrożony za pomocą reguł w pliku .htaccess. Dane uwierzytelniające użytkownika są przechowywane w oddzielnych liniach, z każdą linią zawierającą nazwę użytkownika i hasło oddzielone dwukropkiem (:). Nazwy użytkowników są przechowywane jako zwykły tekst, natomiast hasła są przechowywane w zaszyfrowanym formacie hashowanym. To szyfrowanie to zwykle MD5, chociaż w Linuksie może być oparte na funkcji crypt(). Chociaż możliwe jest nazwanie pliku z hasłem jakkolwiek chcesz, nie jest to zalecane, ponieważ Apache jest domyślnie skonfigurowany do używania .htpasswd, a pliki kropkowe (pliki zaczynające się od „.”) są zazwyczaj plikami ukrytymi.

Jak stworzyć plik .htpasswd?

Zależnie od platformy, można to osiągnąć na kilka różnych sposobów. Najprostszą metodą jest udanie się na jedną z różnych stron internetowych do tworzenia .htpasswd i podążanie za ich prostymi instrukcjami, aby wygenerować niezbędne wpisy do pliku .htpasswd. Polecam generator oferowany przez htaccesstools.com, ponieważ jest on bardzo prosty i do rzeczy, sprawdź go: Htpasswd Generator. Jeśli jesteś taki jak ja i chciałbyś zobaczyć jak to się robi bez użycia generatora, trzymaj się!

Po pierwsze musisz mieć na myśli nazwę użytkownika, dla tego przykładu wybrałem nazwę użytkownika bob123. Następnie musisz być zalogowany do swojego serwera przez SSH, jeśli nie jesteś pewien jak uzyskać dostęp do swojego serwera przez SSH przejrzyj poniższy artykuł: Podłączanie się do Twojego serwera przez SSH. Na koniec wykonaj następujące polecenie, proszę zauważyć, że jeśli wykonujesz je jako użytkownik inny niż root, będziesz musiał użyć sudo.

htpasswd -c /home/usernamehere/.htpasswd bob123

Zostaniesz poproszony o podanie i potwierdzenie hasła dla tego użytkownika. Jeśli chciałbyś dodać dodatkowych użytkowników, możesz to zrobić w następujący sposób:

htpasswd /home/usernamehere/.htpasswd newUser2

Jeśli miałbyś sprawdzić zawartość pliku .htpasswd, powinieneś zobaczyć coś podobnego do poniższego.

bob123:$apr1$FaPCZHMe$jYiw5.9UevKx25pBH4AsT/newUser2:$apr1$mrCHcVhc$oNdJeRcWKPk2z8dlzQI0x/

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.