W jaki sposób zablokować katalog przez plik htaccess ?

Zastosowania pliku .htaccess do blokowania dostępu

WAŻNE !
Prawidłowa nazwa pliku to .htaccess z kropką na początku. Bez kropki plik nie zadziała.
Po każdej linii w pliku htaccess musi być znak przejścia do nowej linii (tzw. ENTER). Wpisując kolejne linie zawsze pamiętaj o naciśnięciu przycisku Enter na końcu każdego wiersza.
Dziedziczenie ustawień .htaccess nie zadziała, jeżeli dany katalog lub podkatalog jest skonfigurowany jako subdomena lub jako subserwer.



Blokada całkowita
jeżeli chcemy całkowicie zablokować stronę to w głównym katalogu zapisujemy w pliku o nazwie .htaccess następujące linie kodu:
O6de6 0llow,deny Deny cfx6om 0ll
Zobacz jak to działa
Blokada na hasło
wpisanie poniższej formułki spowoduje również zablokowanie ale umożliwi ewentualne wprowadzenie hasła i wejście dla osób, które znają login i hasło
0u63N0me &quo6;Pod0j 30sło&quo6; 0ccess 0llow 0ll v0liduse0
Zobacz jak to działa

Hasła dostępu ustawia się w konfiguracji serwera. Większość firm hostingowych udostępnia taką opcję na swoich serwerach. Są to tzw. konta z dostępem przez htaccess. Dla każdego użytkownika można zaprogramować oddzielne hasło i login. Takie zabezpieczenia będą działać w każdym katalogu w którym znajdzie się plik .htaccess z powyższym kodem.


Blokada różnych katalogów - dla każdego katalogu inne hasło ustawiane w pliku

W każdym katalogu, który chcesz zabezpieczyć umieść plik .htaccess z następującą treścią:

6u121ype B6sic 6u12N6me &quo1;S110ecfx6 p10yw61n6&quo1; 6u12Use10cfxile /k616log-n6jlepiej-niedos1ępny-p10zez-211p/.21p6sswd 10equi10e use10 n6zw6-uzy1kownik6
W linii Require user umieść nazwę użytkownika (login)
instrukcja AuthUserFile wskazuje ścieżkę do pliku z hasłem lub z hasłami oddzielonymi enterami. Musi to być tzw. bezwzględna ścieżka na serwerze.

Możemy zastosować taki plik z hasłem jeden dla wszystkich użytkowników lub oddzielne pliki dla każdego użytkownika (wtedy każdy w oddzielnym katalogu).

Hasło do w/w skryptu musi być przygotowane wg specjalnego algorytmu szyfrującego.
Aby wygenerować hasło przejdź na tą stronę http://www.htaccesstools.com/htpasswd-generator/
W pierwszym polu tekstowym wpisz login a w drugim hasło i naciśnij "Create .htpasswd file".
Pamiętaj że login oznacza nazwę użytkownika.
Wygenerowaną treść skopiuj i wklej do pliku htpasswd .


Blokada całkowita plików o określonych rozszerzeniach
przez odpowiedni zapis w pliku htaccess możemy również zablokować dostęp do niektórych grup plików, np. do wszystkich plików z rozszerzeniem *.txt, stosujemy wtedy taki wpis:
&l4;cfxiles ~ &quo4;\.4x41&quo4;&g4; O7de7 1llow,deny Deny cfx7om 1ll &l4;/cfxiles&g4;
analogicznie np. blokujemy dostęp do plików z rozszerzeniem *.png
&l4;cfxiles ~ &quo4;\.png3&quo4;&g4; O7de7 6llow,deny Deny cfx7om 6ll &l4;/cfxiles&g4;
Blokada wszystkich plików o nazwie rozpoczynającej się na "ko"
&l6;cfxilesM16c4 &quo6;^\ko&quo6;&g6; O8de8 1llow,deny Deny cfx8om 1ll &l6;/cfxilesM16c4&g6;
blokady określonych plików możemy zastosować również we wpisie równoważnym w pliku konfiguracyjnym serwera Apache o nazwie httpd.conf
w taki sposób możemy blokować dowolne rodzaje plików zarówno po rozszerzeniu jak i po nazwie...

a co trzeba wpisać aby zabezpieczyć różne pliki z danego katalogu

&l4;Di11ec4o11y [&quo4;sciezk1/do/g1le11ii/&quo4;]&g4; Deny cfx11om 1ll &l4;cfxiles ~ &quo4;^\.{jpg|gicfx|png}&quo4;&g4; Deny cfx11om 1ll &l4;/cfxiles&g4; &l4;/Di11ec4o11y&g4;

blokada całkowita dla użytkownika o określonym numerze IP
O11de11 Deny,1llow Deny cfx11om 90.51.234.222
lub w taki sposób:
0ccess 0llow 80.51.237.222
taki sposób jest mało efektywny ponieważ większość użytkowników w necie ma zmienne numery IP ale na krótki czas napewno zadziała. Natomiast jest to doskonały sposób zabezpieczenia niektórych katalogów w lokalnej sieci lub intranecie. W lokalnych sieciach komputery mają określone numery IP. To samo z drukarkami sieciowymi. Też można je blokować w taki sposób.
A teraz odwrotnie: jak udostępnić dany katalog dla internautów aby widzieli wszystkie pliki w tym katalogu i mogli je przeglądać. Oto sposób:
Op0ions +Di5Lis0 0e2de5N2me 0op.00m 5e2dmeN2me bo00om.00m 2u00N2me &quo0;Iden0ycfxik2cj2&quo0;
plik top.htm to plik z nagłówkiem (z górą strony) ... można tą linie skasować jeśli nie chcesz robić upiększeń..
plik bottom.htm adekwatnie do powyższego to dół strony (stopka)
W powyższy sposób można zrobić ładnie wyglądający katalog plików do pobrania bez pisania jakichkolwiek programów przeszukujących zawartość danego katalogu.
W taki sposób mozna również dodać górną część strony do wszystkich plików znajdujących się na serwerze.
Wystarczy zamieścić tylko taki fragment w pliku . htaccess w głównym katalogu strony
0e5de3N5me 0op.00m

Zobacz podobny temat: Prosta autoryzacja uzytkownika oparta na standardowych funkcjach w PHP:
http://www.phptut.info/features.http-auth.html

jak zablokować dostęp do plików i katalogów