Dzięki ograniczaniu dostępu do katalogów lub stron WWW, nie zobaczą ich osoby, które nie znają loginu i hasła. Zabezpiecz przechowywane na serwerze zasoby przed niepowołanymi do ich odczytu użytkownikami. Możesz to zrobić także za pomocą pliku .htpasswd.
SPIS TREŚCI
- Jak skonfigurować plik .htpasswd na serwerze w AZ.pl?
- Zabezpieczenie dostępu do pojedynczego pliku
- Korzystanie z .htpasswd przez SSH
Alternatywnie można skorzystać z plików .htaccess i .htpasswd, by zabezpieczyć dane przed nieautoryzowanym dostępem z zewnątrz.
Jak skonfigurować plik .htpasswd na serwerze w AZ.pl?
- W katalogu, do którego dostęp chcemy ograniczyć tylko dla osób znających hasło, należy umieścić plik .htaccess zawierający odpowiednie polecenia:
AuthName "Podaj haslo" AuthType Basic AuthUserFile /web/nazwa_serwera/katalog/.htpasswd Require valid-user
Przy komendzie AuthName można wpisać dowolny tekst (np. informujący o konieczności wpisania hasła) – zostanie on wyświetlony użytkownikowi wywołującemu zabezpieczony katalog.
Przy komendzie AuthUserFile należy wpisać pełną ścieżkę do pliku .htpasswd.
Ścieżka podana w przykładzie to ścieżka względna. Jeżeli plik .htpasswd znajduje się w strukturze katalogu wyżej niż plik .htaccess, niezbędne jest podanie: AuthUserFile ../.htpasswd - Należy utworzyć plik .htpasswd, w którym znajdą się nazwy użytkowników i ich hasła dostępu, zgodnie ze schematem:
Nazwa_uzytkownika:hasło_dostępu
„hasło_dostępu” jest zakodowane algorytmem crypt(). Oznacza to, że jeśli nazwa użytkownika to „nowak”, a hasło to „haslodostepu”, zawartość pliku .htpasswd będzie wyglądała następująco:
nowak:pChP8LveYSwVo
Każdy użytkownik i jego hasło dostępu w pliku .htpasswd powinien być wymieniony w osobnej linijce.
Hasła do pliku .htpasswd możesz zakodować pod tym adresem. W generatorze wybierz algorytm crypt (). - Gdy plik .htpasswd jest gotowy, należy go razem z przygotowanym wcześniej plikiem .htaccess wysłać do katalogu, do którego dostęp ma być ograniczony. Od tego momentu za każdym razem, gdy katalog zostanie wywołany, wyświetli się okno z prośbą o podanie hasła dostępu. Jeśli użytkownik nie zna hasła, wyświetli się komunikat „401 Authorization Required”.
Zabezpieczenie dostępu do pojedynczego pliku
Jeśli chcesz zabezpieczyć tylko jeden plik, a nie cały katalog, również możesz to zrobić. Oto przykład kodu, który powinien znaleźć się w pliku .htaccess:
AuthType Basic AuthName "Podaj haslo" AuthUserFile .htpasswd <Files prywatnyplik.php> Require valid-user </Files>
W tym przykładzie zabezpieczony hasłem zostanie plik o nazwie „prywatnyplik.php”.
Korzystanie z .htpasswd przez SSH
Korzystając z serwera Apache w AZ.pl możesz także po połączeniu z serwerem przez SSH użyć polecenia, w wyniku którego utworzone zostaną odpowiednie pliki dla działania .htpasswd. W ten sposób nie trzeba korzystać z generatorów haseł online, ponieważ wystarczy użycie odpowiednich poleceń.
/bin/htpasswd -bdc ./.htpaas nowak haslodostepu
W tym poleceniu parametry -bdc oznaczają:
- -b – użyj hasła wpisanego do wiersza poleceń
- -d – wymuś szyfrowanie hasła metodą CRYPT (niezabezpieczone, max. 8 znaków). Zamiast parametru -d możesz użyć
- -m – by wymusić szyfrowanie hasła MD5
- -s – by wymusić szyfrowanie hasła SHA
- -c – utwórz nowy plik.