Bezpieczeństwo i wydajność WordPress’a

Krzysztof Wojteczko
Krzysztof Wojteczko

Ostatnia aktualizacja

#UCZSIEWDOMU

Szybki Kurs WordPress

Możesz się wypisać w każdej chwili. Zapisując się akceptujesz naszą Politykę Prywatności

Przez 4 dni kursu wysyłam Ci dostęp do kolejnych lekcji wideo
Na koniec każdy Uczestnik otrzymuje specjalne bonusy!

bezpieczna-strona-internetowa

W ostatnim artykule opisałem wtyczkę Wordfence. Dziś kontynuacja wątku związanego z bezpieczeństwem. Tego nigdy za wiele 🙂

Od pewnego czasu w sieci nasilają się ataki typu bruteforce zwłaszcza na skrypty działające pod kontrolą WordPress’a. Polegają one na próbach łamania haseł poprzez przesyłanie zapytań POST do pliku wp-login.php. Dzięki wtyczce Wordfence możemy ograniczyć tego typu aktywność ustawiając odpowiednie reguły firewall’a i blokując w ten sposób dostęp do naszej strony z adresów IP, z których automaty próbują wbić się do panelu zarządzania stroną.

Wśród parametrów konfiguracyjnych zapory warto zwrócić uwagę na jeden element, a mianowicie na maksymalną ilość nieudanych prób logowania się w określonym czasie. Przekroczenie limitu skutkować blokadą numeru IP skąd owe próby następują. Zakładam, że jesteś użytkownikiem w miarę świadomym czyli stosujesz silne hasła (składające się z dużych i małych liter, cyfr i/lub znaków specjalnych) i nie zdarzają Ci się sytuacje w których próbujesz się logować do panelu swojej strony na zasadzie prób i błędów “jakie to było hasło?“. Jeśli tak jest, to sugeruję abyś ustawił na zaporze możliwie niski dopuszczalny próg błędnych logowań, np. niech to będzie maksymalnie 5 nieudanych prób w ciągu 1 doby. Jeśli ktokolwiek w tym czasie spróbuje przynajmniej pięć razy odgadnąć hasło, wtyczka Wordfence zablokuje dostęp do strony logowania i kolejne próby nie dojdą do skutku. Takie zabezpieczenie jest jedną ze skuteczniejszych metod ochrony przed atakami mającymi na celu odgadnięcie danych dostępowych administratora strony lub dowolnego jej użytkownika.

Najczęściej napastnicy próbują użyć standardowej nazwy takiej jak “admin”. Jeśli więc dopiero jesteś na etapie zakładania własnej strony internetowej na silniku WordPress rozważ utworzenie innej nazwy użytkownika dla administratora. Możesz wówczas natychmiast blokować IP każdego kto spróbuje się logować na typowy login czyli uzyje loginu “admin”. Ktoś kto poza Tobą próbuje tak się zalogować raczej nie ma dobrych intencji. Oczywiście możesz także podać inne często wykorzystywane przez łamaczy haseł loginy takie jak “root” czy “test”.

wf

Te działania pozwalają wyeliminować znaczną część zagrożeń, ale oczywiście nie wszystkie, np. nie chronią przed niektórymi konsekwencjami ataków takimi jak wysycenie pamięci operacyjnej, mocy procesora czy ilości zapytań SQL. Sam tego doświadczyłem. Z jednego IP na tę stronę poleciało tysiące żądań wysyłanych metodą POST do skryptu wp-login.php. Wordfence już po kilku próbach (zgodnie z konfiguracją) zablokował dostęp do formularza z adresu IP napastnika, ale to oczywiście nie powstrzymało robota przed dalszą zmasowaną wysyłką żądań. Każde takie żądanie pomimo, że nie dopuszczane przez Wordfence do właściwego formularza logowania generowało zużycie zasobów obliczeniowych i generowało zapytania SQL. W konsekwencji doprowadziło to do wyczerpania dopuszczalnego poziomu zapytań SQL w ciągu godziny na moim koncie, co poskutkowało chwilowym zablokowaniem dostępu do bazy danych. Mówiąc prościej skutkiem ataku odpieranego przez Wordfence była chwilowa niedostępność mojego bloga.

Widząc co się dzieje postanowiłem wprowadzić kolejne zabezpieczenie polegające na odcięciu dostępu do pliku wp-login.php. W tym celu zastosowałem niewielką wtyczkę o nazwie “Rename wp-login.php” i przy jej użyciu zmieniłem domyślny adres dostępu do Panelu administracyjnego. W efekcie każdy kto spróbuje wywołać plik wp-login.php jest przekierowywany na stronę główną bloga, która z kolei jest cachowana przez Wordfence co sprawia, że generuje minimalną ilość zapytań SQL lub nie generuje ich wcale. I w ten oto prosty sposób zmniejszyłem ryzyko wysycenia zasobów obliczeniowych konta hostingowego przez roboty usiłujące zalogować się do panelu strony jednocześnie ukrywając przed nimi adres panelu.

Zachęcam do przetestowania takiej konfiguracji lub podobnej. Ważne jest to aby nasze strony internetowe były możliwie bezpieczne bo nikt inny o nie lepiej nie zadba jak my sami 🙂 Powodzenia!

PODAJ DALEJ!

Share on facebook
Facebook
Share on twitter
Twitter
Share on linkedin
LinkedIn
Share on email
Email

Autor

Krzysztof Wojteczko

Krzysztof Wojteczko

Szkoleniowiec, miłośnik nowych technologii, WordPress'a i wszystkiego co ma związek z marketingiem internetowym. Swoją pierwszą stronę stworzył w 1996 roku, a od 2003 roku prowadzi agencje marketingowe i hostingowe.

Może Cię zainteresować także

2 komentarzy na temat “Bezpieczeństwo i wydajność WordPress’a”

  1. Avatar

    To co zaproponowałeś jest dobre, ale na blogach z logującymi się użytkownikami zastosować nie można. Niektóre hostingi coś w tym kierunku robią, np. linuxpl wyświetla monit popup z dwoma polami w które trzeba przepisać “wpadmin”. Proste i blokujące dostęp dla wielu botów, aczkolwiek mało wygodne. Także tak jak sugerujesz, odpowiednia wtyczka będzie dobrym rozwiązaniem.

Twój Komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

Przewiń do góry

Zaczekaj!

Planujesz uruchomienie strony, a może sklepu internetowego?

Jeśli tak, to nie możesz tego przegapić! Zapraszam Cię na bezpłatny Kurs WordPress z nagrodami, który pomoże Ci zrobić ten pierwszy, niezwykle ważny krok.

Możesz się wypisać w każdej chwili. Zapisując się akceptujesz naszą Politykę Prywatności

ODBIERZ,
BEZPŁATNY KURS!