Java Spring Boot React Vite DeepSeek AI License

Stars Forks Issues PRs Last Commit

---

Aluer ServerGuard

🛡 AI-Powered Minecraft PaperMC Server Security & Automation Platform

Built with ❀ for Minecraft server operators who refuse to compromise on security

"In a world where DDoS attacks, bot swarms, and zero-day exploits threaten your Minecraft community,
Aluer stands as the autonomous guardian — powered by DeepSeek AI and a multi-layer kernel fusion engine."

🏗 Architecture  Â·  🚀 Quick Start  Â·  ⚙ Config  Â·  📊 Modules  Â·  🌐 API  Â·  🖥 Console  Â·  💻 Commands  Â·  ❓ FAQ



2-5s
LLM Response

<1ms
Kernel Latency

4-Tier
Defense Levels

30+
Security Modules

~200MB
Memory Footprint

## 目圕 - [系统架构](#-系统架构) - [䞉层决策匕擎](#1-䞉层决策匕擎) - [Kernel 信号融合暡型](#2-kernel-信号融合暡型) - [数据流党景](#3-数据流党景) - [快速匀始](#-快速匀始) - [环境芁求](#环境芁求) - [本地构建](#本地构建) - [环境变量配眮](#环境变量配眮) - [銖次启劚](#銖次启劚) - [䞀键安装脚本](#䞀键安装脚本) - [郚眲指南](#-郚眲指南) - [Systemd 服务](#systemd-服务) - [sudo 权限配眮](#sudo-权限配眮) - [反向代理可选](#反向代理可选) - [配眮参考](#-配眮参考) - [完敎配眮树](#完敎配眮树) - [环境变量泚入衚](#环境变量泚入衚) - [暡块枅单](#-暡块枅单) - [AI 决策层](#ai-决策层-comaluerai) - [Kernel 内栞层](#kernel-内栞层-comaluerkernel) - [安党防技层](#安党防技层-comaluersecurity) - [运营控制层](#运营控制层-comaluerconsole) - [监控采集层](#监控采集层-comaluermonitor) - [栞心服务层](#栞心服务层-comaluerservice) - [Web 亀互层](#web-亀互层-comaluerweb) - [通知䞎报告层](#通知䞎报告层-comaluernotification) - [蟅助功胜暡块](#蟅助功胜暡块) - [数据暡型](#数据暡型-comaluermodel) - [防埡等级䞎自劚响应](#-防埡等级䞎自劚响应) - [API 参考](#-api-参考) - [系统状态 API](#系统状态-api) - [安党态势 API](#安党态势-api) - [健康检查 API](#健康检查-api) - [通知䞎报告 API](#通知䞎报告-api) - [控制台操䜜 API](#控制台操䜜-api) - [SSH 眑关 API](#ssh-眑关-api) - [倇仜管理 API](#倇仜管理-api) - [Web 控制台](#-web-控制台) - [Shell 呜什参考](#-shell-呜什参考) - [匀发指南](#-匀发指南) - [FAQ](#-faq) - [讞可证](#-讞可证) - [支持项目](#-支持项目) --- ## ✹ Why Aluer?

🧠 Dual-Engine Intelligence

LLM (DeepSeek) + Kernel Rule Engine working in tandem. Sovereign handles unknown threats; Kernel reacts in <1ms for known patterns. No single point of decision failure.

🛡 Full-Stack Defense

From Minecraft protocol layer → Application WAF → OS firewall → Cloudflare edge. 30+ security modules covering L3-L7, zero-trust architecture, and honeypot deception.

📊 Real-Time Visualization

React 19 Nebula Console with SSE live streaming, performance sparklines, health probes, auto-refresh — designed for incident commanders who need instant clarity.

🔧 Autonomous Operations

Self-healing orchestration, auto-backup before recovery, scheduled tasks, Discord/Slack webhooks, and HTML attack reports. Your server guards itself while you sleep.

--- ## 🧬 系统架构 Aluer ServerGuard 郚眲圚 Minecraft 服务噚同䞀台䞻机䞊通过 **RCON 协议** 侎 PaperMC 服务端通信同时管理操䜜系统级防火墙iptables/ufw和 Cloudflare 蟹猘防技。 ### 1. 䞉层决策匕擎 这是敎䞪系统的栞心讟计——L1 莟莣宏观战略决策L2 莟莣信号级战术刀断L3 莟莣执行萜地。 ``` ┌──────────────────────────────────────────────────────────────┐ │ L1: AluerSovereignEngine │ │ 蟓入: 党眑态势 JSON数癟䞪字段的压猩䞊䞋文 │ │ 倄理: 发送给 DeepSeek LLM芁求返回结构化指什 │ │ 蟓出: workflow8 种工䜜流之䞀+ defenseLevel + reason │ │ 呚期: 每 45 秒执行䞀次 │ │ 特埁: LLM 䞻富具倇自然语蚀掚理胜力倄理暡糊/新类型嚁胁 │ ├─────────────────────────────────────────────────────────────── │ L2: AluerKernelEngine │ │ 蟓入: 5 䞪虚拟暡块从 10+ 安党子系统采集的实时信号 │ │ 倄理: 加权汇聚 → 䞉绎压力计算 → 指什合成 │ │ 蟓出: heat / resonance / control + KernelDirective │ │ 呚期: 每 30 秒䞀次 Pulse │ │ 特埁: 确定性规则匕擎可解释䞍受 LLM 延迟/幻觉圱响 │ ├─────────────────────────────────────────────────────────────── │ L3: AIAutonomousService │ │ 蟓入: L1 宏观指什 + L2 Kernel 指什 │ │ 倄理: 冲突仲裁 → 冷华检查 → 操䜜限流 → RCON 呜什构造 │ │ 蟓出: ban-ip / kick / whitelist / clear-lag / set-spawn-rate │ │ 技栏: 每小时最倚 12 次操䜜高风险操䜜需双信号确讀 │ └──────────────────────────────────────────────────────────────┘ ``` **䞺什么需芁䞀层决策** SovereignDeepSeek擅长理解新嚁胁暡匏䜆存圚 API 延迟~2-5 秒和偶发的非结构化蟓出。Kernel 是纯规则匕擎延迟 < 1ms可以圚 Sovereign 响应之前对已知嚁胁暡匏做出即时反应。䞀者取亀集互盞兜底。 ### 2. Kernel 信号融合暡型 Kernel 内郚运行 5 䞪虚拟暡块`KernelModule` 接口每䞪暡块从特定安党子系统采集压力信号 | 暡块 | 名称 | 数据源 | 映射向量 | 基准权重 | |------|------|--------|----------|----------| | `ThreatMeshModule` | 嚁胁眑栌 | DDoS / 防火墙 / IDS / 端口扫描 / 深床包检测 | `network` | 1.12 | | `CommandLatticeModule` | 指什晶栌 | 呜什守卫危险指什拊截 + RCON 爆砎 | `command` | 1.18 | | `HardeningMatrixModule` | 加固矩阵 | 安党基线审计挏掞数 × 䞥重性 | `integrity` | 1.05 | | `PerimeterWardModule` | 蟹界技盟 | WAF被拊截/可疑请求 + 掻跃客户端数 | `perimeter` | 0.92 | | `EchoGridModule` | 回波眑栌 | 历史 IP 的压力记忆衰减 | `memory` | 0.84 | 每䞪 Pulse 呚期默讀 30s5 䞪暡块各自产生 0~N 䞪 `KernelSignal`module + vector + pressure。汇聚算法 ``` 对于每䞪信号 signal: weighted = clamp(signal.pressure × adaptiveWeight[module], 0, 100) vectorScores[signal.vector] += weighted moduleScores[signal.module] += weighted heat = clamp(peak_vector × 0.68 + average_vector × 0.32, 0, 100) resonance = clamp(heat × 0.45 + second_vector × 0.18 + energized_count × 14 + signal_count × 2.2, 0, 100) control = clamp(100 - heat × 0.62 - resonance × 0.28, 0, 100) ``` 自适应权重通过指数移劚平均劚态调敎 ``` target_weight = baseline_weight + (module_pressure ≥ 80 ? 0.18 : module_pressure ≥ 55 ? 0.08 : 0) active_weight = current × 0.82 + target × 0.18 active_weight = clamp(active_weight, 0.72, 1.45) ``` EchoGrid 攻击者记忆衰减公匏 ``` cell.pressure = cell.pressure × 0.55 + pulse.heat × 0.75 // 超过 retention 时闎未曎新的 cell 自劚枅陀 ``` ### 3. 数据流党景 ``` ┌──────────────┐ │ Minecraft │ │ PaperMC │ │ (RCON 25575) │ └──┬───────┬──┘ │ │ RCON 指什 │ │ latest.log (ban-ip / │ │ /proc 指标 kick / │ │ netstat whitelist) │ │ │ │ ┌────────────────────┮───────┮──────────────────────┐ │ Aluer ServerGuard │ │ │ │ ┌──────────┐ ┌──────────┐ ┌──────────┐ │ │ │ Monitor │ │ Security │ │ AI │ │ │ │ Process │ │ DDoS/IDS │ │ DeepSeek │ │ │ │ Resource │ │ WAF/Honey│ │ Anomaly │ │ │ │ Connect │ │ ZeroTrust│ │ Predict │ │ │ │ Log │ │ 30+ svc │ │ Adaptive │ │ │ └────┬─────┘ └────┬─────┘ └────┬─────┘ │ │ │ │ │ │ │ └─────────┬───┎─────────────┘ │ │ │ │ │ ┌────────────┮────────────┐ │ │ │ Kernel + Sovereign │ │ │ │ 信号融合 + 指什产出 │ │ │ └────────────┬────────────┘ │ │ │ │ │ ┌────────────┮────────────┐ │ │ │ AutoExecutor / RCON │ │ │ │ 指什执行 + 操䜜记圕 │ │ │ └────────────────────────┘ │ │ │ │ ┌────────────────────────┐ │ │ │ Web Dashboard :8080 │ ← 管理员浏览噚 │ │ │ Spring Shell Terminal │ ← 管理员终端 │ │ └────────────────────────┘ │ └────────────────────────────────────────────────────┘ │ Cloudflare API (蟹猘挑战 / 封犁 / Under Attack) ``` --- ## 🚀 快速匀始 ### 环境芁求 | 䟝赖 | 版本 | 诎明 | |------|------|------| | JDK | 17+ | 猖译和运行 | | Maven | 3.9+内眮 | `apache-maven-3.9.6/` 已打包圚仓库䞭 | | OS | Ubuntu / Debian | 生产环境掚荐其他 Linux 也可运行䜆郚分安党暡块䟝赖 iptables/ufw | | Memory | 2 GB+ 可甚 | JVM 堆 + Minecraft 服务端本身的内存占甚之倖 | | Disk | 10 GB+ | 日志 + 倇仜 + jar 包 | | Minecraft | PaperMC 1.21+ | 需匀启 RCON`server.properties` äž­ `enable-rcon=true` | | DeepSeek | API Key | AI 决策和自然语蚀问答必需 | | Node.js | 18+仅匀发前端时需芁 | 生产郚眲䜿甚预构建的静态资源 | ### 本地构建 ```bash # 1. 克隆仓库 git clone https://github.com/aluer/serverguard.git cd serverguard # 2. 䜿甚项目内眮的 Maven 构建 ./apache-maven-3.9.6/bin/mvn clean package -DskipTests # 3. 产物䜍眮 ls -lh target/serverguard.jar ``` 构建过皋同时䌚通过 Vite 猖译前端 React 应甚将产物蟓出到 `src/main/resources/static/`最终嵌入 jar 包。 ### 环境变量配眮 **最小可运行配眮**仅需 3 䞪环境变量 ```bash # 必须DeepSeek API Key从 https://platform.deepseek.com 获取 export DEEPSEEK_API_KEY=sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx # 必须RCON 密码䞎 Minecraft server.properties äž­ rcon.password 䞀臎 export RCON_PASSWORD=your-strong-rcon-password ``` **完敎生产环境配眮** ```bash # ──── 栞心凭证 ──── export DEEPSEEK_API_KEY=sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx export DEEPSEEK_BASE_URL=https://api.deepseek.com # 可选默讀倌 export DEEPSEEK_MODEL=deepseek-chat # 可选 export RCON_PASSWORD=your-strong-rcon-password # ──── 邮件告譊QQ 邮箱瀺䟋 ──── export ALUER_ALERT_SMTP_USERNAME=your-email@qq.com export ALUER_ALERT_SMTP_PASSWORD=your-smtp-auth-code # QQ 邮箱需䜿甚授权码 export ALUER_ALERT_EMAIL_PRIMARY=admin@example.com export ALUER_ALERT_EMAIL_SECONDARY=backup@example.com # 可选 # ──── Cloudflare 蟹猘防技可选 ──── export ALUER_CLOUDFLARE_ZONE_ID=your-zone-id export ALUER_CLOUDFLARE_API_KEY=your-api-key export ALUER_CLOUDFLARE_EMAIL=your-cloudflare-email ``` > **安党提瀺**䞍芁将 API Key 和密码硬猖码圚 `application.yml` 䞭。所有敏感配眮项郜䜿甚 `${VAR_NAME:}` 占䜍笊语法匕甚环境变量未讟眮时䜿甚空字笊䞲䜜䞺默讀倌。 ### 銖次启劚 ```bash # 前台启劚可看到 Spring Shell 亀互终端 java -jar target/serverguard.jar # 后台启劚䜿甚提䟛的脚本 ./start.sh # 䜿甚 systemd掚荐生产环境 sudo systemctl start serverguard ``` 启劚成功后䌚星瀺 Spring Shell 终端 ``` ╔══════════════════════════════════════════════════╗ ║ 欢迎䜿甚 Aluer 服务噚安党防技系统 ║ ╠══════════════════════════════════════════════════╣ ║ 蟓入 help 查看可甚呜什 ║ ║ 蟓入 ai <问题> 䜿甚 AI 智胜助手 ║ ╚══════════════════════════════════════════════════╝ aluer> ``` 验证䞀切正垞 ```bash # 测试 API curl http://localhost:8080/api/status # 预期响应 {"status":"running","timestamp":1746883200000} # 访问 Web 控制台 curl http://localhost:8080/ ``` ### 䞀键安装脚本 ```bash # 䜿甚 sudo 权限执行 sudo bash install.sh ``` 该脚本䌚 1. 检测/安装 Java 17 2. 创建 `/opt/serverguard/` 工䜜目圕 3. 等埅䜠䞊䌠 jar 包通过 `scp` 或其他方匏 4. 自劚创建并启甚 systemd 服务 5. 启劚服务并验证状态 --- ## 📊 郚眲指南 ### Systemd 服务 仓库提䟛了䞀䞪 systemd unit 文件 **`systemd/minecraft.service`** — Minecraft 服务端Aluer 的前提䟝赖 ```ini [Unit] Description=Minecraft PaperMC Server After=network.target [Service] Type=simple User=minecraft WorkingDirectory=/opt/minecraft ExecStart=/usr/bin/java -Xms4G -Xmx4G -jar paper-1.21.11.jar nogui Restart=on-failure RestartSec=10 StartLimitBurst=3 [Install] WantedBy=multi-user.target ``` **`systemd/serverguard.service`** — Aluer 防技系统 ```ini [Unit] Description=Aluer ServerGuard Protection System After=network.target minecraft.service Requires=minecraft.service [Service] Type=simple User=root WorkingDirectory=/opt/serverguard ExecStart=/usr/bin/java -jar serverguard.jar Restart=always RestartSec=5 [Install] WantedBy=multi-user.target ``` 郚眲步骀 ```bash # 1. 倍制服务文件 sudo cp systemd/minecraft.service /etc/systemd/system/ sudo cp systemd/serverguard.service /etc/systemd/system/ # 2. 创建 minecraft 甚户 sudo useradd -r -m -d /opt/minecraft minecraft # 3. 重新加蜜 systemd sudo systemctl daemon-reload # 4. 先启劚 Minecraft再启劚 Aluer sudo systemctl enable --now minecraft sudo systemctl enable --now serverguard # 5. 查看运行状态 sudo systemctl status minecraft serverguard # 6. 查看 Aluer 日志 sudo journalctl -u serverguard -f ``` ### sudo 权限配眮 Aluer 需芁胜执行 `systemctl restart minecraft` 来重启 Minecraft 服务端。将 `systemd/sudoers.serverguard` 倍制到 `/etc/sudoers.d/` ```bash sudo cp systemd/sudoers.serverguard /etc/sudoers.d/serverguard sudo chmod 440 /etc/sudoers.d/serverguard ``` 该文件内容 ``` %sudo ALL=(ALL) NOPASSWD: /bin/systemctl restart minecraft %sudo ALL=(ALL) NOPASSWD: /bin/systemctl stop minecraft %sudo ALL=(ALL) NOPASSWD: /bin/systemctl start minecraft %sudo ALL=(ALL) NOPASSWD: /bin/systemctl status minecraft %sudo ALL=(minecraft) NOPASSWD: /usr/bin/rcon-cli * ``` ### 反向代理可选 劂果芁将 Web 控制台暎露到公眑建议圚前面攟眮 Nginx ```nginx server { listen 443 ssl; server_name console.your-server.com; # 基础鉎权 auth_basic "Aluer Console"; auth_basic_user_file /etc/nginx/.htpasswd; location / { proxy_pass http://127.0.0.1:8080; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } } ``` > **譊告**绝对䞍芁将 Aluer 的 8080 端口盎接暎露到公眑WAF 暡块仅提䟛基础 Web 防技䞍足以替代䞓䞚反向代理的安党加固。 --- ## ⚙ 配眮参考 ### 完敎配眮树 以䞋是 `application.yml` 䞭的所有顶级配眮节点及其甚途。每䞪节点郜可以通过 YAML 文件或环境变量芆盖。 ``` serverguard ├── minecraft # Minecraft 服务端连接配眮 │ ├── service-name # systemd 服务名默讀: minecraft │ ├── process-name # 进皋匹配名甚于进皋存掻检测 │ ├── jar-file # PaperMC jar 文件名 │ ├── working-dir # Minecraft 服务端工䜜目圕 │ ├── java-opts # JVM 启劚参数 │ ├── check-interval-seconds # 监控检查闎隔默讀: 5s │ └── rcon │ ├── enabled # 是吊启甚 RCON 连接 │ ├── host # RCON 䞻机默讀: localhost │ ├── port # RCON 端口默讀: 25575 │ └── password # RCON 密码${RCON_PASSWORD} │ ├── monitor # 监控阈倌配眮 │ ├── tps-threshold # TPS 告譊阈倌默讀: 15 │ ├── cpu-threshold # CPU 䜿甚率告譊阈倌 %默讀: 80 │ ├── memory-threshold # 内存䜿甚率告譊阈倌 %默讀: 85 │ ├── connection-threshold # 连接数匂垞阈倌 │ ├── log-watch-lines # 日志尟郚跟螪行数 │ └── log-path # Minecraft 日志文件路埄 │ ├── alert # 告譊通知配眮 │ ├── enabled # 是吊启甚告譊 │ └── email │ ├── smtp-host # SMTP 服务噚 │ ├── smtp-port # SMTP 端口默讀: 587 │ ├── username # 发件邮箱${ALUER_ALERT_SMTP_USERNAME} │ ├── password # SMTP 授权码${ALUER_ALERT_SMTP_PASSWORD} │ ├── to # 收件人列衚环境变量泚入 │ └── rate-limit │ ├── per-type-seconds # 同类型告譊冷华时闎默讀: 300s │ └── max-emails-per-minute # 每分钟最倧邮件数 │ ├── ai # AI 匕擎配眮 │ ├── enabled # 是吊启甚 AI 分析 │ ├── use-isolation-forest # 是吊䜿甚孀立森林匂垞检测 │ ├── use-prediction # 是吊䜿甚时序预测 │ ├── sliding-window-size # 滑劚窗口倧小指标数据点数 │ ├── anomaly-threshold # 匂垞检测阈倌0-1 │ ├── prediction-horizon-minutes # 预测时闎范囎分钟 │ └── deepseek │ ├── enabled # 是吊启甚 DeepSeek │ ├── api-key # API Key${DEEPSEEK_API_KEY} │ ├── base-url # API 地址默讀: https://api.deepseek.com │ ├── model # 暡型名默讀: deepseek-chat │ ├── max-tokens # 最倧蟓出 token 数 │ ├── temperature # 生成枩床0-1建议 0.35 │ ├── auto-analyze-alerts # 是吊自劚分析告譊 │ ├── analysis-interval-seconds # AI 分析闎隔 │ └── auto-execute │ ├── enabled # 是吊启甚 AI 自劚执行防埡操䜜 │ ├── ban-ip # 允讞自劚封犁 IP │ ├── kill-entity # 允讞自劚枅陀实䜓 │ ├── clear-lag # 允讞自劚枅理延迟 │ ├── set-spawn-rate # 允讞自劚调节生物生成率 │ ├── kick-player # 允讞自劚螢出玩家 │ ├── whitelist # 允讞自劚匀启癜名单 │ └── min-confidence # 自劚执行的最䜎眮信床默讀: 88 │ ├── security # 安党暡块总配眮见䞋面子节点 │ ├── enabled # 䞻匀关 │ ├── auto-ban-vpn # 自劚封犁 VPN/代理甚户 │ ├── check-on-login # 玩家登圕时执行安党检查 │ ├── max-connections-per-ip # 单 IP 最倧连接数 │ ├── block-common-exploits # 拊截垞见挏掞利甚 │ ├── log-all-commands # 记圕所有呜什 │ │ │ ├── minecraft-defense # Minecraft 协议层防埡 │ │ ├── game-tcp-port=25565 │ │ ├── query-udp-port=25565 │ │ ├── rcon-tcp-port=25575 │ │ ├── status-ping-threshold=25 │ │ ├── login-burst-threshold=12 │ │ ├── bot-swarm-threshold=15 │ │ ├── query-flood-threshold=30 │ │ ├── rcon-brute-force-threshold=5 │ │ └── compression-payload-threshold=8192 │ │ │ ├── ddos-defense # DDoS 倚层检测阈倌 │ │ ├── syn-flood-threshold=100 │ │ ├── udp-flood-threshold=200 │ │ ├── icmp-flood-threshold=100 │ │ ├── http-flood-threshold=150 │ │ ├── slow-connection-threshold=150 │ │ ├── amplification-threshold=20 │ │ └── minecraft-* # Minecraft 䞓属 DDoS 阈倌 │ │ │ ├── anti-intrusion # 入䟵检测配眮 │ │ ├── monitor-commands # 监控可疑呜什 │ │ ├── monitor-processes # 监控进皋变曎 │ │ ├── monitor-files # 监控文件变曎 │ │ ├── monitor-plugins # 监控插件目圕 │ │ ├── monitor-systemd # 监控服务状态 │ │ ├── monitor-rcon # 监控 RCON 爆砮 │ │ └── file-integrity # 文件完敎性监控 │ │ ├── enabled │ │ ├── max-depth=5 # 扫描深床 │ │ └── monitored-paths # 监控路埄列衚 │ │ │ ├── host-enforcement # 本机防火墙区制 │ │ ├── enabled │ │ ├── dry-run=true # 銖次郚眲建议匀启 │ │ ├── preferred-backend=auto # iptables / ufw / nftables │ │ ├── default-block-minutes=60 │ │ ├── default-rate-limit-per-minute=120 │ │ └── mirror-to-cloud-edge=true # 同步到 Cloudflare │ │ │ ├── cloud-edge # Cloudflare 蟹猘防技 │ │ ├── enabled │ │ ├── dry-run=true │ │ ├── provider=cloudflare │ │ ├── zone-id / api-key / api-email │ │ ├── default-block-mode=block │ │ ├── default-challenge-mode=challenge │ │ └── enable-under-attack-on-critical=true │ │ │ ├── orchestration # 猖排策略 │ │ ├── enabled │ │ ├── allow-local-block=true │ │ ├── allow-edge-challenge=true │ │ ├── allow-minecraft-defense=true │ │ └── notify-on-critical=true │ │ │ ├── autonomy # 自䞻防埡策略 │ │ ├── enabled │ │ ├── deepseek-dominant=true # L1 是吊䌘先于 L2 │ │ ├── quiet-console=true # 减少终端蟓出 │ │ ├── loop-interval-seconds=45 │ │ ├── min-risk-score-for-action=70 │ │ ├── critical-risk-score=90 │ │ ├── workflow-cooldown-seconds=180 │ │ ├── max-actions-per-hour=12 │ │ └── require-second-signal-for-containment=true │ │ │ ├── shield # Mirage Shield 配眮 │ │ ├── enabled │ │ ├── auto-mode=true │ │ ├── auto-enable-under-attack=true │ │ ├── heat-trigger=78 │ │ ├── resonance-trigger=72 │ │ ├── threat-score-trigger=85 │ │ ├── edge-challenge-offender-limit=6 │ │ ├── shelter-rate-limit-per-minute=45 │ │ ├── attacker-notice-enabled=true │ │ └── deterrence-message="..." │ │ │ ├── kernel # Kernel 匕擎配眮 │ │ ├── enabled │ │ ├── pulse-interval-seconds=30 │ │ ├── pulse-history-size=180 │ │ ├── journal-size=300 │ │ ├── echo-retention-minutes=180 │ │ ├── adaptive-weights=true │ │ ├── directive-heat-threshold=60 │ │ └── lockdown-heat-threshold=82 │ │ │ ├── task-bus # 任务总线配眮 │ │ ├── enabled │ │ ├── auto-dispatch=true │ │ ├── dispatch-interval-seconds=10 │ │ ├── queue-limit=200 │ │ └── history-limit=300 │ │ │ └── self-healing # 自愈猖排配眮 │ ├── enabled │ ├── dry-run=true # 銖次郚眲建议匀启 │ ├── loop-interval-seconds=45 │ ├── auto-backup-before-recovery=true │ ├── auto-whitelist-on-swarm=true │ ├── allow-soft-restart=true │ ├── tps-emergency-threshold=12 │ ├── cpu-emergency-threshold=92.0 │ ├── memory-emergency-threshold=95.0 │ └── max-recovery-actions-per-hour=8 │ ├── dashboard # Web 控制台配眮 │ ├── enabled │ ├── title="Aluer Nebula Console" │ ├── subtitle="PaperMC defense, recovery, and remote operations fabric" │ ├── refresh-interval-seconds=6 │ ├── compact-terminal=true │ └── ssh-gateway │ ├── enabled │ ├── session-timeout-minutes=30 │ ├── max-sessions=6 │ ├── command-timeout-seconds=25 │ ├── strict-host-key-checking=false │ ├── allow-private-key-paste=true │ ├── require-engine-handshake=true │ └── handshake-ttl-seconds=30 │ ├── backup # 倇仜配眮 │ ├── enabled │ ├── backup-dir=/opt/minecraft/backups │ ├── world-dir=/opt/minecraft/world │ ├── plugin-dir=/opt/minecraft/plugins │ ├── interval-hours=24 │ ├── max-backups=7 │ ├── compress=true │ ├── backup-plugins=true │ └── notify-on-complete=true │ ├── schedule # 计划任务 │ ├── enabled │ ├── daily-restart / restart-time="04:00" │ ├── save-before-restart / announce-restart │ ├── weekly-backup / backup-day="sunday" │ └── clear-lag-daily / clear-lag-time="02:00" │ ├── chat-filter # 聊倩过滀 │ ├── enabled │ ├── block-ip / block-profanity / block-advertising │ ├── block-spam / block-illegal │ ├── spam-threshold=5 │ ├── spam-window-seconds=10 │ ├── mute-on-violation / mute-duration-minutes=5 │ ├── kick-on-repeat / max-violations-before-kick=3 │ └── custom-words[] │ ├── announcement # 定时公告 │ ├── interval-seconds=300 │ └── messages[] │ └── afk # AFK 管理 ├── enabled ├── afk-timeout-minutes=5 ├── max-afk-minutes=30 ├── teleport-to-afk-zone ├── afk-zone="0,100,0" └── auto-logout ``` ### 环境变量泚入衚 配眮文件䞭所有 `${VAR_NAME:default}` 圢匏的倌郜可以通过环境变量芆盖 | 环境变量 | 对应配眮路埄 | 默讀倌 | |----------|-------------|--------| | `RCON_PASSWORD` | `serverguard.minecraft.rcon.password` | (空) | | `DEEPSEEK_API_KEY` | `serverguard.ai.deepseek.api-key` | (空) | | `DEEPSEEK_BASE_URL` | `serverguard.ai.deepseek.base-url` | `https://api.deepseek.com` | | `DEEPSEEK_MODEL` | `serverguard.ai.deepseek.model` | `deepseek-chat` | | `ALUER_ALERT_SMTP_USERNAME` | `serverguard.alert.email.username` | (空) | | `ALUER_ALERT_SMTP_PASSWORD` | `serverguard.alert.email.password` | (空) | | `ALUER_ALERT_EMAIL_PRIMARY` | `serverguard.alert.email.to[0]` | (空) | | `ALUER_ALERT_EMAIL_SECONDARY` | `serverguard.alert.email.to[1]` | (空) | | `ALUER_CLOUDFLARE_ZONE_ID` | `serverguard.security.cloud-edge.zone-id` | (空) | | `ALUER_CLOUDFLARE_API_KEY` | `serverguard.security.cloud-edge.api-key` | (空) | | `ALUER_CLOUDFLARE_EMAIL` | `serverguard.security.cloud-edge.api-email` | (空) | --- ## 📋 暡块枅单 ### AI 决策层 (`com.aluer.ai`) | ç±» | 文件 | 功胜 | |----|------|------| | `AluerSovereignEngine` | `ai/AluerSovereignEngine.java` | **L1 䞻控匕擎**。每 45 秒收集党眑态势 JSON → DeepSeek 生成 `AutonomyDirective`workflow + defenseLevel + riskScore。内眮工䜜流名称校验癜名单防止 LLM 幻觉产生无效指什。 | | `DeepSeekClient` | `ai/DeepSeekClient.java` | **DeepSeek API 客户端**。原生 `HttpURLConnection` 实现。支持 3 种调甚暡匏告譊分析`analyzeAlert`、健康报告`getServerHealthReport`、自由问答`askQuestion`和自治指什规划`planAutonomousDefense`。内眮从 Markdown/文本䞭提取 JSON 的容错解析。 | | `AIAutonomousService` | `ai/AIAutonomousService.java` | **L3 执行萜地层**。读取 L1 Sovereign 指什 + L2 Kernel 指什执行冲突仲裁、操䜜冷华检查、每小时操䜜次数限制、双信号确讀最终将决策蜬化䞺 RCON 呜什。 | | `AIStrategyEngine` | `ai/AIStrategyEngine.java` | **策略匹配匕擎**。根据嚁胁类型和䞥重皋床映射最䜳防埡策略暎力砎解 → 䞎时封犁+验证码DDoS → 流量枅掗+限流。 | | `AnomalyDetector` | `ai/AnomalyDetector.java` | **孀立森林匂垞检测**。基于 Apache Commons Math3 实现对 CPU/内存/TPS/连接数等倚绎指标进行无监督匂垞检测。 | | `TimeSeriesPredictor` | `ai/TimeSeriesPredictor.java` | **时序预测噚**。基于滑劚窗口的历史指标数据预测未来 60 分钟内的 TPS 走势提前预譊性胜瓶颈。 | | `AdaptiveThreshold` | `ai/AdaptiveThreshold.java` | **自适应阈倌**。孊习服务噚历史莟蜜暡匏劚态调敎各项监控告譊的觊发阈倌降䜎凌晚䜎莟蜜时段的误报率。 | ### Kernel 内栞层 (`com.aluer.kernel`) | ç±» | 文件 | 功胜 | |----|------|------| | `AluerKernelEngine` | `kernel/AluerKernelEngine.java` | **L2 内栞匕擎**。每 30 秒执行䞀次 Pulse 埪环。内郚运行 5 䞪虚拟暡块ThreatMesh / CommandLattice / HardeningMatrix / PerimeterWard / EchoGrid加权汇聚信号计算 heat/resonance/control 䞉绎压力产出 `KernelDirective`。支持自适应权重调敎和 EchoGrid 攻击者记忆衰减。 | | `AluerKernelTaskBus` | `kernel/AluerKernelTaskBus.java` | **任务总线**。插件化的任务执行框架。4 䞪内眮 PluginInsight / Stability / Defense / Recovery按䌘先级掟发任务。支持任务队列限长、执行历史远螪。 | | `AluerSelfHealingOrchestrator` | `kernel/AluerSelfHealingOrchestrator.java` | **自愈猖排噚**。每 45 秒运行䞀次恢倍检查。检测 TPS/CPU/内存是吊觊发玧急阈倌。恢倍劚䜜包括蜯重启、枅实䜓、调节生物生成率、匀启癜名单bot swarm 场景、恢倍前自劚倇仜。每小时最倚 8 次恢倍操䜜。 | ### 安党防技层 (`com.aluer.security`) 这是系统䞭规暡最倧的包包含 30+ 䞪安党服务 | 类别 | ç±» | 功胜 | |------|-----|------| | **DDoS 防埡** | `DDoSProtectionService` | SYN/HTTP/UDP/ICMP Flood 检测Minecraft 䞓属 Status/Login/Rcon/Query Flood 识别 | | | `DDoSDefenseCoordinator` | 统䞀协调倚䞪 DDoS 检测源防重倍封犁 | | | `DistributedAttackMitigationService` | 分垃匏攻击猓解跚节点协同 | | | `MinecraftProtocolSecurityService` | Minecraft 协议层深床防埡Status Ping / Login Burst / Bot Swarm / Compression Bomb | | **防火墙** | `FirewallService` | iptables/ufw 规则管理黑癜名单绎技 | | | `HostEnforcementService` | 本机防火墙区制支持 auto/iptables/ufw/nftables 后端 | | | `NetworkMonitorService` | 进出站流量统计䞎匂垞检测 | | | `NetworkSegmentationService` | 眑络分段隔犻 | | **入䟵检测** | `IntrusionDetectionService` | 基于筟名的入䟵检测 | | | `IntrusionPreventionSystem` | 自劚阻断入䟵行䞺 | | | `HostIntrusionCountermeasureService` | 䞻机层面入䟵反制 | | | `LogAnalysisService` | 日志匂垞暡匏匹配 | | | `LogCorrelationService` | 倚源日志关联分析 | | **应甚安党** | `WebApplicationFirewall` (WAF) | SQLi / XSS / 路埄遍历 / Header 泚入防技客户端信誉评分 | | | `WafRequestFilter` | WAF 的 HTTP 请求过滀拊截噚 | | | `APIRateLimitService` | API 接口速率限制 | | | `RateLimitService` | 通甚速率限制匕擎 | | **高级防埡** | `HoneypotService` | 蜜眐诱饵端口捕获扫描者收集攻击指纹 | | | `ZeroTrustArchitectureService` | 持续身仜验证最小权限校验 | | | `AdvancedMalwareDetectionService` | 恶意文件扫描插件后闚、可疑 jar | | | `EndpointDetectionResponseService` | EDR 端点检测䞎响应 | | | `ContainerSecurityService` | 容噚安党检查 | | **眑络分析** | `TrafficAnalysisService` | 流量暡匏分析 | | | `PacketInspectionService` | 深床包检测DPI | | | `FlowAnalyzerService` | NetFlow/sFlow 流分析 | | | `PortScanDetectionService` | 端口扫描检测䞎扫描者封犁 | | | `ProtocolAnalysisService` | 协议匂垞检测 | | **IP 情报** | `IPReputationService` | IP 信誉评分党局黑名单查询 | | | `GeoIPService` | IP 地理䜍眮查询按囜家/地区过滀 | | | `ThreatIntelligenceService` | 嚁胁情报源集成可配眮倚䞪 Feed | | | `VPNDetectionService` | VPN/代理/托管服务商 IP 检测 | | **SSL/TLS** | `SSLMonitorService` | SSL/TLS 证乊过期监控 | | | `SSLTLSCertificateService` | 证乊管理 | | **安党运绎** | `SIEMService` | 安党信息䞎事件管理关联碎片化事件识别攻击铟 | | | `SecurityOrchestrationService` | 安党猖排协调 L1/L2 决策䞎具䜓防埡暡块 | | | `SecurityAutomationScheduler` | 自劚化安党任务调床 | | | `SecurityBaselineHardeningService` | 安党基线审计䞎加固系统配眮、文件权限、服务状态 | | | `BackupSecurityService` | 倇仜文件安党保技 | | **呜什安党** | `CommandExecutionGuardService` | 危险呜什拊截rm -rf / wget | sh / 权限提升等 | | **执行层** | `HostEnforcementService` | 本机防火墙区制 | | | `CloudflareIntegrationService` | Cloudflare API 集成IP 封犁/挑战/Under Attack 暡匏 | | | `DNSSecurityService` | DNS 安党防技 | | | `SessionManagementService` | 䌚话管理䞎匂垞检测 | | | `LoadBalancerService` | 简易莟蜜均衡 | | | `TrafficShapingService` | 流量敎圢/QoS | | | `EncryptionService` | 数据加密工具 | ### 运营控制层 (`com.aluer.console`) | ç±» | 功胜 | |----|------| | `AluerOperationsCenterService` | **运营总控台**聚合党郚子系统状态蟓出给 Web 控制台的 `/api/console/overview` 接口 | | `AluerMirageShieldService` | **幻圱技盟**四级暡匏OBSERVE → FORTIFY → MIRAGE → SHELTER攻击者嚁慑通知自劚暡匏切换 | | `RemoteSshGatewayService` | **远皋 SSH 眑关**内眮终端支持 Sovereign Handshake 连接审批 + 呜什守卫联劚 | | `ConsoleStreamController` | **SSE 实时流**通过 Server-Sent Events 掚送实时总览数据到 Web 前端 | ### 监控采集层 (`com.aluer.monitor`) | ç±» | 功胜 | |----|------| | `ProcessMonitor` | 进皋存掻检测厩溃自劚重启 Minecraft 服务端 | | `ResourceMonitor` | 系统资源采集CPU/内存/磁盘 I/O通过 `/proc` 和 JMX 获取 | | `ConnectionMonitor` | 眑络连接统计检测 Connection Flood 攻击暡匏 | | `LogMonitor` | Minecraft `latest.log` 实时远螪捕获厩溃堆栈和匂垞登圕暡匏 | ### 栞心服务层 (`com.aluer.service`) | ç±» | 功胜 | |----|------| | `ServerGuardService` | **系统总控**`CommandLineRunner` 入口调床党郚监控埪环和 AI 分析埪环 | | `RconClient` | Minecraft RCON 协议客户端所有枞戏内呜什的通道 | | `AutoExecutor` | AI 决策到 RCON 呜什的翻译噚将抜象的防埡劚䜜"封犁IP"蜬䞺具䜓指什`/ban-ip 1.2.3.4` | ### Web 亀互层 (`com.aluer.web`) | ç±» | 功胜 | |----|------| | `DashboardController` | REST API`/api/*`提䟛状态查询、呜什执行、倇仜管理、健康检查、攻击报告等接口 | | `OperationsConsoleController` | 运营控制台 API`/api/console/*`总览数据、Shield 控制、快捷操䜜 | | `ConsoleStreamController` | SSE 流掚送`/api/console/stream/overview` | | `HealthService` | 组件级健康检查RCON/AI/邮件/安党/自愈系统资源信息汇总 | | `RequestLoggingFilter` | HTTP 请求日志过滀噚慢请求和 500 错误自劚告譊 | ### 蟅助功胜暡块 | 包 | ç±» | 功胜 | |----|-----|------| | `com.aluer.alert` | `EmailAlertService` | 邮件告譊支持 QQ/Gmail/自定义 SMTP内眮发送频率限制 | | `com.aluer.backup` | `BackupService` | 侖界/插件/配眮定时打包倇仜支持压猩和自劚枅理旧倇仜 | | `com.aluer.anticheat` | `AntiCheatService` | 反䜜匊联劚汇总反䜜匊插件数据智胜刀眚 | | `com.aluer.vpn` | `VPNDetectionService` | VPN/代理 IP 检测防止䜜匊者绕过 IP 封犁 | | `com.aluer.chat` | `ChatFilterService` | 枞戏内聊倩过滀脏话/广告/钓鱌铟接/刷屏 | | `com.aluer.punishment` | `PunishmentService` | 统䞀倄眚管理封犁/螢出/犁蚀记圕历史 | | `com.aluer.audit` | `SecurityAuditService` | 安党审计日志记圕所有管理员操䜜和安党事件 | | `com.aluer.world` | `WorldManagementService` | Minecraft 䞖界管理劚态加蜜/卞蜜/列衚 | | `com.aluer.metrics` | `MetricsCollectionService` | 指标统䞀汇总标准化各 Monitor 的采集数据 | | `com.aluer.profiler` | `PerformanceProfiler` | 性胜分析噚CPU/内存/Tick 耗时深床剖析 | | `com.aluer.schedule` | `ScheduledTaskService` | 计划任务匕擎定时重启/倇仜/æž… lag/公告 | | `com.aluer.export` | `DataExportService` | 安党数据富出审计日志/攻击记圕/性胜报告 | | `com.aluer.command` | `AdminCommands` / `TestCommands` | Spring Shell 管理呜什和测试呜什 | | `com.aluer.notification` | `WebhookService` / `AttackReportService` | Discord/Slack Webhook 告譊通知HTML 攻击报告自劚生成䞎富出 | ### 数据暡型 (`com.aluer.model`) | ç±» | 字段 | 诎明 | |----|------|------| | `AlertEvent` | type, message, rootCause, timestamp, confidence, suggestedAction | 标准化告譊事件 | | `AlertType` | PROCESS_DEAD / TPS_LOW / CPU_HIGH / MEM_HIGH / CONNECTION_FLOOD / LOG_ATTACK / BACKUP_FAILED / AI_ANOMALY | 告譊类型枚䞟 | | `MetricsData` | tps, cpuUsage, memoryUsage, onlinePlayers, connections, tickTime | 服务噚性胜快照 | --- ## 🛡 防埡等级䞎自劚响应 ### 四级防埡䜓系 系统根据 Kernel heat 和 Sovereign 绌合刀定自劚切换防埡等级 | 等级 | heat 范囎 | 觊发条件 | 自劚行䞺 | |------|-----------|----------|----------| | `NORMAL` | < 45 | 正垞运行 | 垞规监控匂垞记圕到日志䞍执行䞻劚防埡 | | `ELEVATED` | 45–69 | 单䞪暡块压力䞊升 | 加区检测频率IP 信誉查询启甚高风险 IP 标记 | | `HIGH` | 70–81 | 倚暡块同时报譊 | 自劚封犁高风险 IP速率限制启甚蟹猘挑战匀启 | | `LOCKDOWN` | ≥ 82 | 䞥重倍合攻击 | 癜名单暡匏Cloudflare Under Attack拒绝新连接邮件玧急通知 | ### Mirage Shield 暡匏切换 Mirage Shield 是面向攻击者的偏蜬技盟有 4 种运行暡匏 | 暡匏 | 含义 | 自劚觊发条件 | |------|------|-------------| | `OBSERVE` | 仅观察䞍干预 | 默讀暡匏 | | `FORTIFY` | 加固防埡 | heat ≥ 78 或 threat_score ≥ 85 | | `MIRAGE` | 镜像偏蜬 | resonance ≥ 72 䞔有高眮信床攻击者 | | `SHELTER` | 避隟所暡匏 | heat ≥ 82 侔 resonance ≥ 80进入䞥栌限流 | Mirage Shield 圚 `MIRAGE` 和 `SHELTER` 暡匏䞋䌚向检测到的攻击 IP 返回嚁慑消息`deterrence-message` 配眮项。 ### 自愈猖排觊发条件 `AluerSelfHealingOrchestrator` 圚满足以䞋任䞀条件时觊发恢倍流皋 | 条件 | 阈倌 | 恢倍劚䜜 | |------|------|----------| | TPS 䜎于玧急线 | < 12 TPS | `clear-lag` + `kill-entity` + `set-spawn-rate 䜎` | | CPU 高于玧急线 | > 92% | 䌘先 `clear-lag`若无效则考虑蜯重启 | | 内存高于玧急线 | > 95% | `save-all` → 通知玩家 → 蜯重启 | | Bot Swarm 检测 | ≥ 15 䞪并发假玩家 | `whitelist on` + 封犁来源 IP | 所有恢倍劚䜜圚 `dry-run=true` 时仅记圕日志而䞍实际执行。 --- ## 🌐 API 参考 ### 系统状态 API | 方法 | 路埄 | 诎明 | |------|------|------| | `GET` | `/api/status` | 系统运行状态 | | `GET` | `/api/server/info` | Minecraft 服务噚信息 | | `GET` | `/api/performance` | TPS / CPU / 内存指标 | | `POST` | `/api/command/execute` | 执行 RCON 呜什参数 `command` | **瀺䟋** ```bash # 执行 RCON 呜什 curl -X POST http://localhost:8080/api/command/execute \ -d "command=list" # 获取性胜指标 curl http://localhost:8080/api/performance ``` ### 安党态势 API | 方法 | 路埄 | 诎明 | |------|------|------| | `GET` | `/api/security/stats` | 安党总览 | | `GET` | `/api/security/network/posture` | 眑络态势诊情 | | `GET` | `/api/security/network/offenders?limit=10` | 高风险 IP 列衚 | | `GET` | `/api/security/network/incidents?limit=20` | 安党事件列衚 | | `GET` | `/api/security/network/ip?ip=1.2.3.4` | 单 IP 深床检查 | | `POST` | `/api/security/network/quarantine` | 隔犻 IP参数 `ip`, `actor`, `reason` | | `POST` | `/api/security/network/release` | 释攟 IP参数同䞊 | **瀺䟋** ```bash # 查询 IP 信誉 curl "http://localhost:8080/api/security/network/ip?ip=45.33.32.156" # 手劚隔犻 IP curl -X POST "http://localhost:8080/api/security/network/quarantine" \ -d "ip=45.33.32.156&actor=admin&reason=syn flood detected" ``` ### 控制台操䜜 API | 方法 | 路埄 | 诎明 | |------|------|------| | `GET` | `/api/console/overview` | 完敎运营总览所有子系统状态聚合 | | `GET` | `/api/console/stream/overview` | SSE 实时流掚送 | | `POST` | `/api/console/shield/engage` | 手劚切换 Shield 暡匏参数 `mode`, `reason` | | `POST` | `/api/console/quick-action` | 快捷操䜜参数 `action``backup-now` / `shield-mirage` / `shield-shelter` | ### SSH 眑关 API | 方法 | 路埄 | 诎明 | |------|------|------| | `POST` | `/api/console/ssh/handshake` | Sovereign 握手审批参数 `host`, `port`, `username`, `purpose` | | `POST` | `/api/console/ssh/connect` | 建立 SSH 连接参数 `alias`, `host`, `port`, `username`, `password`, `privateKeyPath`, `handshakeToken` | | `POST` | `/api/console/ssh/execute` | 执行远皋呜什参数 `sessionId`, `command` | | `DELETE` | `/api/console/ssh/{sessionId}` | 断匀 SSH 䌚话 | **SSH 眑关的安党讟计** 1. **Sovereign Handshake 前眮**连接前必须先通过握手审批Kernel 根据圓前 heat 和风险评分决定是吊批准 2. **呜什守卫联劚**执行的每条呜什郜经过 `CommandExecutionGuardService` 审查危险呜什被标记和阻断 3. **䌚话超时**默讀 30 分钟无掻劚自劚断匀 4. **审计同步**所有 SSH 操䜜自劚记圕到 `SecurityAuditService` ### 健康检查 API | 方法 | 路埄 | 诎明 | |------|------|------| | `GET` | `/api/health` | 完敎健康报告组件状态 + 系统资源 | | `GET` | `/api/health/live` | 存掻探针K8s liveness probe | | `GET` | `/api/health/ready` | 就绪探针K8s readiness probe | **瀺䟋响应 (`/api/health`)** ```json { "status": "HEALTHY", "uptimeSeconds": 86400, "components": { "rcon": {"status": "UP", "host": "localhost:25575"}, "deepseek-ai": {"status": "UP", "model": "deepseek-chat"}, "email-alert": {"status": "UP"}, "security": {"status": "UP", "kernelEnabled": true}, "self-healing": {"status": "UP", "dryRun": true} }, "system": { "memory": {"usedMB": 320, "maxMB": 4096, "usagePercent": 7.8}, "heapUsedMB": 180, "systemCpuLoad": 12.5 } } ``` ### 通知䞎报告 API | 方法 | 路埄 | 诎明 | |------|------|------| | `GET` | `/api/attacks/recent?limit=20` | 最近攻击记圕 | | `POST` | `/api/attacks/report` | 生成 HTML 攻击报告 | | `POST` | `/api/webhook/test` | 测试 Discord/Slack Webhook | **Webhook 配眮**`application.yml` ```yaml serverguard: webhook: enabled: false discord-url: ${ALUER_WEBHOOK_DISCORD:} slack-url: ${ALUER_WEBHOOK_SLACK:} ``` ### 倇仜管理 API | 方法 | 路埄 | 诎明 | |------|------|------| | `GET` | `/api/backup/list` | 倇仜列衚 | | `POST` | `/api/backup/create` | 创建新倇仜参数 `name` | --- ## 🖥 Web 控制台 Aluer 内眮 React 19 + Vite 6 构建的单页应甚控制台Nebula Console。 ### 页面垃局 ``` ┌────────────┬───────────────────────────────────────────────┐ │ Command │ Hero PanelMirage Shield 圓前暡匏 │ │ Rail │ ┌─────────────┐ ┌──────────────┐ │ │ ──────── │ │ Risk Score │ │ Shield 操䜜 │ │ │ System │ │ Kernel Heat │ │ FORTIFY │ │ │ Title │ │ Resonance │ │ MIRAGE │ │ │ ──────── │ └─────────────┘ │ SHELTER │ │ │ Stream │ │ RECOVERY │ │ │ Status │ └──────────────┘ │ │ ──────── ├──────────────────────────────────────────────── │ Quick │ Module Constellation互联胜力矩阵 │ │ Actions │ ┌──────────┐ ┌──────────┐ ┌──────────┐ │ │ ──────── │ │ Mirage │ │ Kernel │ │ Task Bus │ │ │ Metric │ │ Shield │ │ Engine │ │ │ │ │ Cards │ └──────────┘ └──────────┘ └──────────┘ │ │ TPS/CPU │ ... │ │ Memory/ ├──────────────────────────────────────────────── │ Threat │ Node Fabric本地栞心 + 远皋 SSH 节点 │ │ ├──────────────────────────────────────────────── │ │ Remote SSH Workbench + Terminal │ │ │ ┌─────────────────────────────────────────┐ │ │ │ │ [终端蟓出区域最倚 120 行] │ │ │ │ └─────────────────────────────────────────┘ │ │ ├──────────────────────────────────────────────── │ │ Threat Trace高风险来源列衚 │ │ ├──────────────────────────────────────────────── │ │ Audit Stream审计事件流支持筛选 │ └────────────┮───────────────────────────────────────────────┘ ``` ### 实时数据流 前端通过 **SSEServer-Sent Events** 接收实时数据掚送 ``` 浏览噚 ──EventSource──→ /api/console/stream/overview │ 每 6 秒掚送䞀次党量总览 JSON 由 AluerOperationsCenterService 聚合 │ 降级机制SSE 连接倱莥时自劚切换䞺 setInterval 蜮询 /api/console/overview ``` ### 功胜枅单 | 功胜 | 诎明 | |------|------| | Shield 控制 | 䞀键切换 FORTIFY / MIRAGE / SHELTER / RECOVERY 暡匏 | | 性胜走势 | TPS / CPU / Memory / 圚线玩家 SparkBar 实时可视化 | | 自劚刷新 | 可切换匀关 + 可选闎隔3s / 6s / 10s / 30s | | 健康检查面板 | 可折叠星瀺 RCON/AI/邮件/安党/自愈 组件 UP/DOWN 状态 | | SSH 远皋终端 | 连接远皋节点执行呜什垊呜什守卫审查 | | 暡块监控 | 9 䞪暡块的状态、信号倌实时星瀺 | | 嚁胁视囟 | 高风险 IP 列衚score + riskLevel + 诊情最倚 10 条 | | 审计筛选 | 实时筛选审计事件、眑络事件、Shield 状态变迁最倚 24 条 | --- ## 🖧 Shell 呜什参考 Aluer 启劚后提䟛 Spring Shell 亀互终端支持自然语蚀和结构化呜什。 ### AI 对话 ```bash aluer> ai 测试䞀䞋服务噚 # 执行完敎服务噚测试 aluer> ai 匀启防埡 # 匀启 AI 自䞻防埡 aluer> ai 查看安党状态 # 获取安党态势抂览 aluer> ai 垮我分析䞀䞋圓前的卡顿原因 # DeepSeek 深床分析 aluer> ai 查看䞖界 # 列出所有䞖界 aluer> ask 劂䜕提高服务噚安党性 # 自由问答 ``` ### 基础呜什 | 呜什 | 瀺䟋 | 诎明 | |------|------|------| | `help` | `help` | 星瀺所有可甚呜什 | | `status` | `status` | 服务噚运行状态进皋/CPU/内存/连接数 | | `test` | `test` / `test cpu` / `test memory` / `test network` / `test security` | 运行测试 | | `metrics` | `metrics` / `metrics counters` / `metrics gauges` | 性胜指标查询 | ### 安党管理 | 呜什 | 瀺䟋 | 诎明 | |------|------|------| | `security` | `security` / `security ddos` / `security firewall` / `security intrusion` / `security threats` / `security vpn` / `security chat` | 各安党暡块状态 | | `defense` | `defense` / `defense on` / `defense off` / `defense list` / `defense level high` | AI 防埡管控 | | `network` | `network` / `network geoip 1.2.3.4` / `network reputation 1.2.3.4` / `network ports` | 眑络分析 | ### 玩家管理 | 呜什 | 瀺䟋 | 诎明 | |------|------|------| | `kick` | `kick PlayerName` | 螢出玩家 | | `ban` | `ban PlayerName` / `ban PlayerName 䜜匊` | 封犁玩家 | | `unban` | `unban PlayerName` | 解封玩家 | ### 运绎管理 | 呜什 | 瀺䟋 | 诎明 | |------|------|------| | `backup` | `backup` / `backup create` / `backup status` / `backup start` | 倇仜管理 | | `world` | `world` / `world load world_nether` / `world unload world_nether` | 䞖界管理 | | `alert` | `alert` / `alert test` / `alert send 服务噚匂垞` | 邮件告譊 | | `audit` | `audit` / `audit recent 20` / `audit summary` | 安党审计 | | `tasks` | `tasks` / `tasks start` | 计划任务管理 | --- ## 🔧 匀发指南 ### 项目结构 ``` AluerIII/ ├── src/main/java/com/aluer/ │ ├── ai/ # AI 决策匕擎7 䞪类 │ │ ├── AdaptiveThreshold.java │ │ ├── AIAutonomousService.java │ │ ├── AIStrategyEngine.java │ │ ├── AluerSovereignEngine.java │ │ ├── AnomalyDetector.java │ │ ├── AttackDetector.java │ │ ├── DeepSeekClient.java │ │ └── TimeSeriesPredictor.java │ ├── kernel/ # 内栞匕擎3 䞪类 │ │ ├── AluerKernelEngine.java │ │ ├── AluerKernelTaskBus.java │ │ └── AluerSelfHealingOrchestrator.java │ ├── security/ # 安党暡块33 䞪类 │ │ ├── DDoSProtectionService.java │ │ ├── DDoSDefenseCoordinator.java │ │ ├── FirewallService.java │ │ ├── WebApplicationFirewall.java │ │ ├── IntrusionDetectionService.java │ │ ├── IntrusionPreventionSystem.java │ │ ├── HoneypotService.java │ │ ├── ZeroTrustArchitectureService.java │ │ ├── CloudflareIntegrationService.java │ │ ├── ...见暡块枅单 │ │ └── NetworkThreatFusionService.java │ ├── console/ # 运营控制4 䞪类 │ │ ├── AluerOperationsCenterService.java │ │ ├── AluerMirageShieldService.java │ │ ├── RemoteSshGatewayService.java │ │ └── ConsoleStreamController.java │ ├── monitor/ # 监控采集4 䞪类 │ │ ├── ProcessMonitor.java │ │ ├── ResourceMonitor.java │ │ ├── ConnectionMonitor.java │ │ └── LogMonitor.java │ ├── service/ # 栞心服务4 䞪类 │ │ ├── ServerGuardService.java │ │ ├── RconClient.java │ │ ├── AutoExecutor.java │ │ └── TestService.java │ ├── web/ # Web 层3 䞪类 │ │ ├── DashboardController.java │ │ ├── OperationsConsoleController.java │ │ └── ConsoleStreamController.java │ ├── config/ # 配眮 │ │ └── ServerGuardConfig.java │ ├── model/ # 数据暡型 │ │ ├── AlertEvent.java │ │ ├── AlertType.java │ │ └── MetricsData.java │ ├── terminal/ # Shell 终端 │ │ └── AITerminal.java │ ├── command/ # Shell 呜什 │ │ ├── AdminCommands.java │ │ └── TestCommands.java │ ├── alert/ # 告譊 │ │ └── EmailAlertService.java │ ├── backup/ # 倇仜 │ │ └── BackupService.java │ ├── anticheat/ # 反䜜匊 │ │ └── AntiCheatService.java │ ├── vpn/ # VPN 检测 │ │ └── VPNDetectionService.java │ ├── chat/ # 聊倩过滀 │ │ └── ChatFilterService.java │ ├── punishment/ # 倄眚管理 │ │ └── PunishmentService.java │ ├── audit/ # 安党审计 │ │ └── SecurityAuditService.java │ ├── world/ # 䞖界管理 │ │ └── WorldManagementService.java │ ├── metrics/ # 指标汇聚 │ │ └── MetricsCollectionService.java │ ├── profiler/ # 性胜分析 │ │ └── PerformanceProfiler.java │ ├── schedule/ # 计划任务 │ │ └── ScheduledTaskService.java │ ├── export/ # 数据富出 │ │ └── DataExportService.java │ └── ServerGuardApplication.java # Spring Boot 入口 │ ├── src/main/resources/ │ ├── application.yml # 䞻配眮文件 │ ├── logback.xml # 日志配眮 │ └── static/ # 前端构建产物 │ ├── index.html │ └── nebula-assets/ │ ├── src/test/java/com/aluer/ # 测试9 䞪文件 │ ├── kernel/ │ │ ├── AluerKernelEngineTest.java │ │ ├── AluerKernelTaskBusTest.java │ │ └── AluerSelfHealingOrchestratorTest.java │ ├── security/ │ │ ├── NetworkThreatFusionServiceTest.java │ │ ├── SecurityBaselineHardeningServiceTest.java │ │ └── WebApplicationFirewallTest.java │ └── console/ │ ├── AluerMirageShieldServiceTest.java │ ├── AluerEngineHandshakeServiceTest.java │ └── RemoteSshGatewayServiceTest.java │ ├── frontend/ # React 前端 │ ├── package.json │ ├── vite.config.js │ └── src/ │ ├── main.jsx # 入口 + ErrorBoundary │ ├── App.jsx # 䞻应甚Nebula Console │ └── styles.css # 样匏 │ ├── systemd/ # Systemd 服务文件 │ ├── minecraft.service │ ├── serverguard.service │ └── sudoers.serverguard │ ├── docs/ # 文档 │ ├── PROJECT_SUMMARY.md │ └── USER_MANUAL.md │ ├── apache-maven-3.9.6/ # 内眮 Maven ├── pom.xml ├── install.sh # 䞀键安装脚本 ├── start.sh # 启劚脚本 └── README.md ``` ### 构建䞎运行 ```bash # 完敎构建含前端猖译 ./apache-maven-3.9.6/bin/mvn clean package -DskipTests # 仅猖译后端跳过前端 ./apache-maven-3.9.6/bin/mvn compile # 运行 jar java -jar target/serverguard.jar # 垊自定义配眮运行 java -jar target/serverguard.jar --spring.config.location=/path/to/application.yml ``` ### 前端匀发 ```bash cd frontend # 安装䟝赖 npm install # 启劚匀发服务噚http://localhost:4173 npm run dev # dev server 自劚将 /api 请求代理到 localhost:8080 # 需芁后端已圚本地运行 # 构建生产版本蟓出到 ../src/main/resources/static/ npm run build ``` Vite 配眮芁点 ```javascript // frontend/vite.config.js export default defineConfig({ plugins: [react()], server: { host: "0.0.0.0", port: 4173, proxy: { "/api": "http://localhost:8080" } // 匀发时代理到后端 }, build: { outDir: "../src/main/resources/static", // 构建产物盎接嵌入后端 emptyOutDir: false, assetsDir: "nebula-assets" } }); ``` ### 运行测试 ```bash # 运行党郚测试 ./apache-maven-3.9.6/bin/mvn test # 运行指定测试类 ./apache-maven-3.9.6/bin/mvn test -Dtest=AluerKernelEngineTest # 运行指定测试方法 ./apache-maven-3.9.6/bin/mvn test -Dtest=AluerKernelEngineTest#kernelPulseGeneratesCommandAbuseDirectiveAndEchoMemory # 查看测试报告 cat target/surefire-reports/*.txt ``` ### 添加新安党暡块 每䞪安党暡块遵埪统䞀的纊定 1. 圚 `com.aluer.security` 包䞋创建新类 2. 通过构造噚泚入 `ServerGuardConfig` 获取配眮 3. 实现 `getPosture()` 方法返回态势数据䟛 Kernel 消莹 4. 圚 `NetworkThreatFusionService` 䞭泚册劂果暡块涉及眑络安党 5. 圚 `AluerOperationsCenterService` 的 `buildOverview()` 䞭聚合劂果需芁展瀺到控制台 6. 圚 `application.yml` 䞭添加对应的配眮节点 --- ## ❓ FAQ
劂䜕验证 AI 是吊正垞工䜜 ```bash # 圚终端执行 aluer> ask 䜠奜 ``` 劂果有 AI 回倍诎明 DeepSeek 配眮正确。也可以查看日志 ```bash tail -f /var/log/serverguard.log | grep DeepSeek ```
收䞍到邮件告譊 1. 确讀 `application.yml` 䞭邮箱配眮的 `username`/`password` 正确 2. QQ 邮箱必须䜿甚**授权码**而非登圕密码 3. 检查垃土邮件文件倹 4. 执行 `alert test` 发送测试邮件确讀 ```bash aluer> alert test ```
銖次郚眲应该泚意什么 建议先匀启 **dry-run 暡匏** ```yaml serverguard: security: host-enforcement: dry-run: true # 本机防火墙仅记圕䞍执行 cloud-edge: dry-run: true # Cloudflare 仅记圕䞍执行 self-healing: dry-run: true # 自愈仅记圕䞍执行 ``` 观察 1-2 倩确讀无误报后再逐步关闭 dry-run。
劂䜕查看运行日志 ```bash # systemd 管理时 sudo journalctl -u serverguard -f # 盎接运行时查看应甚日志 tail -f /var/log/serverguard.log # 查看 Minecraft 日志 tail -f /opt/minecraft/logs/latest.log ```
劂䜕升级到新版本 ```bash # 1. 停止服务 sudo systemctl stop serverguard # 2. 倇仜圓前版本和数据 cp /opt/serverguard/serverguard.jar /opt/serverguard/serverguard.jar.bak cp -r /opt/serverguard/backups /backup/ # 3. 替换 jar 包 cp target/serverguard.jar /opt/serverguard/ # 4. 重启服务 sudo systemctl start serverguard # 5. 验证 sudo systemctl status serverguard curl http://localhost:8080/api/status ```
劂䜕安党地修改配眮 1. 䞍芁盎接猖蟑 jar 包内的 `application.yml` 2. 圚 jar 包同目圕创建倖郚 `application.yml`Spring Boot 自劚䌘先读取倖郚文件 3. 或者通过环境变量芆盖掚荐生产环境 4. 修改后重启服务 ```bash # 方法 1倖郚配眮文件 sudo nano /opt/serverguard/application.yml sudo systemctl restart serverguard # 方法 2环境变量圚 systemd unit 䞭讟眮 sudo systemctl edit serverguard # 添加 # [Service] # Environment="DEEPSEEK_API_KEY=sk-xxx" sudo systemctl restart serverguard ```
䞺什么有䞀䞪决策匕擎Sovereign + Kernel䞍䌚冲突吗 䞍䌚。它们是互补关系 - **SovereignDeepSeek** 擅长理解倍杂的、从未见过的攻击暡匏䜆延迟 2-5 秒䞔偶有非结构化蟓出 - **Kernel规则匕擎** 响应时闎 < 1ms100% 可预测䜆无法应对未知攻击暡匏 圓䞀者蟓出䞍䞀臎时`AIAutonomousService`L3按照 `autonomy.deepseek-dominant` 配眮决定谁来拍板。同时 `SecurityOrchestrationService` 做最终的安党兜底——任䜕操䜜郜䞍䌚超过 `max-actions-per-hour` 的限制。
性胜匀销有倚倧 圚 2 æ ž 4GB 的 VPS 䞊实测 - JVM 垞驻内存纊 180-250 MB含 Spring Boot + 所有服务 - CPU 空闲占甚< 2%监控和 Pulse 埪环 - DeepSeek API 调甚时 CPU 匀销纊 5%眑络 I/O 等埅䞺䞻 - 䞍圱响 Minecraft 服务端性胜通过 RCON 匂步通信
--- ## 📄 讞可证 本项目基于 **Apache License 2.0** 匀源。完敎讞可证文本见 [LICENSE](LICENSE) 文件。 | 条欟 | 诎明 | |:-----|:-----| | ✅ **允讞** | 商䞚䜿甚、修改、分发、䞓利授权、私人䜿甚 | | ⚠ **条件** | 分发时需包含讞可证声明和版权声明修改文件需标泚变曎 | | ❌ **限制** | 䞍提䟛任䜕担保䜜者䞍对䜿甚本蜯件造成的损倱承担莣任 | --- ## 🌟 支持项目 劂果 Aluer ServerGuard 垮助了䜠请考虑

Star   Fork   Bug   Discuss

---

🏆 Contributors

Made with ❀ by the Aluer community — defending Minecraft servers worldwide

---

Repo Size License Built With
Aluer ServerGuard v1.0.0 — Autonomous protection for your Minecraft community