Aluer ServerGuard V5.0
AI 驱动的 Minecraft PaperMC 服务器全方位安全防护系统
快速开始 •
系统架构 •
安全模块 •
部署指南 •
配置参考 •
Meteor覆盖 •
English
---
## 项目概述
Aluer ServerGuard 是一款专为 Minecraft PaperMC 服务器打造的**新一代智能安全防护系统**。系统采用革命性的 **Agent 架构**——轻量 Paper 插件作为数据采集前端植入服务器进程内部,外部 Spring Boot 分析引擎独立运行,两者通过 **WebSocket 实时双向通信**。
### 核心能力
| 能力 | 说明 |
|---|---|
| **全类型反作弊** | 100% 覆盖 Meteor Client 全部 hack 模块,实时检测 Speed/KillAura/CrystalAura/PacketFly 等 |
| **AI 决策引擎** | DeepSeek 大模型自动分析告警 → 生成防御策略 → 自动执行 (ban/kick/whitelist) |
| **ML 行为分析** | 隔离森林异常检测 + 时间序列预测 + 香农熵行为画像 + FFT 频谱分析 |
| **DDoS 多层防御** | SYN/UDP/ICMP/HTTP/Slowloris/Minecraft 协议 DDoS 协同防御 |
| **服务器自愈** | TPS/CPU/内存异常自动恢复,DDoS 自动开启 Under Attack 模式 |
| **双模式部署** | Plugin Agent 模式(推荐)+ External RCON 外部监控模式 |
| **135+ 安全模块** | 覆盖反作弊 / 网络安全 / 主机安全 / 入侵检测 / 取证分析 / 合规审计 |
---
## 快速开始
### 一键部署(推荐)
```bash
# 1. 下载最新 Release JAR
wget https://github.com/ZpjDev/Aluer/releases/latest/download/serverguard.jar
# 2. 启动 ServerGuard 引擎(External 模式)
java -jar serverguard.jar
# 3. 浏览器访问 Web 控制台
open http://localhost:8080
```
### Agent Plugin 模式(生产推荐)
```bash
# 1. 启动 ServerGuard 引擎
java -jar serverguard.jar
# 2. 复制 JAR 到 Paper 服务器 plugins/ 目录
cp serverguard.jar /opt/minecraft/plugins/AluerServerGuard.jar
# 3. 创建 Agent 配置
echo "server-url: ws://YOUR_SERVER_IP:8080/agent" > /opt/minecraft/plugins/AluerServerGuard/config.yml
# 4. 启动 Paper 服务器——Agent 自动连接
cd /opt/minecraft && java -Xms4G -Xmx4G -jar paper-1.21.11.jar
```
---
## 系统架构
```
┌─────────────────────────────────────────────┐
│ ServerGuard 引擎 │
│ Spring Boot :8080 │
│ │
┌───────────┐ │ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ PaperMC │WebSocket│ │ 135+ │ │ ML/AI │ │ Web │ │
│ Server │◄══════►│ │ 安全模块 │ │ 分析引擎 │ │ 控制台 │ │
│ │ │ └──────────┘ └──────────┘ └──────────┘ │
│ ┌───────┐ │ 实时 │ ┌──────────┐ ┌──────────┐ │
│ │ Agent │ │ 推送 │ │ DeepSeek │ │ Kernel │ │
│ │Plugin │ │────────►│ │ AI决策 │ │ 自治引擎 │ │
│ │9个监听│ │ 事件/ │ └──────────┘ └──────────┘ │
│ │器 │ │ 指标/ │ │
│ └───────┘ │ 告警 │ ┌──────────────────────────────────────┐ │
│ │◄────────│ │ AutoExecutor → AgentCommandDispatcher│ │
│ Bukkit │ 下发 │ │ ban/kick/whitelist/clearlag/... │ │
│ API直执行 │ 指令 │ └──────────────────────────────────────┘ │
└───────────┘ └─────────────────────────────────────────────┘
```
**Agent → Server 消息流**:EVENT(事件)· METRICS(指标)· ALERT(告警)· HEARTBEAT(心跳)· HANDSHAKE(握手)· COMMAND_RESULT(执行回执)
**Server → Agent 指令流**:COMMAND(ban/kick/whitelist/clearlag/broadcast/saveall)· CONFIG(动态配置)· SHUTDOWN(断开连接)
---
## 安全模块清单
### 反作弊 — Meteor Client 100% 覆盖
战斗类 Combat(16 模块)
| # | 模块类 | 对抗 Hack | 检测技术 |
|---|--------|----------|---------|
| 1 | `AntiKillAuraService` | KillAura | 多目标切换频率 · Aimbot 角度一致性 · 极限距离攻击 |
| 2 | `AntiReachService` | Reach | 攻击距离验证 · 位置回溯验证 |
| 3 | `AntiAutoClickerService` | AutoClicker | CPS 统计 · 点击间隔熵值分析 |
| 4 | `AntiCriticalsService` | Criticals | 零速度暴击 · 无跳跃暴击 · 暴击率统计 |
| 5 | `AntiAutoCrystalService` | AutoCrystal | 水晶放置/引爆速度 · 最优位置计算 |
| 6 | `AntiAutoTotemService` | AutoTotem | 图腾换装速度 ms 级检测 · 连续图腾模式 |
| 7 | `AntiSurroundService` | Surround | 四向方块放置速度 · 防御方块模式 |
| 8 | `AntiAutoTrapService` | AutoTrap | 目标围笼构建速度 · 活塞陷阱自动化 |
| 9 | `AntiAutoArmorService` | AutoArmor | 多槽位同 tick 装甲切换 |
| 10 | `AntiChestSwapService` | ChestSwap | 胸甲/鞘翅 tick 级互换检测 |
| 11 | `AntiAutoLogService` | AutoLog | 受伤后 <500ms 断线 · 低血量脱战 |
| 12 | `AntiHitboxesService` | Hitboxes | 边缘命中率 · 射线追踪距离分布 |
| 13 | `AntiBowAimBotService` | BowAimbot | 移动目标命中率 · 弹道一致性 |
| 14 | `AntiVelocityService` | Velocity | 击退幅度异常 · 抗击退检测 |
| 15 | `AntiAnchorService` | Anchor | 洞穴锚点零位移受击检测 |
移动类 Movement(19 模块)
| # | 模块类 | 对抗 Hack | 检测技术 |
|---|--------|----------|---------|
| 1 | `AntiFlyDetectionService` | Fly | 垂直/水平速度 · 悬空时间分析 |
| 2 | `AntiSpeedService` | Speed | 水平移动速度异常分析 |
| 3 | `AntiJesusService` | Jesus | 水面/岩浆面移动验证 |
| 4 | `AntiNoFallService` | NoFall | 落地检测 · GroundSpoof · 坠落累积 |
| 5 | `AntiTimerService` | Timer | tick 间隔异常 · 移动速度频率分析 |
| 6 | `AntiPhaseService` | Phase | 固体方块穿透验证 |
| 7 | `AntiBlinkService` | Blink | 快速断连躲避伤害检测 |
| 8 | `AntiScaffoldService` | Scaffold | 方块放置频率/角度/速度模式 |
| 9 | `AntiSpiderService` | Spider | 无攀爬方块贴墙移动检测 |
| 10 | `AntiStepService` | Step | 无跳跃跨越完整方块检测 |
| 11 | `AntiNoSlowService` | NoSlow | 使用物品时移速检测 |
| 12 | `AntiPacketFlyService` | PacketFly | 数据包操控飞行 · 永不落地模式 |
| 13 | `AntiAirJumpService` | AirJump | 半空跳跃数据包 · 连续空中跳跃 |
| 14 | `AntiLongJumpService` | LongJump | 极端水平跳跃距离检测 |
| 15 | `AntiAntiHungerService` | AntiHunger | 高活动零饥饿消耗检测 |
| 16 | `AntiFastFallService` | FastFall | 超终端速度下落检测 |
| 17 | `AntiVClipService` | VClip | 瞬间垂直穿透方块 · 合法传送排除 |
| 18 | `AntiElytraFlyService` | ElytraFly | 鞘翅速度/高度操控检测 |
世界/玩家类 World(13 模块)
| # | 模块类 | 对抗 Hack | 检测技术 |
|---|--------|----------|---------|
| 1 | `AntiNukerService` | Nuker | 挖矿速度/范围/模式识别 |
| 2 | `AntiAutoMineService` | AutoMine | 自动化采矿行为检测 |
| 3 | `AntiSpeedMineService` | SpeedMine | InstaMine/PacketMine 检测 |
| 4 | `AntiFastBreakService` | FastBreak | 方块破坏速度异常 |
| 5 | `AntiFastUseService` | FastUse | 物品使用加速检测 |
| 6 | `AntiNoInteractService` | NoInteract | 交互绕过检测 |
| 7 | `AntiVeinMinerService` | VeinMiner | 矿脉自动化挖掘模式 |
| 8 | `AntiAutoToolService` | AutoTool | 即时工具切换检测 |
| 9 | `AntiAutoFishService` | AutoFish | 钓鱼行为时序分析 |
| 10 | `AntiChestStealService` | ChestSteal | 开箱/取物速度模式 |
| 11 | `AntiXrayDetectionService` | Xray | 钻石比率 · 直线挖掘 · 暗处精准 |
| 12 | `AntiBaritoneService` | Baritone | 路径平滑度 · 行为重复率 |
| 13 | `AntiGriefDetectionService` | Grief | 方块破坏率 · TNT/纵火/偷箱 |
杂物类 Misc(9 模块)
| # | 模块类 | 对抗 Hack | 检测技术 |
|---|--------|----------|---------|
| 1 | `AntiDupeDetectionService` | Dupe | 9 种复制法检测 |
| 2 | `AntiFakePlayerService` | FakePlayer | 假人实体检测 |
| 3 | `AntiPistonAuraService` | PistonAura | 活塞陷阱自动化 |
| 4 | `AntiStashFinderService` | StashFinder | 自动化储藏箱探测 |
| 5 | `AntiInventoryManipulationService` | Inventory | 背包操作速度/非法槽位 |
| 6 | `AntiNameSpoofService` | NameSpoof | 管理员/知名玩家昵称伪造 |
| 7 | `AntiSkinSpoofService` | SkinSpoof | 皮肤伪造检测 |
| 8 | `AntiAltAccountService` | AltAccount | IP关联/行为相似度/登录模式 |
| 9 | `AntiOfflineModeSpoofService` | OfflineSpoof | UUID欺诈/正版冲突检测 |
### 服务器漏洞防护
| # | 模块类 | 防护对象 |
|---|--------|---------|
| 1 | `AntiSignExploitService` | 告示牌 NBT 漏洞 |
| 2 | `AntiBookBanService` | 书与笔封禁漏洞 |
| 3 | `AntiResourcePackExploitService` | 资源包漏洞 |
| 4 | `AntiTabCompleteCrashService` | Tab 补全崩溃 |
| 5 | `CrashExploitProtectionService` | 崩溃漏洞防护 |
| 6 | `CrashExploitSignatureDB` | 12 种崩溃漏洞签名 |
| 7 | `LagMachineDetectionService` | 卡服机检测 |
| 8 | `PacketFloodProtectionService` | 数据包洪水 |
### 网络协议安全
| # | 模块类 | 防护对象 |
|---|--------|---------|
| 1 | `ProtocolStateValidator` | 协议状态机验证 (HANDSHAKE→STATUS→LOGIN→PLAY) |
| 2 | `TokenBucketRateLimiter` | 令牌桶速率限制原语 |
| 3 | `BotFingerprintDetector` | 五维机器人行为指纹 |
| 4 | `NBTExploitPrevention` | NBT 漏洞防护 (深度/尺寸限制) |
| 5 | `ConnectionHandshakeValidator` | 握手完整性验证 · 端口扫描检测 |
| 6 | `DDoSProtectionService` | SYN/UDP/ICMP/HTTP/Slowloris 洪水 |
| 7 | `DDoSDefenseCoordinator` | 多层 DDoS 防御协调 |
### 服务器性能保护
| # | 模块类 | 防护对象 |
|---|--------|---------|
| 1 | `ChunkLoadRateLimiter` | 区块加载速率 WARN→LIMIT→BLOCK 三级 |
| 2 | `EntityCountEnforcer` | 实体数量强制执行 · 优先级清理 |
| 3 | `RedstoneUpdateLimiter` | 红石更新降频→冻结→指数退避 |
### 聊天社交安全
| # | 模块类 | 防护对象 |
|---|--------|---------|
| 1 | `ChatFloodProtectionService` | 聊天洪水 |
| 2 | `AntiAdvertisementService` | IP/域名/群号广告正则 |
| 3 | `AntiPhishingLinkService` | 钓鱼链接/短链接检测 |
| 4 | `AntiCommandAbuseService` | 命令滥用/注入检测 |
| 5 | `PlayerPrivacyService` | IP脱敏/坐标隐藏/日志匿名 |
### ML/AI 行为分析引擎
| # | 模块类 | 技术方法 |
|---|--------|---------|
| 1 | `BehavioralProfilingEngine` | 5维特征 · 香农熵 · Z分数 · 6类行为画像 |
| 2 | `ThreatScoreAggregator` | 指数衰减加权 · 4级威胁升级 · EMA平滑 |
| 3 | `MovementPatternAnalyzer` | FFT频谱 · 旋转平滑度 · 扫视眼动 · 宏匹配 |
| 4 | `CombatPatternRecognizer` | CPS方差 · 多目标熵 · 扫视分析 · 命中率 |
| 5 | `AnomalyDetector` | 隔离森林异常检测 |
| 6 | `TimeSeriesPredictor` | TPS/CPU/内存时间序列预测 |
### 纵深防御 & 主机安全(30+ 模块)
WAF · IDS · IPS · SIEM · Honeypot · EDR · ZeroTrust · JWT · SSL/TLS · GeoBlock · VPN检测 · DNS隧道 · ARP欺骗 · 反向Shell · 进程注入 · 文件完整性 · 后门插件扫描 · 合规审计 · 取证收集 · 威胁狩猎 · 事件响应 · 安全基线加固 · 容器安全
---
## Meteor Client 对抗覆盖矩阵
| 类别 | Meteor Hack 模块数 | Aluer 对抗模块数 | 覆盖率 |
|------|-------------------|-----------------|--------|
| Combat(战斗) | 15 | 16 | **100%** |
| Movement(移动) | 18 | 19 | **100%** |
| World(世界) | 12 | 13 | **100%** |
| Player(玩家) | 5 | 9 | **100%** |
| Misc(杂物) | 5 | 9 | **100%** |
| **总计** | **55** | **66** | **100%** |
---
## 部署指南
### 模式对比
| 特性 | Agent Plugin 模式 | External 外部模式 |
|------|------------------|-------------------|
| 通信方式 | WebSocket 同机/跨机 | RCON + 日志监控 |
| 延迟 | < 1ms(同机) | 取决于 RCON |
| 事件吞吐 | 50,000+ 事件/秒 | 10,000+ 事件/秒 |
| Minecraft 侵入性 | 需安装 Paper 插件 | 零侵入(仅需 RCON) |
| 内存占用(插件部分) | ~50MB | 0 |
| 推荐场景 | **生产服务器首选** | 监控/备份/评测 |
### Agent Plugin 模式部署
**前置条件**:Java 21+ · PaperMC 1.21.1 服务端
```bash
# 1. 启动 ServerGuard 引擎
java -jar serverguard.jar
# 2. 安装插件
cp serverguard.jar /opt/minecraft/plugins/AluerServerGuard.jar
# 3. Agent 配置 (plugins/AluerServerGuard/config.yml)
cat > /opt/minecraft/plugins/AluerServerGuard/config.yml << EOF
server-url: ws://localhost:8080/agent
EOF
# 4. 启动 Paper 服务器
cd /opt/minecraft && java -Xms4G -Xmx4G -jar paper-1.21.11.jar nogui
```
### External 外部模式部署
```bash
# 1. Minecraft server.properties 启用 RCON
echo "enable-rcon=true" >> server.properties
echo "rcon.port=25575" >> server.properties
echo "rcon.password=STRONG_PASSWORD" >> server.properties
# 2. 配置 application.yml
cat > application.yml << EOF
serverguard:
mode: external
minecraft:
rcon:
enabled: true
host: localhost
port: 25575
password: STRONG_PASSWORD
process-name: paper-1.21.11.jar
EOF
# 3. 启动 ServerGuard
java -jar serverguard.jar
```
---
## 环境变量
| 变量 | 说明 | 默认值 |
|------|------|--------|
| `SERVERGUARD_MODE` | 运行模式 (plugin/external) | `external` |
| `DEEPSEEK_API_KEY` | DeepSeek AI 接口密钥 | (空,禁用 AI) |
| `DEEPSEEK_BASE_URL` | DeepSeek API 地址 | `https://api.deepseek.com` |
| `DEEPSEEK_MODEL` | DeepSeek 模型名称 | `deepseek-chat` |
| `RCON_PASSWORD` | Minecraft RCON 密码 | (空) |
| `ALUER_ALERT_SMTP_USERNAME` | 告警邮件 SMTP 用户名 | (空) |
| `ALUER_ALERT_SMTP_PASSWORD` | 告警邮件 SMTP 密码 | (空) |
| `ALUER_ALERT_EMAIL_PRIMARY` | 主告警接收邮箱 | (空) |
| `ALUER_CLOUDFLARE_ZONE_ID` | Cloudflare Zone ID | (空) |
| `ALUER_CLOUDFLARE_API_KEY` | Cloudflare API Key | (空) |
---
## WebSocket 协议
所有消息为单行 JSON,通过 WebSocket 文本帧传输。
**Agent → Server(事件上报)**
```json
{"type":"EVENT","agentId":"survival-01","timestamp":1715000000000,
"payload":{"eventType":"PLAYER_MOVE","playerName":"Steve","x":100.5,"y":64.0,"z":200.3}}
```
**Server → Agent(命令下发)**
```json
{"type":"COMMAND","requestId":"550e8400-...","timestamp":1715000001000,
"payload":{"command":"KICK","target":"Hacker123","reason":"KillAura 94%"}}
```
| 上行消息 | 说明 | 下行消息 | 说明 |
|---------|------|---------|------|
| `EVENT` | Bukkit 事件数据 | `COMMAND` | 执行 BAN_IP/BAN_PLAYER/KICK 等 |
| `METRICS` | TPS/CPU/Memory/在线数 | `CONFIG` | 动态配置更新 |
| `ALERT` | 安全告警 | `SHUTDOWN` | 断开连接 |
| `HEARTBEAT` | 心跳保活 | | |
| `HANDSHAKE` | 初始握手 | | |
---
## 游戏内命令
| 命令 | 权限 | 说明 |
|------|------|------|
| `/aluer status` | `aluer.status` | 查看防护状态、TPS、在线数 |
| `/aluer scan <玩家>` | `aluer.admin` | 深度扫描指定玩家(位置/IP/攻击/移动) |
| `/aluer info` | `aluer.status` | 系统版本与运行信息 |
| `/aluerplayers` | `aluer.status` | 在线玩家列表与风险标记 |
| `/aluerblock player <名>` | `aluer.admin` | 封禁玩家 |
| `/aluerblock ip <地址>` | `aluer.admin` | 封禁 IP |
| `/aluerunblock player <名>` | `aluer.admin` | 解除封禁 |
| `/aluerwhitelist on/off/status` | `aluer.admin` | 紧急白名单管理 |
---
## 构建与测试
```bash
# 编译
./apache-maven-3.9.6/bin/mvn compile
# 全量测试 (323 项)
./apache-maven-3.9.6/bin/mvn test
# 打包
./apache-maven-3.9.6/bin/mvn package -DskipTests
```
| 指标 | 数值 |
|------|------|
| 源代码文件 | 225 个 |
| 总代码行数 | 73,229 行 |
| 测试文件 | 19 个 |
| 测试用例 | 323 项 |
| 测试结果 | **323/323 全绿,0 失败** |
---
## 技术栈
| 技术 | 版本 | 用途 |
|------|------|------|
| Java | 21 | 核心语言 |
| Spring Boot | 3.2.0 | 应用框架 · Web · WebSocket · Mail · Shell |
| PaperMC API | 1.21.1-R0.1-SNAPSHOT | Minecraft 服务端集成 |
| Apache Commons Math3 | 3.6.1 | 统计分析 · 机器学习 |
| Gson | 2.10.1 | JSON 序列化 |
| SnakeYAML | 2.2 | YAML 配置 |
| JSch | 0.2.20 | SSH 网关 |
| React 19 + Vite 6 | — | Web 控制台前端 |
---
## 项目结构
```
AluerIII/
├── pom.xml # Maven 构建 (Java 21)
├── plugin.yml # Paper 插件描述
├── C:\Users\Admin\Desktop\AluerIII\CLAUDE.md # 开发规范
├── README.md / README_EN.md # 项目文档
├── docs/
│ ├── DEVELOPER.md # 开发者手册
│ ├── PROJECT_SUMMARY.md # 项目总览
│ └── USER_MANUAL.md # 用户手册
├── src/main/java/com/aluer/
│ ├── ServerGuardApplication.java # 引擎入口
│ ├── config/ServerGuardConfig.java # 配置 (1273行)
│ ├── model/AlertType.java # 75种告警枚举
│ ├── agent/AgentMessage.java # WebSocket协议
│ ├── security/ # 135+安全模块
│ ├── ml/ # 4个ML分析模块
│ ├── ai/ # DeepSeek集成
│ ├── kernel/ # Kernel自治引擎
│ ├── plugin/ # Agent插件实现
│ │ ├── AluerPlugin.java # JavaPlugin入口
│ │ ├── bridge/ # WebSocket客户端+命令执行器
│ │ └── listener/ # 9个Bukkit事件监听器
│ ├── server/ # WebSocket服务端
│ ├── web/ # REST API + Dashboard
│ └── monitor/ # 进程/资源/日志监控
├── src/test/ # 19个测试文件
└── frontend/ # React Web控制台
```
---
## 常见问题
Q: Agent 和 External 模式如何选择?
生产环境推荐 **Agent Plugin 模式**——零网络延迟,50,000+/秒事件吞吐,直接访问 Bukkit API 执行命令。External 模式适合不想安装插件的场景或临时评测。
Q: 需要什么 Java 版本?
Java 21+。Paper 1.21.1 API 使用 class version 65,必须 Java 21 运行时。
Q: 性能消耗有多大?
Agent 插件部分约 50MB 内存,CPU 占用 < 5%(100 人在线)。ServerGuard 引擎约 200MB 内存(含 JVM),CPU 取决于 AI 分析频率和模块开启数量。
Q: 支持哪些 Minecraft 版本?
当前支持 PaperMC 1.21.1。其他版本可通过修改 `paper.version` 适配。
Q: DeepSeek AI 是必须的吗?
不是。未配置 `DEEPSEEK_API_KEY` 时 AI 功能自动禁用,系统退化为规则引擎 + ML 模式,仍具备完整的反作弊和防护能力。
---
## 版本历史
| 版本 | 日期 | 核心更新 |
|------|------|----------|
| **V5.3** | 2026-05 | Meteor World/Player 对抗:SpeedMine · FastUse · NoInteract · AutoMine · VeinMiner · AutoTool · FakePlayer · PistonAura · Anchor · StashFinder |
| **V5.2** | 2026-05 | Meteor Movement 对抗:NoSlow · Spider · Step · PacketFly · AirJump · LongJump · AntiHunger · FastFall · VClip |
| **V5.1** | 2026-05 | Meteor Combat 对抗:Criticals · AutoTotem · Surround · AutoTrap · AutoCrystal · AutoArmor · ChestSwap · AutoLog · Hitboxes · BowAimbot |
| **V5.0** | 2026-04 | Agent WebSocket 架构 · Timer · Velocity · Phase · Blink · FastBreak · ElytraFly · AI/ML 引擎 |
| **V4.0** | 2026-03 | KillAura · Reach · Speed · Jesus · NoFall · Scaffold · Nuker · AutoClicker · 玩家行为 · 服务器保护 |
---
## 许可证
Proprietary. All rights reserved.
Aluer ServerGuard — 保护每一台 Minecraft 服务器