Rédaction d'un regex multiligne fail2ban

J'ai eu des hôtes ennuyeux en essayant avec un server SSH que je cours, et j'essaie de les interdire en utilisant fail2ban. Le problème est que je n'ai pas beaucoup travaillé avec les regexes, et encore less avec Python regexes.

Voici les lignes gênantes dans mon auth.log:

Nov 19 18:58:17 myhost sshd[48272]: Connection from xxx.xxx.xxx.xxx port 3284 on my.host.ip.address port 22 Nov 19 18:58:21 myhost sshd[48272]: fatal: Read from socket failed: Connection reset by peer [preauth] 

Je veux prendre les deux lignes dans le regex, j'ai vu dans d'autres publications comment faire des choses multilignes, mais pour le moment, je ne peux même pas l'get pour correspondre à la première ligne! Voici un extrait de mon file * .conf:

 [INCLUDES] # Read common prefixes. If any customizations available -- read them from # common.local before = common.conf [Init] maxlines = 2 [Definition] _daemon = sshd failregex = ^%(__prefix_line)s^Connection from <HOST>*$ 

Je comprends que le "__prefix_line" est conçu pour capturer le premier bit "myhost sshd [PID]", mais tout ce que je lance "fail2ban-regex" est:

 Results ======= Failregex: 0 total Ignoreregex: 0 total Date template hits: |- [# of hits] date format | [115124] MONTH Day Hour:Minute:Second `- Lines: 115124 lines, 0 ignored, 0 matched, 115124 missed 

Quelqu'un a-t-il une idée?

Merci d'avance!

2 Solutions collect form web for “Rédaction d'un regex multiligne fail2ban”

Je me suis battu avec multilingue regex depuis longtime sur Ubuntu. Il s'avère que je devais mettre à jour vers v 0.9.1 pour le faire fonctionner, ce qui nécessitait de download le dernier tar.gz de fail2ban eux-mêmes. Pour Ubuntu 14.04, la version LTS cofinit à 0.8.11

Ensuite, cela a fonctionné comme prévu.

J'utilise fail2ban 0.9.5 sur Ubuntu Server LTS 14.04 et j'utilise une bonne règle wronguser.conf qui interdit tous les users «faux / non autorisés» pour mon ssh et squirrelmail (qui utilise «dovecot») et en regardant / var / log / auth .log pour follling multilignes:

 Aug 15 10:15:25 server auth: pam_unix(dovecot:auth): check pass; user unknown Aug 15 10:15:25 server auth: pam_unix(dovecot:auth): authentication failure; logname= uid=0 euid=0 tty=dovecot ruser=alumni rhost=14.141.17.167 

et

 Aug 15 12:39:10 server sshd[5851]: pam_unix(sshd:auth): check pass; user unknown Aug 15 12:39:10 server sshd[5851]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=91.224.160.106 

avec une seule ligne pour l'interdiction d'user root ssh:

 Aug 15 05:50:20 server sshd[20677]: Failed password for root from 62.147.227.164 port 55253 ssh2 

La règle est la suivante:

 [INCLUDES] before = common.conf [Definition] _daemon = (?:sshd|postfix/smptd) failregex = ^%(__prefix_line)s[iI](?:llegal|nvalid) user .* from <HOST>\s*$ ^%(__prefix_line)sFailed (?:password|publickey) for root from <HOST>(?: port \d*)?(?: ssh\d*)?$ dovecot.*user unknown\n.*dovecot.*authentication failure.*rhost\=<HOST> ingoreregex = [Init] maxlines = 2 

il est inclus dans jail.local as:

 [wronguser] enabled = true port = 1:65535 filter = wronguser logpath = /var/log/auth.log maxretry = 1 bantime = -1 

Par défaut, apt-get fail2ban sur Ubuntu LTS 14.04 est 0.8.11 et ne fonctionne pas avec multiligne regex. Donc, vous devez installer manuellement le dernier fail2ban stable. Je l'ai fait directement à partir de leur pension alimentaire.

  • SSH Two-Factor auth (2FA) avec un yubikey
  • La session ssh non interactive ne se termine pas, le process sshd attend toujours après la sortie d'un script
  • Immergeant l'utilisation globale de la memory pour les process enfants
  • Échec échoué: tuyau brisé (dans Ubuntu 10.04)
  • SSH entrant a cessé de fonctionner sur FreeBSD 7.2
  • Impossible de se connecter via SSH avec le count LDAP après avoir modifié le port par défaut
  • Zabbix 2.2 SSH / FTP performance monitoring
  • Télécharger les clés publiques et privées de Google Cloud Instance
  • Verrouillé hors de ma boîte Slicehost.com Ubuntu
  • Ubuntu: l'user a un shell, il n'a pas de mot de passe, mais je ne peux pas le ssh? Pourquoi?
  • Redémarrage du point d'access via SSH avec pexpect ... se bloque. Des idées?
  • Les astuces du serveur de linux et windows, tels que ubuntu, centos, apache, nginx, debian et des sujets de rĂ©seau.