.htaccess – wstęp co to jest i do czego służy?
Hypertext Access czyli plik tekstowy, który konfiguruje ustawienia serwera www jest w skrócie nazywanym htaccess.
Do czego to służy?
W pliku .htaccess można zapisać komendy, które modyfikują konfigurację serwera. Do najpopularniejszych konfiguracji które wprowadza się w tym pliku należą:
- Zabezpieczenie strony lub pliku hasłem;
- Zabezpieczenie katalogu hasłem;
- Utworzenie własnych stron błędów HTTP – np. własna strona z błędem 404;
- Konfiguracja kompresji gzip;
- Ograniczanie dostępu dla wybranej domeny, lub określonego adresu IP;
- Dostęp z określonego IP;
- przekierowanie adresów „z www na bez www”;
- przekierowanie odwiedzającyh na inną stronę.
Blokada dostępu do .htaccess
# Blokada dostepu do htaccess <files ~ "^.*\.([Hh][Tt][Aa])"> order allow,deny deny from all satisfy all </files>
Pierwsza reguła w .htaccess blokuje dostęp do tego pliku, dzięki temu jego zawartość będzie dostępna tylko przez połączenie z serwerem ftp. Uniemożliwiamy podejrzenie i edycję reguł i zabezpieczeń zapisanych w tym pliku.
Blokada dostępu do wp-config
# Blokada dostepu do wp-config <files wp-config.php> order allow,deny deny from all </files>
Podobnie jak w poprzednim punkcie, blokujemy dostęp do jednego z najważniejszych plików WordPressa. Plik wp-config.php zawiera bardzo ważne informacje dotyczące konfiguracji CMS-a. W tym pliku przechowywane są również dane dostępowe do bazy danych MySQL. Podejrzenie zawartości tego pliku umożliwia dostanie się do bazy danych strony internetowej i nieograniczone możliwości edycji jej zawartości.
Blokada dostępu do pliku XMLRPC
# Blokuje plik XMLRPC - do API <files xmlrpc.php> order deny,allow deny from all </files>
Ostatnia reguła blokująca dostęp do pliku dotyczy xmlrpc.php Jest to mało znany i rzadko używany plik WordPressa. Zanim użyjesz tej reguły upewnij się czy korzystasz z tego pliku!
Przekierowanie SSL
# Przekierowanie SSL RewriteEngine On RewriteCond %{REQUEST_URI} !\.well-known/acme-challenge RewriteCond %{HTTPS} !=on [NC] RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Istnieje wiele reguł przekierowujących stronę ze standardowego http na szyfrowane https, warto więc sprawdzić u swojego operatora hostingu czy nie sugeruje jakiejś konkretnej komendy. Powyższa formuła jest zalecana gdy strona korzysta z bardzo popularnych darmowych certyfikatów SSL – Let’s Encrypt.
Blokowanie skanowania autorów
# BEGIN blokowanie skanowania autorow wordpress RewriteEngine On RewriteBase / RewriteCond %{QUERY_STRING} (author=\d+) [NC] RewriteRule .* - [F]
Dzięki tej regule zablokujemy skanowanie zarejestrowanych autorów na naszej stronie WordPress.
Dlaczego mam blokować skanowanie autorów?
Często roboty przeszukujące strony internetowe sprawdzają jaki autor jest zarejestrowany na danej stronie – nick. Następnie wchodzą na stronę logowania do panelu administracyjnego WordPressa i metodą brute force wykorzystują zdobyty login i sprawdzają możliwe kombinacje haseł do złamania. Zablokowanie skanowania autorów utrudni zdobycie loginów.