当前位置: 首页 > news >正文

T-Pot蜜罐平台故障排除手册:解决常见的安装和运行问题

T-Pot蜜罐平台故障排除手册:解决常见的安装和运行问题

【免费下载链接】tpotce🍯 T-Pot - The All In One Multi Honeypot Platform 🐝项目地址: https://gitcode.com/gh_mirrors/tp/tpotce

T-Pot 是一款一站式(All-in-One)多蜜罐平台,通过 Docker 同时运行 20 多个蜜罐,并内置 Elastic Stack、攻击地图等可视化工具。新手在安装和日常使用中经常遇到各种报错。这份 T-Pot 故障排除手册把最常见的安装失败、容器起不来、Kibana 无数据、登录失败等问题整理成一套按顺序自查的清单,帮你快速恢复 T-Pot 蜜罐平台的正常运行。

从上图可以看到,T-Pot 由蜜罐、工具、Elastic Stack 等服务组成,全部以容器形式运行在同一个主机上。排查问题前,先记住两条核心路径:

  • 配置文件:~/tpotce/.env(所有可调参数都在这里)
  • 编排文件:~/tpotce/docker-compose.yml(定义运行哪些容器)

安装失败:先排查这 5 个常见原因 ⚠️

端口冲突:T-Pot 安装失败的头号原因

T-Pot 的蜜罐会占用 22、25、80、443 等大量常用端口。如果系统上已经运行着其他服务(尤其是图形化桌面环境),安装会因端口冲突直接失败。官方明确警告:绝对不要安装 Gnome、KDE 等桌面环境

排查步骤:

  1. 安装系统时选择minimal / netinstall / server最小安装,只保留ssh
  2. 查看当前已占用的端口,与 T-Pot 所需端口(README 中有完整端口表)逐一比对:
sudo netstat -tulpen
  1. 若有冲突,停掉占用端口的服务后重新安装

Docker 镜像拉取失败:登录解除限流 🐝

T-Pot 默认在每次启动时都会检查并拉取最新镜像(配置项TPOT_PULL_POLICY=always,见 .env 第 167 行)。如果你的 IP 拉取过多镜像,会触发 Docker Hub 下载限流,表现为镜像卡住或拉取报错。解决办法是用 Docker 账号登录后提升限额:

sudo su - docker login

内存不足:按硬件选择合适的版本

Elastic Stack(logstash + elasticsearch)非常"吃"内存。若硬件偏弱,请对照系统要求或选择精简版编排文件:

部署类型内存存储建议
Hive(标准版)16GB256GB SSD完整体验
Sensor(传感器)8GB128GB SSD只跑蜜罐
低配机器8GB128GB SSD换用精简版

精简版配置位于~/tpotce/compose/目录,如compose/mini.yml(迷你版)。切换方式:systemctl stop tpot后将对应 yml 复制为~/tpotce/docker-compose.yml,再systemctl start tpot

系统不匹配:RHEL 订阅与 macOS/Windows 换行符

  • RHEL 用户:没有 Red Hat 订阅就无法更新系统、安装软件包,T-Pot 安装会失败;且仅支持 RHEL ≥ 8
  • macOS / Windows 用户:用 Docker Desktop 运行时需要两步关键操作——
    1. 克隆仓库后务必确认代码以LF(而非CRLF)换行检出,否则 Shell 脚本会报错
    2. 执行cp compose/mac_win.yml ./docker-compose.yml,再把.envTPOT_OSTYPE改为macwin

多网卡主机:网络配置失败

T-Pot 只设计为在单网卡主机上运行,它会自动选择拥有默认路由的网卡。多网卡环境下识别可能失败,导致 fatt、suricata、p0f 等流量类工具工作异常。最简单的方案:给 T-Pot 单独配一台单网卡(或虚拟机)主机。

运行异常:容器与数据问题速查 🔧

容器起不来或反复重启:4 条命令定位

T-Pot 内置了三个别名,是排障的第一步:

dps # 查看所有容器状态 dim # 查看本地镜像及构建时间 docker stats # 实时资源占用(或 htop) docker logs -f <容器名> # 跟踪单个容器日志

如果dps显示容器处于restart循环,用docker logs -f看具体报错;再查看初始化日志cat ~/tpotce/data/tpotinit.log。绝大多数"服务莫名消失"的问题都能在这一步定位到是端口、内存还是配置错误。

Kibana 和攻击地图看不到数据

这是运行期最高频的故障,按顺序排查:

  1. 内存 / 存储耗尽(最常见):如果 Elastic Stack 不可用、收不到日志或反复崩溃,大概率是 RAM 或磁盘问题。重点检查elasticsearchlogstash两个容器的日志中是否有内存告警,并用htop观察磁盘是否写满
  2. 日志保留策略:Elasticsearch 索引由tpot索引生命周期策略管理(默认保留 30 天),可在 Kibana 中确认策略是否被误改

  1. 验证数据链路:一切正常后,在 Kibana 仪表盘应能看到各蜜罐的攻击事件;攻击地图则提供全局动画视图(WebSocket 连接,切换时可能需重新输入 WebUI 账号)

  1. 磁盘快满?:蜜罐日志默认持久化 30 天,保留周期由~/tpotce/.env中的TPOT_PERSISTENCE_CYCLES=30控制;临时清理日志可运行~/tpotce/clean.sh

WebUI 登录失败:分清两种账号 🔑

这是认证错误最常见的原因:T-Pot 有两套完全独立的账号,混用必然失败。

访问入口账号类型说明
SSH(端口 64295)操作系统用户安装 Linux 时设置的用户
WebUI(https://<IP>:64297WEB_USERT-Pot 安装/genuser.sh创建的 Web 用户

如果 Web 用户丢失或需要新增成员,运行~/tpotce/genuser.sh即可;删除用户则编辑~/tpotce/.env中的WEB_USER(base64 字符串),改完systemctl stop tpot && systemctl start tpot生效。

Sensor 无法向 Hive 上报日志(分布式部署)

传感器日志经 Logstash 回传 Hive,连接采用 SSL 校验。若 Hive 有多个可达 IP 或域名,自签名证书缺少对应 SAN 会导致校验失败、日志发不出去。解决方案二选一:

  • 在 Hive 上用 openssl 重新生成包含所有 IP/域名的自签名证书(命令见 README 的 Distributed Deployment 章节),或
  • 测试环境临时在.env中将LS_SSL_VERIFICATION改为none(仅限实验室)

传感器部署脚本为 deploy.sh,它会自动校验 SSH 密钥是否已通过ssh-copy-id -p 64295推送成功。

为什么 T-Pot 每天凌晨自动重启?

这不是故障!T-Pot 默认在每天 02:42 停止服务、清理容器后自动重启(用sudo crontab -e可修改该定时任务)。若你觉得频繁,直接调整或注释掉对应 cron 行即可。

终极方案:T-Pot 恢复出厂设置 💯

当系统"坏到无法修复"时,官方给出的方案永远是重装,流程如下:

systemctl stop tpot # 1. 停止服务 # 2. (可选)备份 ~/tpotce/data 到安全位置 sudo rm -rf ~/tpotce/data # 3. 删除数据目录 cd ~/tpotce && git reset --hard # 4. 重置到最近一次拉取的版本 ./install.sh # 5. 重新运行安装器

日常维护提醒:升级版本前先备份自定义配置(.envews.cfg),升级脚本~/tpotce/update.sh会无情覆盖本地改动,但会自动备份整个~/tpotce目录。

附:T-Pot 故障自查速查表 ✅

症状第一反应
安装中途报错退出检查端口冲突、确认未装桌面环境
镜像拉取卡住docker login解除限流
容器反复重启dps+docker logs -f <容器名>
Kibana 无数据docker logs -f elasticsearch/logstash,查内存与磁盘
WebUI 登录被拒确认用的是<WEB_USER>而非系统用户
服务停后需拉起systemctl start tpot,观察dpsw
彻底起不来恢复出厂设置(见上文)

结语

T-Pot 的设计目标是"低维护、开箱即用",绝大多数故障都集中在端口冲突、内存不足、账号混用这三类。按本文顺序自查,配合dpsdocker logs -ftpotinit.log三件套,基本可以在十分钟内定位问题。祝你的蜜罐平台早日"满巢"!🍯

【免费下载链接】tpotce🍯 T-Pot - The All In One Multi Honeypot Platform 🐝项目地址: https://gitcode.com/gh_mirrors/tp/tpotce

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

http://www.cnnetsun.cn/news/4175467.html

相关文章:

  • Nous-Hermes-2-Vision-Alpha部署指南:从15GB显存到量化加速的完整落地清单
  • Inkpunk-Diffusion完整指南:揭秘这款水墨动漫风AI绘图DreamBooth模型与文生图实力
  • SkyPaint-AI-Diffusion核心揭秘:SkyCLIP如何用90%更少算力蒸馏双语AI绘画模型
  • 用CDecrypt批量解开Wii U NUS文件:从编译到出结果的完整流程
  • NCM 转 MP3 不求人:ncmdump 4 步上手教程,新手一次跑通
  • 什么是计算神经科学?Open Computational Neuroscience Resources 写给新手的入门科普指南
  • 丢进去一句话,3分钟出片:零基础AI视频生成工具Auto-Video-Generator实操
  • DataWave REST API参考手册:query、plan、lookup、predict等核心接口使用指南
  • MT Bench 8.12分如何炼成?Starling-LM-7B-beta评测成绩深度解析
  • Backtrader 完整指南:10 分钟跑通量化回测,避开 3 个结果失真的坑
  • upsert 踩坑清单:时区 UTC 转换、类型强校验、事务夹具冲突等 5 个新手常见的 Upsert 陷阱
  • Notepad2:轻量、启动快的免费文本编辑器,支持语法高亮与编码识别
  • Maka Agent:本地优先AI桌面助手如何重塑你的工作流
  • 参与开源贡献:如何为GenLayer Project Boilerplate提交第一个高质量的PR?
  • 为什么不用LoRA?揭秘gpt4-x-alpaca用GPT-4数据全量微调3轮的训练秘诀
  • 10分钟玩转G-Helper:华硕笔记本调校指南
  • 招聘平台四大站一次看全职位发布时间:求职者的完整指南
  • Casdoor API 实战教程:5 步完成第一次接口调用
  • 5 分钟生成整套 OpenCore EFI:OpCore Simplify 黑苹果自动构建工具
  • Buff 系统设计
  • 把PS3游戏跑流畅:RPCS3性能调优与配置完整指南
  • 1.4MB 跑通 107 种语言文本转语音,eSpeak NG 凭什么这么轻?
  • Redisson 与 Spring Boot 版本冲突:3 步定位并解决的排查指南
  • PoB2 物品系统完整流程:从装备模拟到词缀优化的实战指南
  • 一条命令搞定中国省市区街道 sql/json 数据:从克隆到入库指南
  • StableLM-3B-4E1T能力有多强?7项Open LLM Leaderboard基准测试完整分析
  • Wordless 多语言语料库工具避坑指南:安装到启动 4 个高频问题一次解决
  • LeadQualifier 10分钟快速上手:从安装到跑通你的第一个线索资格审查模型
  • AI论文写作工具推荐:5款学术助手怎么选?
  • DeepSeek-V3 检查点解析实战:.safetensors 与权重索引,671B 权重怎么落地