Puncte:0

Cum se creează failregex pentru a bloca imap-logins fail2ban

drapel cn

M-ar putea ajuta cineva cu crearea filtrului fail2ban corect. Adrese ip proaste bat portul 993 /etc/fail2ban/filter.d/dovecot.conf nu prinde un astfel de jurnal

Am găsit așa ceva, dar primesc erori cu asta

[Definiție]

failregex = ^%(__prefix_line)s(pop3|imap)-login: (Informații: )?(Autentificare anulată|Deconectat)(: Inactivitate)? \(((nicio încercare de autentificare|autentificare a eșuat, \d+ încercări)( în \d+ secunde)?|a încercat să $

Mail.log

28 ian 11:35:10 mbm2-srv dovecot: imap-login: Deconectat (fără încercări de autentificare în 7 secunde): user=<>, rip=117.50.110.5, lip=192.168.1.254, TLS, session=<4WmzJqM4FpuJ
28 ian 11:35:11 mbm2-srv dovecot: imap-login: Deconectat (fără încercări de autentificare în 0 secunde): user=<>, rip=117.50.110.5, lip=192.168.1.254, TLS handshaking: Conexiune închisă, sesiune =<8Bi9JqHWYIB1Mm4F>
28 ianuarie 11:35:12 mbm2-srv dovecot: imap-login: Deconectat (fără încercări de autentificare în 1 secundă): user=<>, rip=117.50.110.5, lip=192.168.1.254, TLS handshaking: Conexiune închisă, sesiune =<9vHEJqHWmIF1Mm4F>
28 ianuarie 11:35:13 mbm2-srv dovecot: imap-login: Deconectat (fără încercări de autentificare în 1 secundă): user=<>, rip=117.50.110.5, lip=192.168.1.254, TLS handshaking: read(size= 676) a eșuat: resetarea conexiunii de către peer, sesiune=<Ri3TJqHWtIJ1Mm4F>
28 ianuarie 11:35:13 mbm2-srv dovecot: imap-login: Deconectat (fără încercări de autentificare în 0 secunde): user=<>, rip=117.50.110.5, lip=192.168.1.254, TLS handshaking: Conexiune închisă, sesiune =<RjDbJqHWdIR1Mm4F>
28 ianuarie 11:35:14 mbm2-srv dovecot: imap-login: Deconectat (fără încercări de autentificare în 1 secundă): user=<>, rip=117.50.110.5, lip=192.168.1.254, TLS handshaking: Conexiune închisă, sesiune =<mHXjJqHWHIV1Mm4F>
28 ianuarie 11:35:14 mbm2-srv dovecot: imap-login: Deconectat (fără încercări de autentificare în 0 secunde): user=<>, rip=117.50.110.5, lip=192.168.1.254, TLS handshaking: SSL_accept() failed : eroare:14209102:Rutine SSL:tls_early_post_process_client_hello:protocol neacceptat, sesiune=<l6XnJqHW0IV1Mm4F>
28 ianuarie 11:35:15 mbm2-srv dovecot: imap-login: Deconectat (fără încercări de autentificare în 1 secundă): user=<>, rip=117.50.110.5, lip=192.168.1.254, TLS handshaking: read(size= 595) a eșuat: resetarea conexiunii de către peer, sesiune=<ic/zJqHWhoZ1Mm4F>
28 ianuarie 11:35:15 mbm2-srv dovecot: imap-login: Deconectat (fără încercări de autentificare în 0 secunde): user=<>, rip=117.50.110.5, lip=192.168.1.254, TLS handshaking: Conexiune închisă, sesiune =<aw78JqHWXId1Mm4F>
28 ianuarie 11:35:15 mbm2-srv dovecot: imap-login: Deconectat (fără încercări de autentificare în 0 secunde): user=<>, rip=117.50.110.5, lip=192.168.1.254, TLS handshaking: SSL_accept() failed : eroare:142090C1:Rutine SSL:tls_early_post_process_client_hello:fără cifru partajat, sesiune=<gTIAJ6HWMoh1Mm4F>
28 ianuarie 11:35:16 mbm2-srv dovecot: imap-login: Deconectat (fără încercări de autentificare în 0 secunde): user=<>, rip=117.50.110.5, lip=192.168.1.254, TLS handshaking: SSL_accept() failed : eroare:141CF06C:Rutine SSL:tls_parse_ctos_key_share:partajare cheie greșită, session=<l9UIJ6HW8Ih1Mm4F>

Iti multumesc din nou

Puncte:1
drapel il

Nu trebuie să scrieți propria regex dacă utilizați o versiune nouă fail2ban unde filtrul dovecot acceptă agresiv modul.
Puteți verifica cu:

fail2ban-regex /path/to/log-or-test-message dovecot[mode=aggressive]

dacă vezi chibrituri atunci funcționează pentru tine, așa că pur și simplu setează-l în ta închisoare.locală pentru închisoare porumbar:

[porumbar]
mod = agresiv
...
activat = adevărat

Am găsit așa ceva, dar primesc erori cu asta

Exemplul tău pare a fi incomplet (tuiat?), oricum nu are <ADDR> sau <HOST> precum și poate fi în principiu scris pentru o altă versiune fail2ban (nu ați furnizat-o).

Oricum, pentru v.0.10 sau mai mare ar putea arăta acest, doar că ar funcționa numai împreună cu prefregex specificate câteva linii mai sus în același filtru, precum și cu alte variabile de substituție specificate acolo și pot depinde, de asemenea, de versiunea filtrul comun includ.

Sau chiar ceva de genul acesta (trebuie să funcționeze cu fiecare versiune și nu necesită include):

failregex = ^\s*(?:\S+\s+)?(?:(?:dovecot(?:-auth)?|auth)(?:\[\d+\])?:?\s+)?( ?:kernel:\s?\[ *\d+\.\d+\]:?\s+)?(?:(?:dovecot: )?auth(?:-worker)?(?:\([^\ )]+\))?: )?(?:pam_unix(?:\(dovecot:auth\))?: |(?:pop3|imap|managesieve|submission)-login: )?(?:Info: ) ?(?:conn \w+:auth(?:-worker)? \(uid=\w+\): auth(?:-worker)?<\d+>: )?(?:Autentificare anulată|Deconectat|Telecomanda închisă conexiune|Clientul a părăsit conexiunea)(?::(?: [^ \(]+)+)? \((?:nicio încercare de autentificare|deconectat înainte ca auth să fie gata,|clientul nu a terminat \S+ auth, )(?: (?:în|așteptat) \d+ secunde)?\):(?: utilizator=<[^>]*>,)?(?: metoda=\S+,)? rip=<HOST>( ?:[^>]*(?:, session=<\S+>)?)\s*$

drapel cn
Mulțumesc, mă bucur să văd răspunsul. Voi încerca asta, dar se pare că este o scanare de porturi, nu un dos real sau o forță brută. Și pentru că portul 993 este deschis, vedeți destul de mult jurnalul ca acesta.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.