Generator .htpasswd

Wpisz nazwę użytkownika i hasło – generator stworzy linię do pliku .htpasswd z bezpiecznym hashem. Możesz też wygenerować losowe hasło.

Wpisz dane, aby zobaczyć wynik.

Czym jest plik .htpasswd?

.htpasswd to plik zawierający nazwy użytkowników i zahashowane hasła, używany do uwierzytelniania HTTP Basic Auth na serwerach Apache i Nginx. Pozwala zabezpieczyć dostęp do wybranych katalogów lub plików bez konieczności tworzenia systemu logowania.

Format pliku .htpasswd

Każda linia zawiera jednego użytkownika w formacie:

użytkownik:zahashowane_hasło

Przykład z różnymi algorytmami:

admin:$2y$10$LQ7M... (bcrypt)
user1:{SHA}W6ph5Mm... (SHA-1)
user2:$apr1$xyz$abc... (MD5 Apache)

Algorytmy hashowania

AlgorytmPrefiksBezpieczeństwoZalecenie
bcrypt$2y$Bardzo wysokieZalecany
SHA-256/512$5$ / $6$WysokieDobry
MD5 (Apache)$apr1$NiskieUnikać
SHA-1{SHA}Bardzo niskieNie używać
cryptbrak prefiksuMinimalnePrzestarzały

Konfiguracja Apache

Plik .htaccess

AuthType Basic
AuthName "Strefa chroniona"
AuthUserFile /ścieżka/do/.htpasswd
Require valid-user

Ochrona konkretnego katalogu

<Directory "/var/www/html/admin">
    AuthType Basic
    AuthName "Panel administracyjny"
    AuthUserFile /etc/apache2/.htpasswd
    Require valid-user
</Directory>

Konfiguracja Nginx

location /admin {
    auth_basic "Panel administracyjny";
    auth_basic_user_file /etc/nginx/.htpasswd;
}

Nginx + wyłączenie auth dla określonych IP

location /admin {
    satisfy any;
    allow 192.168.1.0/24;
    deny all;
    auth_basic "Panel administracyjny";
    auth_basic_user_file /etc/nginx/.htpasswd;
}

Najlepsze praktyki bezpieczeństwa

  • Używaj bcrypt – jedyny algorytm odporny na ataki brute-force (cost factor ≥ 10)
  • Nie umieszczaj .htpasswd w katalogu publicznym – przechowuj poza document root
  • HTTPS obowiązkowy – Basic Auth przesyła dane w Base64 (bez szyfrowania!)
  • Silne hasła – minimum 12 znaków, mieszanka liter, cyfr i symboli
  • Ogranicz próby logowania – skonfiguruj fail2ban lub rate limiting
  • Regularnie zmieniaj hasła – szczególnie po odejściu osoby z zespołu

Zarządzanie użytkownikami

Dodawanie użytkownika (linia poleceń)

htpasswd -B /etc/apache2/.htpasswd nowy_user

Flaga -B wymusza bcrypt. Flaga -c tworzy nowy plik (uwaga – nadpisuje istniejący!).

Usuwanie użytkownika

htpasswd -D /etc/apache2/.htpasswd user_do_usuniecia

Ograniczenia Basic Auth

  1. Brak wylogowania – przeglądarka pamięta dane do zamknięcia
  2. Brak sesji – dane przesyłane z każdym żądaniem
  3. Prosty interfejs – brak możliwości stylowania okna logowania
  4. Brak 2FA – nie obsługuje dwuskładnikowego uwierzytelniania
  5. Wydajność – hashowanie bcrypt przy każdym żądaniu obciąża serwer

Kiedy używać .htpasswd?

  • Ochrona panelu administracyjnego w fazie rozwoju
  • Zabezpieczenie środowiska staging/testowego
  • Prosty dostęp do prywatnych zasobów (dokumentacja, pliki)
  • Dodatkowa warstwa ochrony (oprócz logowania w aplikacji)

Jeśli ten kalkulator był przydatny, sprawdź również: JSON, CV, Cytaty i więcej kalkulatorów.

Najczęstsze pytania (FAQ)

Co to jest .htpasswd?

.htpasswd to plik przechowujący pary użytkownik:hash_hasła. Używany przez Apache i Nginx do prostej autoryzacji HTTP (Basic Auth).

Czy Basic Auth jest bezpieczny?

Tylko przez HTTPS! Bez szyfrowania połączenia hasło jest przesyłane w Base64 (czytelnym). Z HTTPS jest akceptowalny do prostych zastosowań (staging, panel admina).

Jak skonfigurować Basic Auth na Apache?

Stwórz .htpasswd w katalogu, dodaj w .htaccess: AuthType Basic, AuthName "Restricted", AuthUserFile /path/.htpasswd, Require valid-user.

Źródła i podstawa prawna

Wyliczenia opieramy na oficjalnych źródłach. Sprawdź szczegóły u instytucji, które je publikują:

Kalkulator ma charakter orientacyjny i nie stanowi porady prawnej, podatkowej ani medycznej. W indywidualnej sprawie skonsultuj się z właściwym urzędem, doradcą lub lekarzem.

Zobacz, jak liczymy i weryfikujemy obliczenia. Zauważyłeś błąd? Napisz: kontakt@kalkula.pl.

Nowe kalkulatory

Co nowego →