嗨,大家好呀,这里是 「青柠炸机店」!
都 2026 年了,你的 NAS / 服务器还在裸奔?每天有多少人在尝试暴力破解你的 SSH 端口,你知道吗?今天就教你部署一个 SSH”蜜罐”,让那些试图闯入你家的”不速之客”无所遁形。🕵️♂️
一、什么是 SSH 蜜罐?
先别急着翻教程,我们先搞清楚什么是「蜜罐」。
简单来说,蜜罐(Honeypot) 就是一个”故意暴露”的假服务,专门用来吸引攻击者上钩。它看起来像一个正常的SSH服务器,攻击者会尝试用各种用户名和密码去登录,但不管怎么试——永远登不进去。😏
蜜罐的意义在于:
- 🔍 监控威胁:看看到底有多少人(或机器人)在尝试暴力破解你的服务;
- 📊 收集情报:记录攻击者使用的IP、用户名、密码组合,了解当前流行的攻击手法;
- 🛡️ 安全预警:当攻击频率突然飙升时,说明你的IP可能被盯上了,赶紧加固!
二、FakeSSH 是什么?
FakeSSH 是一个用 Go 语言编写的、容器化的轻量级 SSH 蜜罐。简单到什么程度呢?一条 Docker 命令就能跑起来,不需要任何配置文件,不需要安装额外依赖,开箱即用。
核心特点:
- ✅ Go 语言开发:性能好,资源占用极低(基本不占你 NAS 什么性能);
- ✅ Docker 一键部署:
docker run一行搞定; - ✅ 永远拒绝登录:所有密码认证都会失败,攻击者无法获得任何 shell 权限;
- ✅ 详细日志记录:记录每一次登录尝试的 IP、用户名和密码;
- ✅ 零配置:没有配置文件要改,没有环境变量要设,真正的”无脑部署”。
💡 说白了,它就是在你服务器上摆了一罐”假蜂蜜”,等黑客来舔,然后默默记下他们的信息。美其名曰”蜜罐”,实际就是个”钓鱼执法”小工具。😂
三、为什么你需要一个 SSH 蜜罐?
你可能会想:「我又不是什么大公司,谁会来攻击我?」
说真的,你高估了黑客的”品味”。互联网上有大量的自动化扫描工具和僵尸网络,它们 24 小时不间断地扫描全网所有开放的 22 端口,然后用字典暴力破解。不管你是谁,只要你 22 端口对外暴露了,你就是目标。
⚠️ 高能预警:如果你有公网 IP 并且 SSH 端口对外开放,部署 FakeSSH 之后你很可能会被吓到——攻击频率远比你想象得高。
FakeSSH 特别适合这些场景:
- 🏠 你家有 NAS / 小主机对外暴露了端口(特别是公网IP的用户);
- 🔐 你把真正的 SSH 服务改到了其他端口,那么 22 端口正好拿来当蜜罐;
- 📈 你想收集一些攻击数据,做安全分析或者纯粹满足好奇心;
- 🧩 你是安全爱好者,想在家搭建一套简易的威胁感知系统。
四、手把手部署实战 🛠️
Step 1:前置准备
部署前你需要确保:
- 你的 NAS / 服务器已经安装了 Docker;
- 你真正的 SSH 服务没有在 22 端口上运行(否则会端口冲突);
⚠️ 这里的坑我帮大家踩过了:如果你的宿主机 SSH 本身就跑在 22 端口,你必须先把它改到别的端口(比如 2222),否则 FakeSSH 根本启动不了,会报
port is already allocated的错误。
极空间修改SSH端口方式:设置 → 远程协助/SSH

绿联修改SSH端口方式:控制面板 → 终端机

Linux 服务器修改宿主机 SSH 端口(如果需要):
# 编辑 SSH 配置sudo nano /etc/ssh/sshd_config
# 找到并修改这一行Port 2222 # 改成你喜欢的端口
# 重启 SSH 服务sudo systemctl restart sshd⚠️ 千万别改完直接关掉当前终端! 先用新端口测试能不能连上,确认没问题再关老窗口,不然你可能会把自己锁在外面,别问我怎么知道的…… 😭
Step 2:一键部署 FakeSSH

Step 3:查看”战果” 🎯
部署完成后,使用SSH连接工具进行测试,如下图👇🏻:

不管你尝试什么密码,都会提示密码错误❌,这就是蜜罐的作用了,让攻击者一直感觉自己在正确的道路上尝试~!
在fakessh docker 你会看到类似这样的输出:
2026/03/09 10:23:45 Login attempt from 185.xxx.xxx.12:45678 username: root password: 1234562026/03/09 10:23:47 Login attempt from 185.xxx.xxx.12:45678 username: root password: admin2026/03/09 10:23:49 Login attempt from 185.xxx.xxx.12:45678 username: root password: password2026/03/09 10:24:01 Login attempt from 103.xxx.xxx.88:32451 username: admin password: admin123🔥 真香时刻:部署上去之后,你可以泡杯茶静静看着日志滚动,感受一下互联网有多”不安全”。那些不停用 root / admin / test 当用户名,拿 123456 / password / admin 当密码的攻击流量,会让你瞬间理解为什么所有安全指南都在强调”禁用密码登录、使用密钥认证”。
五、体验与避坑 💡
部署上去后的真实体验
说实话,我部署完 FakeSSH 大概 5 分钟后,日志就开始”刷屏”了。😱
- 大量来自境外 IP 的暴力破解尝试,7×24 不间断;
- 最常见的用户名:
root、admin、test、oracle、ubuntu; - 最常见的密码:
123456、password、admin、root、1234; - 有些攻击者还会尝试一些”社工字典”:
company2026、server@123之类的;
看了这些日志之后,我立刻做了三件事:
- 回去检查了所有服务器的 SSH 配置,确保全部使用了密钥认证;
- 把弱密码的服务统统加了一遍强密码;
- 在路由器里把一些高频攻击 IP 段直接 ban 了。
🚧 踩坑实录
坑 1:端口冲突
这是最常见的问题。你的服务器如果本身 SSH 就跑在 22 端口,你直接 docker run -p 22:22 肯定报错。解决方法前面已经说了,把真实 SSH 改到其他端口。
坑 2:日志太多撑爆磁盘
如果你的服务器在公网上且流量很大,日志文件会增长得非常快。建议配合 logrotate 或者定期清理脚本,避免日志占满磁盘空间。这一点很容易被忽略,特别是那些用小容量 SSD 的 N100 小主机用户,磁盘空间本来就紧张。
六、安全加固建议 🔒
既然都装了蜜罐了,顺便也把 NAS 系统也加固一下吧,可以参考我之前的文章:
七、总结:值不值得折腾?
适合谁:
- 有公网 IP 的 NAS 用户,想知道自己”被盯上了没有”;
- 安全爱好者,想收集攻击数据做分析;
- 运维 / 安全工程师,想在内网搭建简易的威胁感知体系;
- 纯粹是好奇心旺盛,想看看黑客都在试什么密码的(比如我 😂)。
不适合谁:
- 完全没有公网暴露的内网环境(装了也没流量进来,白搭);
总的来说,FakeSSH 是一个极其轻量的安全感知小工具。它不会帮你挡住攻击(那是防火墙和 fail2ban 的活儿),但它能让你直观地感受到互联网上的安全威胁有多真实。部署成本几乎为零,就一条 Docker 命令的事儿,非常值得跑起来长期观察。🔥
当然了,看完蜜罐日志之后最重要的事情不是”啊好多攻击好可怕”,而是赶紧去加固你的真正服务——密钥认证、fail2ban、非标准端口,该安排的都安排上。
大家对NAS安全有什么好的补充呢?欢迎评论区交流,我们一起研究 👇
- 🔗 GitHub 地址:FakeSSH
- 🐳 Docker Hub:fffaraz/fakessh
- ⭐ 开源协议:MIT License
因你更精彩
打赏将用于网站日常运营