云端模块
ArcartX-Suite 云端平台提供加密模块分发功能。
前提条件
- 已注册 ArcartX-Suite 云端账号 — 在 ArcartX-Suite 云端平台 用你的 QQ 注册服主账号。
- 已获得模块授权 — 免费模块自动发放;付费模块需购买;福利模块按累计消费领取(见下文)。
- 服务器已绑定云端 — 首次使用需要把服务器和云端账号绑定。
服务器端配置
编辑 plugins/ArcartX-Suite/config.yml,在最外层添加 cloud 节:
cloud:
qq: "你的QQ号"
apiKey: "验证密匙"
server-code: "" # 留空即可,首次绑定成功后由云端自动回填,请勿手动修改
debug: false| 字段 | 必填 | 说明 |
|---|---|---|
qq | ✅ | 注册云端平台时用的 QQ 号 |
apiKey | ✅ | 从云端后台「设置 → 验证密匙」复制的 API 密钥 |
server-code | ❌ | 服务器码,绑定成功后自动写回;昵称在云端「我的服务器」页面编辑 |
debug | ❌ | 调试日志,生产环境保持 false |
配置安全
apiKey 仅用于服务器与云端通信,无法登录管理后台,与登录密码完全分离。但 config.yml 仍以明文存储,建议:
- 设置
plugins/ArcartX-Suite/目录权限为仅服务器进程可读。 - 不要在公共仓库或聊天群中分享此配置文件。
- 如怀疑泄露,登录云端后台重新生成密匙。
云端平台服主使用流程
登录 cloud.021209.xyz 后,按下面顺序操作:
1. 仪表盘
首页仪表盘展示:
- 当前账号下绑定的服务器数量
- 已装备的模块总数
- 各服务器的在线状态(通过心跳判断)
- 最近的操作日志
2. 我的服务器
左侧菜单「我的服务器」可查看所有绑定到此 QQ 的服务器:
- 服务器码(
serverCode) - 服务器昵称(可编辑)
- 已装备的模块列表
- 最近心跳时间
多服管理
一个 QQ 可以绑定多个服务器,每个服务器有独立的 serverCode。装备模块时需要分别给每个服务器勾选。
3. 装备模块
「装备模块」页面列出你已获得授权的全部模块:
- 左侧选择要操作的服务器
- 右侧勾选要装备(启用)或取消装备的模块
- 点击「保存」
保存后执行 /axs sync 立即同步装备列表,或重启服务器(或等待自动令牌刷新),服务器会重新拉取模块列表并下载新装备模块。
免费模块自动装备
免费模块在服务器首次绑定时已自动装备。若后续取消装备,可回到此页面重新勾选。
福利模块与授权份额
以下模块为福利模块,按累计消费在云端领取;每次领取会发放固定数量的授权份额(每份可装备到一台服务器):
| 模块 | 领取条件 | 授权份额 |
|---|---|---|
| Chat | 任意消费 | 5 |
| Tab | 累计消费满 ¥100 | 5 |
| EntityTracker | 累计消费满 ¥200 | 5 |
在「装备模块」页面可查看各模块 已用 / 共 N 份 席位。多服网络需为每台子服分别装备,并确保 config.yml 中对应模块 enabled: true。
4. 下载 ArcartX-Suite
「下载 ArcartX-Suite」页面提供:
- 最新 bootstrap jar 下载(用于首次安装)
- 核心本体
.axb的 manifest 信息 - 各版本 checksum 校验值
首次绑定流程
配置好 cloud.qq 和 cloud.apiKey 后,重启服务器即可:
[ArcartX-Suite-Cloud] 正在向云端绑定服务器...
[ArcartX-Suite-Cloud] 服务器绑定成功,服务器码: XXXXXXXX
[ArcartX-Suite-Cloud] 模块令牌已刷新,授权模块: N
[ArcartX-Suite-Cloud] 模块 xxx 已加载绑定成功后,服务器会:
- 向云端申请唯一服务器码(如
XXXXXXXX) - 获取当前已授权的模块列表
- 逐个下载
.axb加密模块并自动解密加载
自动续期
模块令牌 24 小时过期。服务器会自动刷新,无需手动操作。令牌过期期间不影响已加载的模块运行,但新模块无法下载。
模块更新
云端管理员上传新版本后,服务器在重启或令牌刷新周期(约 24 小时)内会自动下载最新版本。无需手动替换 jar。
如果你想立即更新,可以:
/axs sync— 从云端同步授权/装备列表(新装备或取消装备的模块会立即加载/卸载)/axs update <模块ID>— 拉取指定云端模块的最新.axb并热重载/axs update all— 更新所有已加载的云端模块- 或直接重启服务器
详见 命令速查 → 云端模块管理。
常见问题
绑定失败:USER_NOT_FOUND / INVALID_CREDENTIALS
- 检查
cloud.qq和cloud.apiKey是否与云端平台「设置 → 验证密匙」中复制的一致 apiKey区分大小写,且与登录密码不同
未装备任何云端模块
- 授权不等于装备。登录云端平台确认模块已勾选到服务器上
- 免费模块在首次绑定时自动装备,但后续取消后不会自动恢复
下载成功但加载失败
- 检查服务器 Java 版本(推荐 Java 17+)
- 检查
cloud.021209.xyz能否正常访问(海外服务器可能需要代理) - 查看日志中
[ArcartX-Suite-Cloud] 解密模块 xxx 失败提示:可能是 native 库未正确加载,重新安装 ArcartX-Suite 插件
服务器码丢失
绑定成功后,服务器码会自动写回 config.yml 的 cloud.server-code 字段。若因配置重置丢失,只需保留 qq 和 apiKey 重新启动即可,云端会返回同一个服务器码。
多服共用同一个 QQ
一个 QQ 可以绑定多个服务器,每个服务器有独立的 serverCode。装备模块时需要分别给每个服务器勾选。
模块签名验证(可选安全加固)
若你使用第三方/私人定制本地 Jar,且作者提供了 Ed25519 公钥,可在 config.yml 中配置:
module-signature-public-keys:
- "Base64编码的Ed25519公钥1"
- "Base64编码的Ed25519公钥2"配置后,所有待加载模块的 module.yml 必须带有效 signature,否则拒绝加载(含官方云端模块,若其未签名也会失败)。
完整说明
签名规则、公钥格式、与云端/跨服签名的区别、开发者如何生成密钥,见 模块 Ed25519 签名。
.axb 加密模块加载流程
云端下载的模块以 .axb 格式存储(AES 加密),加载时自动解密:
- 服务器向云端申请模块令牌(24 小时有效)
- 云端返回已装备模块列表及加密
.axb数据 - ArcartX-Suite 使用 native 安全库解密
.axb,在内存中还原为 jar 字节码 - 通过
ByteArrayModuleClassLoader在内存中直接加载,不落地磁盘 - 模块启用时执行正常的
AXSModule.onEnable()生命周期
native 库依赖
解密 .axb 需要 ArcartX-Suite 内置的 native 库(ArcartX-Suite-native.dll / libaxs-native.so)。若出现解密失败,请确认:
- 服务器操作系统为 Windows 或 Linux(x86_64)
- ArcartX-Suite jar 内
native/目录包含对应平台的库文件 - 无其他插件冲突占用 native 符号
技术细节见 系统架构。