Powiedz przyjacielu i wejdź. Pre-hasło.
Druga metoda o której napiszę to powszechnie używane pre-hasło. Można się z nim spotkać niejednokrotnie nawet, kiedy sami nie podejmujemy działań mających doprowadzić do pojawiania się go. Chodzi o to, że wielu dostawców usług hostingowych domyślnie nadaje obowiązek podania pre-hasła o którym piszę w momencie wejścia np.: na /wp-admin. Jest tak choćbym z firmą Linuxpl.com co świadczy na pewno o dodatkowej dbałości firmy o nasze bezpieczeństwo i swoje zasoby.
Cała idea posiadania pre-hasła ma na celu przede wszystkim (choć nie tylko) odcięcie programów komputerowych łamiących hasła metodą brute force. Czyli program komputerowy nie dostanie się na ekran logowania jeśli nie poda pre-hasła, a że jest tylko programem (bez inteligencji) nie koniecznie poradzi sobie nawet z tak prostą kwestią jak powiedzenie „przyjacielu” kiedy wprost napiszemy powiedz „przyjacielu„ i wejdź. Często na tzw pre-hasłach podaje się wprost co mamy napisać. Np.: przepisz jako login i hasło „jestem człowiekiem”. Człowiek nie będzie miał z tym problemu a oprogramowanie już tak. A skoro program nie dostanie się do ekranu właściwego logowania nie rozpocznie bezmyślnego ataku brute force i nie obciąży zasobów serwera a także nie złamie hasła metodą prób i błędów o której piszę.
Pre hasło – jak je nadać?
Tutaj sprawa jest odrobinę bardziej skomplikowana. Ale tylko odrobinę. Znów użyjemy dobrze znanego nam .htaccess. Jednak w metodzie tej potrzebujemy dwóch rzeczy. Pierwsza to plik z hasłem, który sami stworzymy a druga to odpowiedni zapis w .htaccess. Metoda ta pochodzi z oficjalnej strony repozytorium WordPressa https://codex.wordpress.org/Brute_Force_Attacks do której zapraszam osoby nieco bieglejsze w obsłudze zagadnień informatycznych i języku angielskim. Jest tam opisane to o czym mówię znacznie dokładniej i obszerniej.
Etap pierwszy – plik z hasłem .password
Utwórz na swoim komputerze (np. pulpicie) nowy plik z dowolną nazwą. Dla potrzeb przykładu będzie to .password. W pliku tym zapiszemy hasło. Ale oczywiście słabo by to wyglądało gdyby po otwarciu pliku jak byk stały tam:
login: janek hasło: K0wal5k1
Aby plik spełniał swoją rolę dobrze byłoby zaszyfrować dane które tam wpiszemy. Aby to sprawnie przeprowadzić skorzystamy z generatora znajdującego się tutaj (htaccestools password generator) i dzięki niemu powyższy login z hasłem wygląda już tak:
janek:$apr1$Sbo.KAMR$LuthIJW2D6xotHO3SkfPH.
Taką treść zapisujemy w pliku i wgrywamy go na serwer. Najlepiej piętro wyżej niż WordPress a więc w katalogu nadrzędnym.
Jeśli nie będziecie mogli się odnaleźć w ścieżkach na swoim serwerze warto stworzyć nowy plik info.php w którym wklejamy:
<?php echo dirname( __FILE__ ); ?>
po jego wgraniu na serwer do dowolnego katalogu via ftp i wpisaniu nazwy w pasku adresowym URL wyświetli on całą ścieżkę naszego serwera. Nam potrzebny jest początek tego adresu dzięki czemu mamy już wszelkie dane aby móc odwołać się do pliku w etapie drugim poniżej…
Etap drugi – wpis w .htaccess
# Stop Apache from serving .ht* files <Files ~ "^\.ht"> Order allow,deny Deny from all </Files> # Protect wp-login <Files wp-login.php> AuthUserFile /sciezka serwera az do pliku password/.htpassword AuthName "Dostęp dla upowaznionych" AuthType Basic require user mysecretuser </Files>
Po wgraniu plików w odpowiednie miejsca (zgodnie z ścieżkami jakie ustaliliśmy) wystarczy podać adres naszej strony/wp-admin aby okazało się czy wszystko działa. Jeśli zrobiliśmy wszystko poprawnie pozostaje nam wcielić się w rolę Gandalfa Szarego zaskoczonego hasłem „powiedz przyjacielu i wejdź”…