SSH Honeypot(SSH 蜜罐) 是一种主动防御型安全监测技术,用于诱捕并观测针对 SSH 服务的自动化扫描、
弱口令爆破及恶意交互行为。
其核心目标并非提供真实的远程登录能力,而是通过高度拟真的 SSH 协议交互,
持续采集攻击行为特征,为安全分析与防护策略提供数据支撑。

- 通过Releases下载最新版本CLI服务
- 通过
go get github.com/acexy/ssh-honeypot将其作为一个开源依赖,自定义拓展核心组件
ssh-Honeypot 是一个基于 Golang 实现的轻量级 SSH 蜜罐程序,通过监听常见的 SSH 端口(默认 22),
在协议层完整模拟标准 SSH Server 行为,使攻击者误以为正在与真实主机进行交互,从而延长其停留时间并暴露更多攻击细节。
该项目设计目标明确:
- 高拟真度:遵循 SSH 协议规范,对客户端行为保持高度兼容
- 零侵入性:不依赖系统账户、不修改主机配置、不产生持久化副作用
- 低运行成本:单一可执行文件,易于部署和回收
- 可策略化控制:根据来源行为动态调整响应策略
为了确保蜜罐自身不会成为风险源,ssh-Honeypot 明确遵循以下安全原则:
-
不读取或修改系统上的任何 SSH 配置文件
(包括sshd_config、authorized_keys、known_hosts等) -
不使用 PAM、系统用户、shadow 文件或任何真实认证机制
-
不创建真实 Shell、不会执行任何系统命令
-
所有 SSH 密钥均为 进程启动时在内存中动态生成,不会写入磁盘
-
程序退出后不留下任何状态或痕迹
换言之,该蜜罐仅工作在 网络与内存层面,不会对主机产生任何持久性影响。
ssh-Honeypot 可根据访问来源、历史行为或随机策略,对连接采取不同的响应方式,以提高攻击成本并增强行为暴露:
- 按字节、按阶段延迟 SSH Banner 或协议响应
- 显著降低扫描器、爆破工具的效率
- 增加攻击者资源消耗
- 随机中断连接
- 模拟网络不稳定或服务异常
- 破坏攻击者自动化流程的稳定性假设
- 在协议层返回认证成功
- 不授予任何真实权限
- 用于诱导攻击者继续交互并暴露后续行为特征
- 服务器公网暴露 SSH 场景下的攻击态势监测
- 安全研究中的弱口令、扫描器行为分析
- SOC / 蓝队对外部威胁行为的长期采样
- 作为防御体系中的“延迟与欺骗”组件
不要与攻击者正面对抗,而是让其持续“相信”并消耗在错误目标上。
ssh-Honeypot 不是防火墙,也不是替代认证系统,
而是防御体系中用于 感知、延迟、欺骗 的一环。