Niedawno fail2ban przestał normalnie chronić przed brutalną siłą na wordpress , ponieważ ip jest unikalny w każdym żądaniu i blokowanie każdego adresu jest bez znaczenia.
Od czasu takich bzdur postanowiłem ograniczyć dostęp do pliku wp-login.php przez ip. Tutaj jest jeden niuans: dla lokalizacji określonej w pliku konfiguracyjnym nginx, musisz dodać obsługę skryptu, gdy używasz php-fpm .
W rezultacie projekt wygląda następująco:
serwer {
...
location ~ * wp-login \ .php $ {
zezwól na 127.0.0.1;
zaprzeczyć wszystkim;
try_files $ uri = 404;
fastcgi_pass unix: /run/php-www.sock;
to fastcgi_params;
fastcgi_param SCRIPT_FILENAME $ katalog_dokumentu $ fastcgi_script_name;
fastcgi_ignore_client_abort off;
fastcgi_param PHP_VALUE "sendmail_path = / usr / sbin / sendmail -t -i -fmail@example.com";
fastcgi_param PHP_ADMIN_VALUE "open_basedir = / var / www / example.com /: / var / save_path /: / var / tmp_dir /";
}
...
} Teraz boty otrzymują błąd 403 zamiast strony logowania. Tylko ta metoda nie jest bardzo uniwersalna - jeśli istnieje rejestracja użytkownika na stronie, nie zadziała.
Ale jeśli jesteś jedynym użytkownikiem, możesz połączyć fantazję, a zamiast dostępu przez ip, uzyskać dostęp przez użytkownika użytkownika, hasło ...
