Folyamatos flood támadás a wp-login.php megnyitásával

Üdv,



A WPMU-s oldalamat folyamatosan támadják már hosszú napok óta változó IP című botok. Van, hogy csak egyszerre egy, de pl. ma reggel 10 különböző IP-ről jött a támadás. Egy gépről percenként (!) 100 feletti a lekérések száma, így a szerver is igen hamar lehal. Megpróbálnak bejutni, többnyire admin felhasználónévvel, persze sikertelenül :slight_smile:



Az IP-k többnyire USA ( kb. 30%-a ), a többi a világ többi országából jön vegyesen. Jelenleg kézzel, .htaccess használatával tiltom őket le, de félóránként megint egy újabb beáll a sorba. A mellékelt képen látható, hogy a nagyját kitiltottam, de a 72.52.229.224 IP címűt még nem.



A kérdés az, hogy hogyan lehetne őket automatikusan, illetve végleg kitiltani az oldalról. Több megoldás is eszembe jutott:



1., wp-login.php engedélyezése csak magyar IP-k számára, többiek kitiltva.



Eredmény: Saját magamat is sikerült kitiltani, pedig az IP-m benne volt az “Allow” listában.



2., Plugin, ami .htaccess-be írja azokat, akik túl sokszor kérik le az oldalt X időn belül. Nos, ilyen plugint nem ismerek, pedig még kerestem is :slight_smile: Létezik ilyen?



3., /wp-admin URL megváltoztatása.



Ha jól tudom, csak pluginnal lehetséges, ha pedig az csődöt mond, akkor be sem tudok lépni :slight_smile:







Szerintem nem egyedül vagyok ezzel a problémával, tavaly ~márciusban jelentek meg cikkek, miszerint globális a probléma. Kerestem rá megoldást, de használhatót nem találtam.





Köszönöm előre is a segítséget :slight_smile:

  1. akkor valamit nem jól csináltál, ha benne vagy az engedélyezett listában, nem tiltod ki magad. Vagy próbáld így:

    allow from .hu

    deny from all

    Így, ha magyarországi ip címed van, nem tiltod ki magad.


  2. admin mappa jelszavas védelme

    http://www.wpbeginner.com/wp-tutorials/how-to-password-protect-your-wordpress-admin-wp-admin-directory/


  3. belépést monitorozó és x. számú belépési kísérlet után az adott ip-t x időre letiltó bővítmények vannak, pl. login lockdown.

1., Ezt a .hu-s változatot próbáltam már, de nem működött. Megpróbálom megint.



allow from 176.221.0.0

deny from all



Így volt benne, az én IP-m pedig 176.221.3.22 volt. És nem engedte megnyitni az oldalt.





3., De ez csak a belépést akadályozza meg, az oldal betöltését ( és ezzel az oldal túlterhelését ) nem.

Persze, mert nem így kellett volna megadnod. Így csak pontosan a 176.221.0.0 ip-t engedi. Add meg a 176.221 tartományt.



Nekem működik a .hu. A tárhelyszolgáltatóm nem tudott belépni, a wp-mbe, mert sikerült otthagynom a tiltást, ők meg Dallasban vannak.

Én a login php-ba tennék IP tiltást, mintsem, hogy mindent tiltsak.

Erre gondtál?



order allow,deny

deny from all

allow from 1.1.1.1



Ha igen, akkor a botokat miért ne tilthatnám ki mindenhonnan? Ha másra, akkor mire? :)

All ine one security - Flood védelméről pozitívak a tapasztalataim. MU kompatibilis és jól teszi a dolgát. :slight_smile:

Sok idő elteltével, de végül ( és végre ) megtaláltam a megoldást ezen az oldalon:



https://perishablepress.com/protect-post-requests/



A sokféle opció közül nekem a “Control POST via referrer” nevű kódsor oldotta meg a problémát, ami a következő:



```
# allow POST based on referrer

RewriteCond %{REQUEST_METHOD} POST
RewriteCond %{REQUEST_URI} /contact.php
RewriteCond %{HTTP_REFERER} !(.*)example.com(.*) [OR]
RewriteCond %{HTTP_USER_AGENT} ^$
RewriteRule .* - [F,L]
Az oldalon hibásan van feltüntetve, és bent maradt egy felesleges komment, a fenti verzióban ez már javításra került.<br />
 <br />
 <br />
.htaccess fájlba beillesztve kiszűri az összes olyan látogatót, akinek nincs Header sor a böngészőjében és POST kérést indít a megadott fájlhoz ( a példában comment.php ). Ilyen pedig csak a botoknál fog előfordulni, így ez a megoldás közel 100%-os. Azért közel, mert idővel ezt is biztos javítani fogják.<br />
 <br />
 <br />
Előre is szívesen annak, aki ugyanezzel a problémával küzd és sikerült így megoldania :)<br />
</div>