19 ม.ค. 22:49:00 smart-mahavira postfix/smtpd[670231]: สร้างการเชื่อมต่อแล้ว
19 ม.ค. 22:49:00 smart-mahavira postfix/smtpd[670231]: master_notify: สถานะ 0
19 ม.ค. 22:49:00 smart-mahavira postfix/smtpd[670231]: name_mask: ทรัพยากร
19 ม.ค. 22:49:00 smart-mahavira postfix/smtpd[670231]: name_mask: ซอฟต์แวร์
19 ม.ค. 22:49:00 smart-mahavira postfix/smtpd[670231]: เชื่อมต่อจาก scanner-05.ch1.censys-scanner.com[162.142.125.57]
19 ม.ค. 22:49:00 smart-mahavira postfix/smtpd[670231]: match_list_match: scanner-05.ch1.censys-scanner.com: ไม่ตรงกัน
19 ม.ค. 22:49:00 smart-mahavira postfix/smtpd[670231]: match_list_match: 162.142.125.57: ไม่ตรงกัน
19 ม.ค. 22:49:00 smart-mahavira postfix/smtpd[670231]: match_hostname: smtpd_authorized_xforward_hosts: scanner-05.ch1.censys-scanner.com ~? 12>
19 ม.ค. 22:49:00 smart-mahavira postfix/smtpd[670231]: match_hostaddr: smtpd_authorized_xforward_hosts: 162.142.125.57 ~? 127.0.0.0/8
19 ม.ค. 22:49:00 smart-mahavira postfix/smtpd[670231]: match_hostname: smtpd_authorized_xforward_hosts: scanner-05.ch1.censys-scanner.com ~? [:>
19 ม.ค. 22:49:00 smart-mahavira postfix/smtpd[670231]: match_hostaddr: smtpd_authorized_xforward_hosts: 162.142.125.57 ~? [::1]/128
19 ม.ค. 22:49:00 smart-mahavira postfix/smtpd[670231]: match_list_match: scanner-05.ch1.censys-scanner.com: ไม่ตรงกัน
19 ม.ค. 22:49:00 smart-mahavira postfix/smtpd[670231]: match_list_match: 162.142.125.57: ไม่ตรงกัน
19 ม.ค. 22:49:00 smart-mahavira postfix/smtpd[670231]: smtp_stream_setup: maxtime=3600 enable_deadline=0
19 ม.ค. 22:49:00 smart-mahavira postfix/smtpd[670231]: match_list_match: scanner-05.ch1.censys-scanner.com: ไม่ตรงกัน
19 ม.ค. 22:49:00 smart-mahavira postfix/smtpd[670231]: match_list_match: 162.142.125.57: ไม่ตรงกัน
19 ม.ค. 22:49:00 smart-mahavira postfix/smtpd[670231]: auto_clnt_open: เชื่อมต่อกับ private/anvil
ทั้งหมดนี้อยู่ใน syslog ของฉัน
ฉันไม่เห็นตัวกรองใด ๆ ใน fail2ban
ฉันจะเขียนตัวกรองได้อย่างไร
ฉันเขียน regex เพื่อบันทึกที่อยู่ IP ทั้งหมดนั้น
พุช (@matches,$&) while($search_contents =~ /$regex/gm);
ต่อไปคือฉันต้องหาวิธีสร้างตัวกรองใน fail2ban
คุณให้ไฟล์เต็มเหมือนใน postfix.conf ได้ไหม
คุณให้ไฟล์เต็มได้ไหม นี่คือ postfix.conf --->
ตัวกรอง # Fail2Ban สำหรับการปฏิเสธ SMTP ของ Postfix ที่เลือก
#
#
[รวมถึง]
# อ่านคำนำหน้าทั่วไป หากมีการปรับแต่งใดๆ ให้อ่านได้จาก
#common.local
ก่อน = Common.conf
[คำนิยาม]
_daemon = postfix(-\w+)?/\w+(?:/smtp[ds])?
_port = (?::\d+)?
prefregex = ^%(__prefix_line)s<mdpr-<mode>> <F-CONTENT>.+</F-CONTENT>$
mdpr-ปกติ = (?:NOQUEUE: ปฏิเสธ:| การไปป์ไลน์คำสั่งที่ไม่เหมาะสมหลังจาก \S+)
mdre-ปกติ=^RCPT จาก [^[]*\[<HOST>\]%(_port)s: 55[04] 5\.7\.1\s
^RCPT จาก [^[]*\[<HOST>\]%(_port)s: 45[04] 4\.7\.1 (?:บริการไม่พร้อมใช้งาน\b|ไคลเอ็นต์โฮสต์ถูกปฏิเสธ: ไม่พบ (ย้อนกลับ) ของคุณ ?ชื่อโฮสต์\b)
^RCPT จาก [^[]*\[<HOST>\]%(_port)s: 450 4\.7\.1 (<[^>]*>)?: คำสั่ง Helo ถูกปฏิเสธ: ไม่พบโฮสต์\b
^EHLO จาก [^[]*\[<HOST>\]%(_port)s: 504 5\.5\.2 (<[^>]*>)?: คำสั่ง Helo ถูกปฏิเสธ: ต้องการชื่อโฮสต์ที่มีคุณสมบัติครบถ้วน\ ข
^VRFY จาก [^[]*\[<HOST>\]%(_port)s: 550 5\.1\.1\s
^RCPT จาก [^[]*\[<HOST>\]%(_port)s: 450 4\.1\.8 (<[^>]*>)?: ที่อยู่ผู้ส่งถูกปฏิเสธ: ไม่พบโดเมน\b
^จาก [^[]*\[<HOST>\]%(_port)s:?
mdpr-auth = คำเตือน:
mdre-auth = ^[^[]*\[<HOST>\]%(_port)s: SASL ((?i)LOGIN|PLAIN|(?:CRAM|DIGEST)-MD5) การตรวจสอบสิทธิ์ล้มเหลว:(?! สูญหายไปยังเซิร์ฟเวอร์การตรวจสอบ | กลไกการตรวจสอบความถูกต้องไม่ถูกต้อง)
mdre-auth2= ^[^[]*\[<HOST>\]%(_port)s: SASL ((?i)LOGIN|PLAIN|(?:CRAM|DIGEST)-MD5) การตรวจสอบสิทธิ์ล้มเหลว:(?! สูญหายไปยังเซิร์ฟเวอร์ตรวจสอบสิทธิ์)
# todo: ตรวจสอบ/ลบ "กลไกการพิสูจน์ตัวตนที่ไม่ถูกต้อง" ออกจากรายการละเว้น ถ้า gh-1243 จะเสร็จสิ้น (ดู gh-1297)
# โหมด "rbl" รวมอยู่ในโหมด "ปกติ" แต่ถ้าจำเป็นสำหรับคุก "postfix-rbl" เท่านั้น:
mdpr-rbl = %(mdpr-ปกติ)s
mdre-rbl = ^RCPT จาก [^[]*\[<HOST>\]%(_port)s: [45]54 [45]\.7\.1 บริการไม่พร้อมใช้งาน ไคลเอ็นต์โฮสต์ \[\S+\] ถูกบล็อก\b
# โหมด "rbl" รวมอยู่ในโหมด "ปกติ" (ภายในกฎข้อที่ 1)
mdpr-เพิ่มเติม = %(mdpr-ปกติ)s
mdre-more = %(mdre-ปกติ)s
mdpr-ddos = ขาดการเชื่อมต่อหลังจาก (?! DATA) [A-Z]+
mdre-ddos = ^จาก [^[]*\[<HOST>\]%(_port)s:?
mdpr-พิเศษ = (?:%(mdpr-auth)s|%(mdpr-ปกติ)s)
mdre-พิเศษ = %(mdre-auth)s
%(mdre-ปกติ)s
mdpr-ก้าวร้าว = (?:%(mdpr-auth)s|%(mdpr-ปกติ)s|%(mdpr-ddos)s)
mdre-ก้าวร้าว = %(mdre-auth2)s
%(mdre-ปกติ)s
mdre-scanner=(?<=match: )(.*)(?=: ไม่ตรงกัน)
mdpr-scanner=(?<=match: )(.*)(?=: ไม่ตรงกัน)
failregex = <mdre-<mode>>
# พารามิเตอร์ "โหมด": มากกว่า (ค่าเริ่มต้นรวมปกติและ rbl), รับรองความถูกต้อง, ปกติ, rbl, ddos, พิเศษหรือก้าวร้าว (รวมทั้งหมด)
# ตัวอย่างการใช้งาน (สำหรับ jail.local):
# [แก้ไขภายหลัง]
# โหมด = ก้าวร้าว
# # หรือคุกอื่น (เขียนพารามิเตอร์ตัวกรองของคุกใหม่):
# [postfix-rbl]
# ตัวกรอง = postfix [โหมด = rbl]
#
โหมด = เพิ่มเติม
ละเว้นregex =
[ในนั้น]
Journalmatch = _SYSTEMD_UNIT=postfix.service
#ผู้แต่ง: ซีริล จาเกียร์
แปลก. ฉันพบตัวกรอง postfix_sasl ใน mediatemple ไม่ใช่ใน amazon lightsail postfix
postfix_sasl นั้นทำงานบนความล้มเหลวของ Sasl
ตอนนี้ฉันต้องใช้มันให้ตรงกับข้อผิดพลาดการจับคู่นี้ ใครพยายามเข้าสู่ระบบเซิร์ฟเวอร์ของฉัน และพวกเขาได้ที่อยู่ IP ของฉันมาได้อย่างไร plesk แจกพวกเขาหรือ mxlookup (ฉันเคยตรวจสอบอีเมลที่ใช้งานได้)
นี่คือ postfix-sasl.conf
ใครช่วยอธิบายแต่ละบรรทัดได้ไหม และฉันจะใช้มันได้อย่างไรเมื่อไม่มีข้อผิดพลาดในการเข้าสู่ระบบที่ตรงกัน
# ตัวกรอง Fail2Ban สำหรับความล้มเหลวในการรับรองความถูกต้องของ postfix
#
[รวมถึง]
ก่อน = Common.conf
[คำนิยาม]
_daemon = postfix(-\w+)?/(?:submission/|smtps/)?smtp[ds]
failregex = ^%(__prefix_line)swarning: [-._\w]+\[<HOST>\]: SASL ((?i)LOGIN|PLAIN|(?:CRAM|DIGEST)-MD5) การตรวจสอบสิทธิ์ล้มเหลว (:[ A-Za-z0-9+/:]*={0,2})?\s*$
ละเลยregex = การรับรองความถูกต้องล้มเหลว: การเชื่อมต่อกับเซิร์ฟเวอร์การรับรองความถูกต้องหายไป $
[ในนั้น]
Journalmatch = _SYSTEMD_UNIT=postfix.service
# ผู้แต่ง: Yaroslav Halchenko
ใส่รหัสที่นี่
ฉันได้รับสิ่งนี้ แต่ฉันไม่เห็นfail2ban ip ใด ๆ ที่ไม่ตรงกัน
fail2ban-regex -v /var/log/maillog /etc/fail2ban/filter.d/nomatcชม.
การทดสอบการทำงาน
=============
ใช้ไฟล์ตัวกรอง failregex : nomatch, basedir: /etc/fail2ban
ใช้ datepattern : ตัวตรวจจับเริ่มต้น
ใช้ไฟล์บันทึก : /var/log/maillog
ใช้การเข้ารหัส : UTF-8
ผล
=======
Failregex: ทั้งหมด 100 รายการ
|- #) [# ของการเข้าชม] นิพจน์ทั่วไป
| 1) [81] ^match_list_match: <ADDR>: <F-NOFAIL>ไม่ตรงกัน</F-NOFAIL>
| 152.32.131.196 ศ. 21 ม.ค. 06:52:15 น. 2565
| 152.32.131.196 ศ. 21 ม.ค. 06:52:15 น. 2565
| 152.32.131.196 ศ. 21 ม.ค. 06:52:15 น. 2565
| 152.32.131.196 ศ. 21 ม.ค. 06:52:15 น. 2565
| 152.32.131.196 ศ. 21 ม.ค. 06:52:16 น. 2565
| 45.33.78.63 ศ. 21 ม.ค. 07:01:15 น. 2565
| 45.33.78.63 ศ. 21 ม.ค. 07:01:15 น. 2565
| 45.33.78.63 ศ. 21 ม.ค. 07:01:17 น. 2565
| 139.162.99.243 ศ. 21 ม.ค. 08:19:03 น. 2565
| 139.162.99.243 ศ. 21 ม.ค. 08:19:03 น. 2565
| 139.162.99.243 ศ. 21 ม.ค. 08:19:03 น. 2565
| 139.162.99.243 ศ. 21 ม.ค. 08:19:03 น. 2565
| 162.142.125.41 ศ. 21 ม.ค. 08:48:58 น. 2565
| 162.142.125.41 ศ. 21 ม.ค. 08:48:58 น. 2565
| 162.142.125.41 ศ. 21 ม.ค. 08:48:58 น. 2565
| 162.142.125.41 ศ. 21 ม.ค. 08:48:58 น. 2565
| 162.142.125.41 ศ. 21 ม.ค. 08:48:58 น. 2565
| 45.56.101.55 ศ. 21 ม.ค. 10:13:22 น. 2565
| 45.56.101.55 ศ. 21 ม.ค. 10:13:22 น. 2565
| 45.56.101.55 ศ. 21 ม.ค. 10:13:22 น. 2565
| 45.56.101.55 ศ. 21 ม.ค. 10:13:22 น. 2565
| 45.56.101.55 ศ. 21 ม.ค. 10:13:22 น. 2565
| 162.142.125.42 ศ. 21 ม.ค. 10:31:18 น. 2565
| 162.142.125.42 ศ. 21 ม.ค. 10:31:18 น. 2565
| 162.142.125.42 ศ. 21 ม.ค. 10:31:19 น. 2565
| 162.142.125.42 ศ. 21 ม.ค. 10:31:19 น. 2565
| 162.142.125.42 ศ. 21 ม.ค. 10:31:19 น. 2565
| 45.79.158.51 ศ. 21 ม.ค. 11:02:09 น. 2565
| 45.79.158.51 ศ. 21 ม.ค. 11:02:09 น. 2565
| 45.79.158.51 ศ. 21 ม.ค. 11:02:11 น. 2565
| 104.206.128.26 ศ. 21 ม.ค. 12:07:17 น. 2565
| 104.206.128.26 ศ. 21 ม.ค. 12:07:17 น. 2565
| 104.206.128.26 ศ. 21 ม.ค. 12:07:17 น. 2565
| 45.33.95.172 ศ. 21 ม.ค. 12:15:12 น. 2565
| 45.33.95.172 ศ. 21 ม.ค. 12:15:12 น. 2565
| 45.33.95.172 ศ. 21 ม.ค. 12:15:12 น. 2565
| 45.33.95.172 ศ. 21 ม.ค. 12:15:12 น. 2565
| 45.33.95.172 ศ. 21 ม.ค. 12:15:12 น. 2565
| 192.241.219.199 ศ. 21 ม.ค. 13:24:46 น. 2565
| 192.241.219.199 ศ. 21 ม.ค. 13:24:46 น. 2565
| 192.241.219.199 ศ. 21 ม.ค. 13:24:46 น. 2565
| 45.79.178.163 ศ. 21 ม.ค. 14:13:30 น. 2565
| 45.79.178.163 ศ. 21 ม.ค. 14:13:30 น. 2565
| 45.79.178.163 ศ. 21 ม.ค. 14:13:30 น. 2565
| 45.79.178.163 ศ. 21 ม.ค. 14:13:30 น. 2565
| 45.79.178.163 ศ. 21 ม.ค. 14:13:30 น. 2565
| 96.126.109.15 ศ. 21 ม.ค. 16:13:44 น. 2565
| 96.126.109.15 ศ. 21 ม.ค. 16:13:44 น. 2565
| 96.126.109.15 ศ. 21 ม.ค. 16:13:44 น. 2565
| 96.126.109.15 ศ. 21 ม.ค. 16:13:44 น. 2565
| 96.126.109.15 ศ. 21 ม.ค. 16:13:44 น. 2565
| 66.240.236.116 ศ. 21 ม.ค. 17:29:42 น. 2565
| 66.240.236.116 ศ. 21 ม.ค. 17:29:42 น. 2565
| 66.240.236.116 ศ. 21 ม.ค. 17:29:42 น. 2565
| 66.240.236.116 ศ. 21 ม.ค. 17:29:43 น. 2565
| 69.164.210.216 ศ. 21 ม.ค. 18:13:10 น. 2565
| 69.164.210.216 ศ. 21 ม.ค. 18:13:10 น. 2565
| 69.164.210.216 ศ. 21 ม.ค. 18:13:10 น. 2565
| 69.164.210.216 ศ. 21 ม.ค. 18:13:10 น. 2565
| 69.164.210.216 ศ. 21 ม.ค. 18:13:10 น. 2565
| 164.90.197.27 ศ. 21 ม.ค. 19:06:22 น. 2565
| 164.90.197.27 ศ. 21 ม.ค. 19:06:22 น. 2565
| 164.90.197.27 ศ. 21 ม.ค. 19:06:22 น. 2565
| 164.90.197.27 ศ. 21 ม.ค. 19:06:52 น. 2565
| 45.56.99.23 ศ. 21 ม.ค. 20:14:25 น. 2565
| 45.56.99.23 ศ. 21 ม.ค. 20:14:25 น. 2565
| 45.56.99.23 ศ. 21 ม.ค. 20:14:25 น. 2565
| 45.56.99.23 ศ. 21 ม.ค. 20:14:25 น. 2565
| 45.56.99.23 ศ. 21 ม.ค. 20:14:25 น. 2565
| 178.79.189.233 ศ. 21 ม.ค. 20:22:36 น. 2565
| 178.79.189.233 ศ. 21 ม.ค. 20:22:36 น. 2565
| 178.79.189.233 ศ. 21 ม.ค. 20:22:36 น. 2565
| 178.79.189.233 ศ. 21 ม.ค. 20:22:38 น. 2565
| 162.142.125.44 ศ. 21 ม.ค. 20:29:10 น. 2565
| 162.142.125.44 ศ. 21 ม.ค. 20:29:10 น. 2565
| 162.142.125.44 ศ. 21 ม.ค. 20:29:10 น. 2565
| 162.142.125.44 ศ. 21 ม.ค. 20:29:10 น. 2565
| 162.142.125.44 ศ. 21 ม.ค. 20:29:10 น. 2565
| 45.56.104.184 ศ. 21 ม.ค. 21:00:33 น. 2565
| 45.56.104.184 ศ. 21 ม.ค. 21:00:33 น. 2565
| 45.56.104.184 ศ. 21 ม.ค. 21:00:35 น. 2565
| 2) [19] ^auto_clnt_open: เชื่อมต่อกับส่วนตัว/ทั่ง
| 152.32.131.196 ศ. 21 ม.ค. 06:52:15 น. 2565
| 45.33.78.63 ศ. 21 ม.ค. 07:01:17 น. 2565
| 139.162.99.243 ศ. 21 ม.ค. 08:19:03 น. 2565
| 162.142.125.41 ศ. 21 ม.ค. 08:48:58 น. 2565
| 45.56.101.55 ศ. 21 ม.ค. 10:13:22 น. 2565
| 162.142.125.42 ศ. 21 ม.ค. 10:31:19 น. 2565
| 45.79.158.51 ศ. 21 ม.ค. 11:02:11 น. 2565
| 104.206.128.26 ศ. 21 ม.ค. 12:07:17 น. 2565
| 45.33.95.172 ศ. 21 ม.ค. 12:15:12 น. 2565
| 192.241.219.199 ศ. 21 ม.ค. 13:24:46 น. 2565
| 45.79.178.163 ศ. 21 ม.ค. 14:13:30 น. 2565
| 96.126.109.15 ศ. 21 ม.ค. 16:13:44 น. 2565
| 66.240.236.116 ศ. 21 ม.ค. 17:29:42 น. 2565
| 69.164.210.216 ศ. 21 ม.ค. 18:13:10 น. 2565
| 164.90.197.27 ศ. 21 ม.ค. 19:06:22 น. 2565
| 45.56.99.23 ศ. 21 ม.ค. 20:14:25 น. 2565
| 178.79.189.233 ศ. 21 ม.ค. 20:22:36 น. 2565
| 162.142.125.44 ศ. 21 ม.ค. 20:29:10 น. 2565
| 45.56.104.184 ศ. 21 ม.ค. 21:00:35 น. 2565
`-
Ignoreregex: 0 ทั้งหมด
เทมเพลตวันที่เข้าชม:
|- [# ของการเข้าชม] รูปแบบวันที่
| [3923] {^LN-BEG}(?:DAY )?MON Day %k:Minute:Second(?:\.Microseconds)?(?: ExYear)?
| [0] {^LN-BEG}อดีตปี(?P<_sep>[-/.])เดือน(?P=_sep)วัน(?:T| ?)24ชั่วโมง:นาที:วินาที(?:[.,]ไมโครวินาที )?(?:\s*โซนออฟเซ็ต)?
| [0] {^LN-BEG}(?:DAY )?วันจันทร์ สิ้นปี %k:นาที:วินาที(?:\.ไมโครวินาที)?
| [0] {^LN-BEG}วัน(?P<_sep>[-/])เดือน(?P=_sep)(?:ExYear|ExYear2) %k:นาที:วินาที
| [0] {^LN-BEG}วัน(?P<_sep>[-/])MON(?P=_sep)ExYear[ :]?24hour:Minute:Second(?:\.Microseconds)?(?: Zone ชดเชย)?
| [0] {^LN-BEG}เดือน/วัน/ปีเก่า:24ชั่วโมง:นาที:วินาที
| [0] {^LN-BEG}เดือน-วัน-อดีตปี %k:นาที:วินาที(?:\.ไมโครวินาที)?
| [0] {^LN-BEG}ยุค
| [0] {^LN-BEG}ExYear2ExMonthExDay ?24ชั่วโมง:นาที:วินาที
| [0] {^LN-BEG}วันจันทร์ อดีตปี 12 ชั่วโมง:นาที:วินาที AMPM
| [0] {^LN-BEG}ExYearExMonthExDay(?:T| ?)Ex24hourExMinuteExSecond(?:[.,]Microseconds)?(?:\s*Zone offset)?
| [0] {^LN-BEG}(?:ชื่อโซน )?(?:DAY )?MON Day %k:Minute:Second(?:\.Microseconds)?(?: ExYear)?
| [0] {^LN-BEG}(?:โซนออฟเซ็ต )?(?:DAY )?MON Day %k:Minute:Second(?:\.Microseconds)?(?: ExYear)?
| [0] {^LN-BEG}TAI64N
| [0] {^LN-BEG}24 ชั่วโมง:นาที:วินาที
| [0] ^<เดือน/วัน/อดีตปี2@24ชั่วโมง:นาที:วินาที>
| [0] ^วันจันทร์-วัน-อดีตปี2 %k:นาที:วินาที
`-
บรรทัด: 3923 บรรทัด 0 ละเว้น 100 ตรงกัน 3823 พลาด
[ประมวลผลใน 0.25 วินาที]
บรรทัดที่ไม่ได้รับ: พิมพ์มากเกินไป ใช้ --print-all-missed เพื่อพิมพ์ทั้งหมด 3823 บรรทัด
ป้อนคำอธิบายรูปภาพที่นี่