我试图写一个fail2ban正则expression式来捕获任何尝试用户id“administrador”的人。 例如,这个日志条目:
Jan 2 09:55:01 mail2 dovecot: pop3-login: Disconnected: user=<administrador>, method=PLAIN, rip=::ffff:201.130.1.218
这是我到目前为止的正则expression式:
failregex = (?: pop3-login|imap-login): .*(?:Disconnected: user=\<administrador\>).*rip=(?P<host>\S*),.*
它不捕获上面的日志条目,因为语法是错误的。 谁能帮忙?
您的模式以“pop3”或“imap”开头…日志条目以date开始。
failregex = .*(pop3-login|imap-login).*administrator.*rip=<HOST>
应该工作(虽然我没有testing过)
在DovecotWiki上也find了这个Fail2Ban条目 。
进一步试验,并能够创build一个工作。 问题是在远程ip(rip)部分。 这是什么工作:
failregex = (?: pop3-login|imap-login): .*(?:Disconnected: user=\<administrador\>).*rip=.*ffff\:(<HOST>).*
这可能不是很有效。 任何改善的build议仍然值得欢迎。