Usiłuję skonfigurować, fail2ban
aby blokować złe WordPress
próby logowania, ale nie odnoszę wielkiego sukcesu.
Korzystam z WP fail2ban 3.0.0 , który poprawnie loguje błędne próby logowania /var/log/secure
, o ile mi wiadomo (jeśli ktoś jest zainteresowany, podaję poniżej mojej konfiguracji wtyczki):
Apr 19 18:21:42 droplet wordpress(website.com)[17157]: Authentication failure for admin from my.ip.add.ress
filter
Również wydaje się być poprawnie skonfigurowany. W rzeczywistości, jeśli uruchomię fail2ban-client status wordpress
, mogę zobaczyć, że mój ip jest zbanowany:
Status for the jail: wordpress
|- Filter
| |- Currently failed: 2
| |- Total failed: 15
| `- File list: /var/log/secure
`- Actions
|- Currently banned: 1
|- Total banned: 1
`- Banned IP list: my.ip.add.ress
I także fail2ban-regex /var/log/secure /etc/fail2ban/filter.d/wordpress.conf
znajduje Failregex: 102 total
.
Mimo to jestem w pełni zdolny do przeglądania strony i dostępu do strony logowania.
Oczywiście wciąż czegoś brakuje, może po stronie Lakieru? Naprawdę nie mogłem się dowiedzieć, jakiś pomysł?
Używam CentOS 7.2.1511
, Apache/2.4.6
oraz Varnish 4.0.3
.
Jeśli ktoś jest zainteresowany, oto jak skonfigurowałem, WP fail2ban
aby działał z Varnish
:
- Włączono wtyczkę
- Skopiowano plik
wordpress.conf
(zawarty w folderze wtyczek) do/etc/fail2ban/filters.d/
Dodano następujące linie do
/etc/fail2ban/jail.local
[wordpress] enabled = true port = http,https filter = wordpress logpath = /var/log/secure
Dodano następujące wiersze do
wp-config.php
:define('WP_FAIL2BAN_PROXIES','my.ser.ver.ip'); define('WP_FAIL2BAN_AUTH_LOG',LOG_AUTHPRIV);
Dodano poniższe linie do
/etc/varnish/default.vcl
wsub vcl_recv
bloku:if (req.restarts == 0) { if (req.http.X-Forwarded-For) { set req.http.X-Forwarded-For = req.http.X-Forwarded-For + ", " + client.ip; } else { set req.http.X-Forwarded-For = client.ip; } }
Dodano poniższe linie do
/etc/varnish/default.vcl
wsub vcl_pipe
bloku:set bereq.http.connection = "close"; return (pipe);