ssh-honeypot配置详解:修改Banner、JSON日志与权限管理全攻略
ssh-honeypot配置详解:修改Banner、JSON日志与权限管理全攻略
【免费下载链接】ssh-honeypotFake sshd that logs ip addresses, usernames, and passwords.项目地址: https://gitcode.com/gh_mirrors/ss/ssh-honeypot
ssh-honeypot是一款轻量级的虚假SSH服务器工具,能够记录尝试连接的IP地址、用户名和密码等信息,为服务器安全防护提供有价值的威胁情报。本文将详细介绍如何修改Banner信息、配置JSON日志以及进行权限管理,帮助你快速搭建个性化的SSH蜜罐系统。
一、Banner信息定制:打造专属欢迎界面
Banner信息是SSH服务器在用户连接时显示的欢迎消息,通过修改Banner可以迷惑攻击者或提供特定信息。在ssh-honeypot中,Banner配置主要通过源码中的宏定义实现。
1.1 查看默认Banner配置
Banner相关的配置位于项目的核心配置文件中:
src/config.h
该文件定义了程序的各种默认参数,包括日志文件路径、端口号和RSA密钥位置等基础配置。
1.2 修改Banner内容
虽然在配置文件中没有直接的Banner文本定义,但你可以通过修改源代码来自定义连接时显示的欢迎信息。建议在编译前修改相关字符串常量,实现个性化的Banner展示效果。
二、JSON日志配置:结构化记录攻击数据
ssh-honeypot支持将日志以JSON格式保存,便于后续的数据分析和处理。默认配置下,JSON日志功能已经启用,你可以根据需要调整相关参数。
2.1 JSON日志基础配置
JSON日志的默认配置同样位于src/config.h文件中,关键配置项包括:
#define JSON_LOGFILE "ssh-honeypot.json.log" /* default json log location */ #define JSON_SERVER "127.0.0.1" /* send json to this host */ #define JSON_PORT 55555 /* send json to this port */这些配置定义了JSON日志文件的路径、接收JSON数据的服务器地址和端口。
2.2 日志文件路径修改
如果需要更改JSON日志的存储位置,可以修改JSON_LOGFILE宏的值,例如:
#define JSON_LOGFILE "/var/log/ssh-honeypot/access.json"修改后需要重新编译程序才能生效。
2.3 远程日志服务器配置
通过修改JSON_SERVER和JSON_PORT参数,可以将JSON格式的日志数据发送到远程服务器,实现集中式日志管理。这对于监控多个蜜罐节点非常有用。
三、权限管理:确保系统安全运行
为了在收集攻击数据的同时保证系统安全,ssh-honeypot采用了多种安全措施,包括非特权用户运行和文件权限控制。
3.1 专用用户账户
在Docker环境下,ssh-honeypot会创建专用的"honeycomb"用户来运行服务,避免使用root权限带来的安全风险:
adduser --shell /bin/false --disabled-password --gecos "Honeycomb" --home "/home/honeycomb" "honeycomb"这行命令创建了一个没有登录shell的用户,进一步降低了被攻击的风险。
3.2 可执行文件权限设置
在Docker构建过程中,会对可执行文件设置适当的权限:
chmod 0777 ./bin/ssh-honeypot这个权限设置确保程序可以被正确执行,同时限制了不必要的访问权限。
3.3 日志文件权限管理
虽然项目中没有直接显示日志文件的权限设置,但建议在实际部署时,确保日志文件只能被运行蜜罐的用户访问,防止敏感信息泄露。
四、实用脚本:日志分析与数据统计
ssh-honeypot提供了多个实用脚本,帮助你分析收集到的日志数据。这些脚本位于scripts/目录下,包括:
- ssh-honeypot-top10-usernames.sh:统计最常被尝试的用户名
- ssh-honeypot-top10-passwords.sh:分析最常见的密码尝试
- ssh-honeypot-unique-ips-geolocation.sh:获取攻击IP的地理位置信息
这些脚本可以帮助你快速了解攻击模式和趋势,为服务器安全防护提供数据支持。
五、Docker部署:简化安装与配置
ssh-honeypot提供了完整的Docker支持,通过Docker可以快速部署和运行蜜罐服务,同时隔离蜜罐环境与主机系统。
5.1 Docker配置文件
项目的Docker配置文件位于docker/Dockerfile和docker/docker-compose.yml,包含了完整的构建和运行配置。
5.2 容器服务管理
Docker配置中使用了services.d来管理ssh-honeypot服务,相关配置位于docker/rootfs/etc/services.d/sshd/目录下,包括服务的启动和停止脚本。
通过以上配置和管理技巧,你可以构建一个功能完善、安全可靠的SSH蜜罐系统,有效监控和分析针对SSH服务的攻击尝试,提升服务器的安全防护能力。无论是修改Banner信息增强迷惑性,还是配置JSON日志进行深入分析,ssh-honeypot都提供了灵活的定制选项,满足不同场景的需求。
【免费下载链接】ssh-honeypotFake sshd that logs ip addresses, usernames, and passwords.项目地址: https://gitcode.com/gh_mirrors/ss/ssh-honeypot
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考