You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改DenyHosts正则表达式以匹配多种SSH无效登录日志

配置DenyHosts正则匹配多种SSH无效登录日志

你可以通过**正则分支(|)**整合三种匹配场景,同时保证IP提取逻辑一致。最终的正则表达式如下:

USERDEF_FAILED_ENTRY_REGEX=.*sshd.* (Connection closed by|Disconnected from|Invalid user .* from) .* (?P<host>\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})(?: port \d{1,5})? \[preauth\]?

关键调整说明:

  • 用(Connection closed by|Disconnected from|Invalid user .* from)分支覆盖三种日志的核心特征:
    • Connection closed by:保留你原有的匹配规则
    • Disconnected from:匹配带/不带无效用户标记的断开连接日志
    • Invalid user .* from:直接匹配含无效用户名的登录尝试日志
  • (?: port \d{1,5})?:非捕获组加问号,适配部分日志无端口信息的情况
  • \[preauth\]?:加问号兼容部分日志末尾无[preauth]标记的场景

验证示例

以下典型日志均可被匹配并正确提取IP:

sshd[1234]: Connection closed by 192.168.1.100 port 2222 [preauth]
sshd[5678]: Disconnected from invalid user test 10.0.0.5 [preauth]
sshd[9012]: Invalid user admin from 172.16.0.20

将该配置替换到DenyHosts配置文件中,重启服务即可生效。

内容的提问来源于stack exchange,提问作者obayhan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 17:32:19