JoB*_*oBe 3 ubuntu regular-expression sshd fail2ban
这是一个棘手的问题(对我来说)
我正在尝试设置fail2ban 来禁止所有未登录的ssh 服务器连接尝试。
现在,我的问题是..一切都在文件filter.d/sshd.conf中。
对我来说这是不可理解的,胡言乱语,我根本无法理解该配置文件中的正则表达式(我根本无法理解正则表达式,相信我,我已经尝试过了)。
我想扫描并禁止日志的这一行:(因为它显示仅连接的连接)
连接被 192.168.0.2 端口 12210 [preauth] 关闭
现在,正如我之前所写,我不知道如何或在哪里将其写入/放置在配置文件中(不想用标准文件阻塞论坛)
因此,如果有人愿意帮助我,我应该写什么,以及我应该把它放在配置文件中的哪里。
并且,如果可能的话,解释一下(或至少尝试解释)你在做什么?
小智 5
对于最新版本的fail2ban,设置就足够了:
[sshd]
mode = aggressive
enabled = true
Run Code Online (Sandbox Code Playgroud)
在你的/etc/fail2ban/jail.local。
对于某些旧版本,这取决于。无论如何,我会从更新过滤器配置开始(例如从这里开始),只要确保您的版本早于0.10.5(在https://github.com/fail2ban/fail2ban/commit/1c1d2cc435d6e8f1eb4a1b60c935a1385a82e295F-MLFGAINED中引入)替换为。F-NOFAIL
如果您的fail2ban 版本早于0.10(即0.9),最好升级它。
回到实际问题“如何扩展股票正则表达式”......使用此设置是可能的:
[sshd]
failregex = %(known/failregex)s
^Connection closed by <ADDR> port \d+ \[preauth\]
Run Code Online (Sandbox Code Playgroud)
(对于没有 的fail2ban <= 0.9 prefregex,您必须使用前缀行等指定整个 RE 并使用<HOST>而不是<ADDR>)。