0x00 插件获取

QQ:3840032310

0x01 翼龙面板配置教程(可选)

(如果不需要一键登录则无需配置,直接看对接教程即可)

1、关闭登录接口的 CSRF 校验

让外部表单能直接 POST 登录而不被 419 拦截。

编辑文件:

面板根目录/app/Http/Middleware/VerifyCsrfToken.php

找到 $except 数组,改为:

protected $except = [
    'auth/login',
    'auth/login/*',
];

2、关闭 reCAPTCHA(如已启用)

否则空 g-recaptcha-response 会被 422 拒绝。

编辑 .env,确保有以下两行(没有就加,有就改):

RECAPTCHA_ENABLED=false
RECAPTCHA_WEBSITE_KEY=
RECAPTCHA_SECRET_KEY=

3、配置 Session Cookie 跨站点发送(最关键)

跨顶级域自动登录的核心。编辑 .env,确认/修改以下配置:

a.检查并删除重复项

grep -i "SESSION_DRIVER" .env

如果输出两行(redis 和 cookie),删掉 SESSION_DRIVER=cookie 那行,保留:

SESSION_DRIVER=redis

b.添加/修改以下配置

SESSION_SECURE_COOKIE=true
SESSION_SAMESITE=none
SESSION_DOMAIN=你翼龙面板域名,前面带上.  (eg:.cnmrnmb.online)

4、配置 CORS(允许开通系统跨域请求)

编辑 config/cors.php:

return [
    'paths' => ['api/*', 'sanctum/csrf-cookie', 'auth/login'],
    'allowed_methods' => ['*'],
    'allowed_origins' => explode(',', env('APP_CORS_ALLOWED_ORIGINS') ?? ''),
    'allowed_origins_patterns' => [],
    'allowed_headers' => ['*'],
    'exposed_headers' => [],
    'max_age' => 0,
    'supports_credentials' => true,
];

在 .env 中添加开通系统域名(多个用逗号,不要有空格,不能用 *):

APP_CORS_ALLOWED_ORIGINS=https://你的开通系统域名
SANCTUM_STATEFUL_DOMAINS=你的开通系统域名不带协议

示例:

APP_CORS_ALLOWED_ORIGINS=https://www.example.com
SANCTUM_STATEFUL_DOMAINS=www.example.com

5、清缓存(必做)

cd 你的面板根目录

# 删除缓存的配置文件
rm -f bootstrap/cache/config.php

# 清除各类缓存
php artisan config:clear
php artisan cache:clear

# 重新生成缓存
php artisan config:cache
php artisan route:cache

# 重启 PHP-FPM
systemctl restart php-fpm

6、常见报错对照表

现象/状态码

原因

解决

419

CSRF 校验失败

第一步没做或没生效

422 + recaptcha 字样

reCAPTCHA 启用

第二步没做

跳转后仍是登录页

SESSION_SAMESITE 还是 lax

第三、五、六步重做

Failed to fetch

CORS 没放行域名

第四步检查 allowed_origins

创建服务器报 422

feature_limits 为 null

模块配置里给 databases/allocations/backups 填 0

7、安全提示

  • 把 /auth/login 移出 CSRF 校验后,登录接口不再防 CSRF,但密码爆破防护仍在(Pterodactyl 自带登录限流)。

  • 如更在意安全,可给该接口加 IP 限频或只允许来自开通系统域名的请求(在 Nginx 层加 allow/deny)。

  • SESSION_SAMESITE=none 让 session cookie 在跨站请求中发送,建议保留 SESSION_SECURE_COOKIE=true 强制 HTTPS。

0x02 魔方财务对接

翼龙设置

1. 在翼龙面板中创建管理员API

首先,您需要在翼龙面板中创建一个具有完整权限的应用API:

  1. 使用管理员账户登录翼龙面板

  2. 导航至:管理面板 > 应用API > 新建

  3. 点击"生成API密钥"按钮

  4. 确保将该API的所有权限设置为"可读"和"可写"

  5. 保存并复制生成的API密钥(请妥善保管,这个密钥只会显示一次)

魔方财务设置

2. 创建服务器接口

接下来,在魔方财务系统中创建服务器接口:

  1. 登录魔方财务后台

  2. 导航至:设置 > 商品设置 > 通用接口 > 创建接口

  3. 填写以下信息:

    • 服务器模块名:选择"翼龙面板(集成版)"

    • IP地址:填写翼龙面板的URL或IP地址(例如:my.pterodactyl.panel 或 123.123.123.123)

    • 用户名:可留空或任意填写

    • 密码:可留空或任意填写

    • Hash:粘贴之前在翼龙面板生成的API密钥

  4. 点击"提交"保存接口配置

3. 创建接口组

创建接口后,您需要将其添加到接口组中:

  1. 点击"接口分组"选项卡

  2. 点击"创建新组"按钮

  3. 为接口组命名(可根据您的需求自定义名称)

  4. 选择刚刚创建的服务器接口

  5. 点击"提交"保存接口组设置

创建商品与配置

4. 创建商品

完成接口配置后,您可以创建使用翼龙面板的商品:

  1. 导航至:商品管理 > 添加商品

  2. 选择"自助开通"类型

  3. 在"接口分组"中选择刚刚创建的接口组

  4. 设置"开通方式"为"付款后自动开通"

  5. 根据需要填写其他商品信息

5.配置产品配置

下表列出了所有支持的配置参数:

参数名称

传递类型

单位

用途

MEM_limitations

整数型

GB

运行内存分配

SWAP_limitations

整数型

GB

交换内存分配

CPU_limitations

整数型

%

中央处理器限制(100%=1核)

DISK_limitations

整数型

GB

磁盘空间分配

piece

整数型

-

IO权重(块IO权重)

position

整数型

-

位置标识

node

整数型

-

节点ID

nests

整数型

-

巢ID(预设组ID)

egg

整数型

-

蛋ID(预设ID)

backups

整数型

-

备份数量

databases

整数型

-

数据库数量

allocations

整数型

-

网络分配限制

dedicated_ip

布尔型

-

独立IP(true=使用,false=不使用)

servertype

字符串

-

巢和蛋的组合(格式:nestID,eggID,例如:1,7)

__Additional_allocation_port

字符串

-

为变量分配端口(逗号分隔多个变量)

__Additional_port

整数型

-

额外分配的端口数量

servertype 参数

此参数比较特殊,它是nests和egg的组合,用于在开通时选择不同类型、不同游戏服务端:

  1. 传递格式:nestID,eggID

  2. 例如:1,7 表示在nestID为1的预设组中选择eggID为7的预设

dedicated_ip 参数

此参数用于控制是否为服务器分配独立IP:

  • true:使用独立IP

  • false:不使用独立IP