Katalogi chronione hasłem
Jak włączyć Basic Authentication dla wybranego katalogu w DirectAdmin. Login + hasło wymagane przed wejściem na podstronę. Tworzenie userów, wyłączenie.
HTTP Basic Authentication to najprostsza metoda zabezpieczenia podstrony hasłem. Wpis w .htaccess + plik z hashed hasłami. W DA robisz to przez panel — .htaccess i .htpasswd tworzą się automatycznie.
Co zyskasz
- Zablokujesz dostęp do podstrony (
/admin,/staging,/private/) hasłem. - Utworzysz wielu użytkowników z różnymi hasłami.
- Wyłączysz ochronę gdy nie potrzebna.
Wymagania wstępne
- Folder w
public_htmldo ochrony.
Wskazówka
Basic Auth to słaba ochrona. Hasło idzie po sieci w plaintext (chyba że HTTPS). Zawsze używaj HTTPS dla stron z Basic Auth. Plus: Basic Auth = login w popup przeglądarki, nie wygodne. Lepsze: logowanie aplikacji (WP login, Laravel auth).
Krok 1: Otwórz Katalogi chronione hasłem
Funkcje zaawansowane → Katalogi chronione hasłem.
![]()
Krok 2: Wybierz katalog
W tabeli: lista folderów w
public_html. Klik na folder do ochrony (np./admin).
Krok 3: Włącz ochronę
- Włącz ochronę — checkbox
- Realm (nazwa) — co pokazuje popup przeglądarki (np. „Admin panel")
- Dodaj użytkownika:
- Login (np.
admin)- Hasło (silne!)
- Zapisz
Krok 4: Test
Otwórz
https://mojafirma.pl/admin/w przeglądarce. Pokaże się popup logowania z prośbą o login + hasło. Wpisz dane z DA.Po poprawnym zalogowaniu — wchodzisz do folderu.
::: callout info Sesja Basic Auth trwa do zamknięcia przeglądarki. Wylogowanie = zamknij wszystkie karty / wyczyść cache.
Co tworzy DA
W chronionym folderze powstają dwa pliki:
.htaccess:
AuthType Basic
AuthName "Admin panel"
AuthUserFile /home/host36592/domains/mojafirma.pl/public_html/admin/.htpasswd
Require valid-user
.htpasswd:
admin:$apr1$xY2Lp3K$z7K9mPq4...
(hash hasła w formacie crypt MD5).
Możesz edytować ręcznie przez Menedżer Plików — np. dodać wielu userów.
Wielu użytkowników
DA pozwala dodać kilku userów do tego samego katalogu. Każdy z osobnym hasłem, ale wszyscy mają dostęp.
Use case: zespół ma dostęp do /staging, każdy ze swoim hasłem (łatwiej audyt kto się zalogował).
Wyłączenie
W panelu: odznacz Włącz ochronę → Zapisz. Albo:
- Usuń
.htaccessz folderu - Usuń
.htpasswd
Najczęstsze problemy
1. „Po włączeniu cała strona pokazuje login"
Sprawdź gdzie utworzyłeś .htaccess. Może w niewłaściwym folderze (root zamiast /admin).
2. „Hasło nie działa"
- Sprawdź wielkość liter
- Sprawdź czy nie ma niewidocznych spacji w
.htpasswd - Sprawdź czy
.htpasswdma uprawnienia 644
3. „Po Basic Auth dostaję 500 Error"
Składnia .htaccess ma błąd. Sprawdź dokładnie — może niepoprawnie wpisałeś ścieżkę AuthUserFile.
4. „Basic Auth + WordPress — psuje /wp-admin?"
WordPress wymaga POST/GET do /wp-admin/admin-ajax.php z różnych miejsc. Basic Auth na całym wp-admin → AJAX nie działa.
Rozwiązanie:
AuthType Basic
AuthName "Admin"
AuthUserFile .htpasswd
Require valid-user
# Wyjątek dla admin-ajax
<Files "admin-ajax.php">
Require all granted
</Files>
5. „Mobile apps nie wspierają Basic Auth"
Niektóre aplikacje mobilne (older) — nie. Aplikacje desktopowe i przeglądarki — wszystkie wspierają.
6. „Chcę wyjątek IP — admin z biura bez hasła"
Modyfikacja .htaccess:
AuthType Basic
AuthName "Admin"
AuthUserFile .htpasswd
Require valid-user
# Wyjątek dla biura
Require ip 1.2.3.4
Z biura — bez hasła. Z innych IP — Basic Auth.
7. „Pamiętanie hasła — popup pyta za każdym razem"
Przeglądarka zwykle zapamięta Basic Auth po zalogowaniu. Jeśli pyta za każdym razem — sprawdź ustawienia (cookies, Private mode).
Słowniczek
- HTTP Basic Authentication — najprostsza metoda autentykacji HTTP (RFC 7617).
.htpasswd— plik z hashed hasłami (Apache htpasswd format).- Realm — nazwa „strefy" pokazywana w popup logowania.
- AuthUserFile — ścieżka do
.htpasswdw konfiguracji.
Related
Feedback
Czy ten artykuł pomógł?
