Wyszukiwanie w witrynie

Jak skonfigurować katalog internetowy chroniony hasłem w Apache


Apache to jeden z najpowszechniej używanych i popularnych serwerów internetowych na świecie, dlatego ważne jest, aby chronić swoje witryny przed nieautoryzowanymi użytkownikami. Uwierzytelnianie Apache można skonfigurować tak, aby wymagało od odwiedzających witrynę zalogowania się przy użyciu identyfikatora użytkownika i hasła. Istnieje wiele sposobów ochrony hasłem katalogów na serwerze WWW Apache.

W tym artykule opisano prosty sposób ochrony hasłem katalogu internetowego w Apache przy użyciu pliku .htaccess.

Uwaga: ten samouczek jest wykonywany na serwerze Ubuntu z zainstalowanym Apache.

Instalowanie pakietu narzędzi Apache

Najpierw musisz zainstalować pakiet apache2-utils, który udostępnia narzędzie o nazwie htpasswd do tworzenia pliku haseł.

Możesz go zainstalować, uruchamiając następujące polecenie:

sudo apt-get install apache2-utils

Skonfiguruj Apache, aby zezwalał na uwierzytelnianie .htaccess

Domyślnie Apache nie pozwala na użycie pliku .htaccess w Ubuntu 14.04. Będziesz musiał skonfigurować plik konfiguracyjny Apache, aby umożliwić uwierzytelnianie oparte na .htacces.

Możesz to zrobić, edytując plik konfiguracyjny Apache:

sudo nano /etc/apache2/apache2.conf

Znajdź sekcję rozpoczynającą się od Directory "/var/www/html" i zmień linię z AllowOverride none na AllowOverride AuthConfig

Options Indexes FollowSymLinks
    AllowOverride AuthConfig
    Require all granted

Zapisz i zamknij plik.

Utwórz plik hasła

Możesz użyć narzędzia wiersza poleceń htpasswd, aby utworzyć plik haseł, którego Apache będzie mógł używać do uwierzytelniania użytkowników. Teraz utwórz ukryty plik .htpasswd w katalogu konfiguracyjnym „/etc/apache2”.

sudo htpasswd -c /etc/apache2/.htpasswd authuser1

Spowoduje to wyświetlenie prośby o podanie i potwierdzenie hasła dla użytkownika authuser1.

Jeśli chcesz dodać kolejnego użytkownika, pomiń argument -c w poleceniu htpasswd.

Teraz, aby utworzyć kolejne uwierzytelnienie dla drugiego użytkownika, authuser2:

sudo htpasswd /etc/apache2/.htpasswd authuser2

Możesz zobaczyć nazwę użytkownika i zaszyfrowane hasło dla każdego rekordu, uruchamiając:

sudo cat /etc/apache2/.htpasswd

Aby móc odczytać plik .htpasswd, musisz przyznać uprawnienia użytkownikowi „www-data”.

sudo chown www-data:www-data /etc/httpd/.htpasswd
sudo chmod 0660 /etc/httpd/.htpasswd

Skonfiguruj uwierzytelnianie hasłem Apache

Musisz utworzyć plik „.htaccess” w katalogu internetowym, który chcesz ograniczyć. W tym przykładzie utworzę plik „.htaccess” w katalogu „/var/www/html/”, aby ograniczyć cały katalog główny dokumentu.

sudo nano /var/www/html/.htaccess

Dodaj następującą treść:

AuthType Basic
AuthName "Restricted Content"
AuthUserFile /etc/apache2/.htpasswd
Require valid-user

Oto co oznacza powyższy kod:

  • AuthType: ta opcja określa typ uwierzytelniania.
  • AuthName: Jest to treść wyświetlana na stronie internetowej po wyświetleniu monitu o podanie nazwy użytkownika i hasła.
  • AuthUserFile: ta opcja określa lokalizację poświadczeń użytkownika.
  • wymagaj prawidłowego użytkownika: oznacza, że stronę mogą załadować tylko pomyślnie uwierzytelnione żądania.

Zapisz i zamknij plik, a następnie uruchom ponownie Apache, aby zmiany zaczęły obowiązywać.

sudo /etc/init.d/apache2 restart

Testowanie uwierzytelniania hasłem

Teraz na zdalnym komputerze uzyskaj dostęp do swojej witryny w przeglądarce internetowej. Zostaniesz poproszony o podanie nazwy użytkownika i hasła, aby uzyskać dostęp do strony internetowej.

Jeśli wprowadzisz prawidłowe dane uwierzytelniające użytkownika, uzyskasz dostęp do treści. Jeśli wprowadzisz nieprawidłowe dane uwierzytelniające użytkownika lub naciśniesz „Anuluj”, wyświetli się strona błędu Nieautoryzowane.

Wniosek

Powinieneś teraz mieć wystarczającą wiedzę, aby skonfigurować podstawowe uwierzytelnianie dla swojego serwera WWW Apache. Pamiętaj również, że ochronę hasłem należy połączyć z szyfrowaniem SSL, aby Twoje dane uwierzytelniające nie były wysyłane na serwer w postaci zwykłego tekstu.

Powiązane artykuły