ฉันได้ทำการกรองบางอย่างสำหรับ fail2ban ของฉันแล้ว แต่เป็นเพียงสิ่งง่ายๆ เช่น:
[คำนิยาม]
failregex = ^ .* "รับ .*/wp-login.php
ละเว้นregex =
ฉันไม่ได้ใช้ wordpress บนเซิร์ฟเวอร์ของฉัน ดังนั้นฉันจึงบล็อกความพยายามที่เป็นอันตรายได้มากมาย และฉันได้สร้างสิ่งที่คล้ายกันสำหรับ: phpmyadmin, wp-admin, wp-include เป็นต้น
แต่ฉันพบสิ่งแปลก ๆ ใน access.log เช่น:
167.172.145.56 - - [22/Sep/2021:06:44:50 -0700] "GET /wp-login.php HTTP/1.1" 403 9901 "http://cpanel.alebalweb-blog.com/wp-login .php" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:62.0) Gecko/20100101 Firefox/62.0"
167.172.145.56 - - [22/Sep/2021:06:44:50 -0700] "GET /wp-login.php HTTP/1.1" 403 9901 "http://mail.alebalweb-blog.com/wp-login .php" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:62.0) Gecko/20100101 Firefox/62.0"
61.135.15.175 - - [22/Sep/2021:05:45:24 -0700] "GET / HTTP/1.1" 200 26210 "http://webdisk.alebalweb-blog.com/" "Mozilla/5.0 (Linux; Android 10.0; MI 2 Build/O012) AppleWebKit/537.36 (KHTML เช่น Gecko) Chrome/88.0.4472.114 Mobile Safari/537.36"
61.135.15.175 - - [22/Sep/2021:05:45:24 -0700] "GET / HTTP/1.1" 200 26210 "http://webmail.alebalweb-blog.com/" "Mozilla/5.0 (Linux; Android 10.0; MI 2 Build/O012) AppleWebKit/537.36 (KHTML เช่น Gecko) Chrome/88.0.4472.114 Mobile Safari/537.36"
61.135.15.175 - - [22/Sep/2021:05:45:24 -0700] "GET / HTTP/1.1" 200 26210 "http://cpcalendars.alebalweb-blog.com/" "Mozilla/5.0 (Linux; Android 10.0; MI 2 Build/O012) AppleWebKit/537.36 (KHTML เช่น Gecko) Chrome/88.0.4472.114 Mobile Safari/537.36"
ไม่มีโดเมนย่อยเหล่านั้น
ฉันพยายามสร้างตัวกรองใหม่โดยได้รับแรงบันดาลใจจาก apache-badbots แต่ฉันไม่แน่ใจว่าถูกต้อง:
[คำนิยาม]
varietytoblock = cpanel\.|store\.|webdisk\.|autodiscover\.|app\.|cpcalendars\.|cpcontacts\.|webmail\.|mail\.|fulaifushi\.|surf11818\.|asg\.| owa\.|แลกเปลี่ยน\.\$
failregex = ^<HOST> -.*"(GET|POST).*HTTP.*".*(?:%(varioustoblock)s).*"$
ละเว้นregex =
รูปแบบวันที่ = ^[^\[]
โดยเฉพาะอย่างยิ่งสำหรับ (.) ในอดีตฉันมีปัญหากับ (.) ในตัวกรองของ fail2ban และวิธีแก้ไขคือลบออกทั้งหมด...
แต่ในกรณีนี้ ไม่สามารถลบออกได้ ฉันไม่สามารถบล็อกใครก็ตามที่มีคำว่า "เมล" ใน url ของฉัน... ฉันต้องแน่ใจว่าได้บล็อก "เมล"
และฉันต้องการสร้างตัวกรองขนาดใหญ่ตัวเดียวที่ระบุทั้งโดเมนย่อยที่ไม่มีอยู่จริงและความพยายามในการเข้าถึง wordpress หรือ phpmyadmin แต่ pyton regex นั้นน่ากลัวมากหากคุณไม่เคยใช้มาก่อน...
ใครสามารถช่วยฉันได้บ้าง
(ฉันเคยคิดที่จะลบ * .alebalweb-blog.com ออกจากการกำหนดค่า DNS แต่ฉันไม่แน่ใจว่าเป็นความคิดที่ดีไหม เพราะฉันใช้โดเมนย่อยบางโดเมนด้วย)
ปล. ฉันควรกังวลแค่ไหนหากมีคนพยายามเข้าถึงโดเมนย่อยที่ไม่มีอยู่ในไซต์ของฉัน