Doporučujeme: Služby pro Váš web | Bazar | TV program | Stahovač videí z YouTube | Měření rychlosti internetu | Italo.cz | SUDOKU

Můj blog – až 10 % špičkového kódu navíc!

Fail2ban: odrážení útoků na server

Datum: 10. 3. 2023 9.41 | Autor: Lukáš | 123× | Kategorie: Software | Komentáře: 2
#failregex = ([w-.^_]+) .*] "(CONNECT.*|GET http:.*|POST http:.*|GET /airtel/channels-sized-transparent/.*|GET /(.env|vendor/phpunit/).*|POST (/heartbeat/heartbeat|/cgi-bin/).*|GET.*(AhrefsBot|ineedthispage=yes|/wp-includes/wlwmanifest.xml).*|.*(YandexBot|SemrushBot|serpstatbot|BLEXBot|Adsbot|Barkrowler|MegaIndex.ru|Go-http-client|DotBot|python-requests|aiohttp|um-IC|SentiBot|ias-va|magpie-crawler|Sogou web spider)/.*|.* FUp/.*|.*(PetalBot;|IndeedBot |Keybot Translation-Search-Machine|ALittle Client|wp_is_mobile|Mediatoolkitbot|SEOkicks|CheckMarkNetwork|CensysInspect|woorankreview|FirmoGraph|Mail.RU_Bot|DataForSeoBot|ZoominfoBot||zgrab/0|expanseinc.com|seoscanners.info|binance.com).*|.*/../../../.*|GET /__media__/js/netsoltrademark.*|GET /shell?.*|.*Palo Alto Networks.*|GET /(v1|v2|v5|v6|v7|play|foc|tools|dts|ctadx|interface|api|fpupdate|TV_Update|ecom_mobile|axis2-admin)/.*|.*"-" "Dalvik/.*|GET /.golangci..*)
# Lepší varianta je tahle. Aspoň nemusí Fail2ban zjišťovat mnoho podmínek i několikrát za sekundu. Hlavně není potřeba kontrolovat logy každý den. Tohle blokuje prostě vše. A zatížení systému je téměř nulové - ale pouze do 20000 zablokovaných IP adres - potom je nutné vše smazat a jet znovu. Je to na port 80.
failregex = ^([0-9.:]*:(80|443) .*] "(CONNECT|GET|POST|HEAD) /((?!yes.txt|favicon.ico|server-status|munin|info.php).)*)$
[apache-lj]
enabled = true
port = http,https
filter = apache-lj
logpath = %(apache_access_log)s tail
maxretry = 1
findtime = 30
bantime = -1 # každého to zablokuje navždy, funguje to mnohem rychleji a lépe

# Aby se pořád neplnil disk, je dobré čas od času pustit tohle:
/etc/init.d/fail2ban stop
rm -f /var/lib/fail2ban/fail2ban.sqlite3
rm -f /var/log/fail2ban.*
/etc/init.d/fail2ban restart