Wzmocnienie WordPressa za pomocą WP Cerber i NGINX
Współpraca tych dwóch elementów może znacząco poprawić obronę każdej witryny
English version: Hardening WordPress with WP Cerber and NGINX
NGINX to darmowy, open source'owy, wydajny serwer HTTP. WP Cerber to darmowa, open source'owa wtyczka zabezpieczająca, która chroni witryny oparte na WordPressie przed intruzami i hakerami.
Jak wzmocnić WordPressa za pomocą WP Cerber i NGINX jednocześnie
Przede wszystkim musisz skonfigurować niestandardowy adres URL logowania i zaznaczyć opcję „Block direct access to wp-login.php and return HTTP 404 Not Found Error” . Szczegóły znajdziesz tutaj: Jak zmienić nazwę pliku wp-login.php . Ze względów bezpieczeństwa nie ustawiaj niestandardowego adresu URL logowania jako „login” ani „wp-admin”.
Następnie należy zablokować dostęp do pliku wp-login.php w pliku konfiguracyjnym NGINX. Domyślnie plik ten znajduje się w katalogu /etc/nginx, /usr/local/nginx/conf lub /usr/local/etc/nginx.
Dodaj ten wiersz do sekcji serwera pliku konfiguracyjnego NGINX dla swojej witryny:
lokalizacja /wp-login.php { return 404; }
Jeżeli na swojej stronie nie używasz XML RPC, gorąco polecam dodanie również tego wiersza:
lokalizacja /xmlrpc.php { return 404; }
Wreszcie, chronimy naszą witrynę i serwer przed przeciążeniem przez ataki hakerów lub zautomatyzowane próby ze strony botów. Zróbmy to, wykorzystując możliwości NGINX w zakresie ograniczania liczby żądań przychodzących. Ograniczanie liczby żądań pozwala na zmniejszenie liczby żądań przychodzących powyżej określonego progu.
Otwórz główny plik konfiguracyjny nginx.conf i znajdź sekcję http . Dodaj do niej następujący wiersz:
limit_req_zone $binary_remote_addr strefa=main:10m rate=60r/m;
Następnie wróć do sekcji serwera swojej witryny i znajdź linię
lokalizacja / {
dodaj ten wiersz po otwarciu nawiasów klamrowych:
limit_req zone=main burst=10 nodelay;
Zmiany wprowadzone w pliku konfiguracyjnym nie zostaną zastosowane, dopóki polecenie ponownego wczytania konfiguracji nie zostanie wysłane do serwera nginx lub serwer nie zostanie ponownie uruchomiony. Aby wczytać nową konfigurację, wykonaj polecenie w wierszu poleceń serwera:
usługa przeładowania nginx
Zrobione!
Teraz Ty i Twój serwer zaplecza (być może oparty na Apache) możecie odetchnąć z ulgą. Te kilka prostych kroków pozwoli Ci oczyścić ruch przychodzący z „błędnych żądań” i umożliwić zasobom serwera obsługę „prawidłowych żądań”.