
设备锁定
一款支持设备级封禁的模组,让服务器管理更加便捷。
查看大图概述
Device Lock 是一个客户端-服务端 Fabric 模组,用于实现设备级封禁。客户端收集硬件设备标识符并将其上报给服务器,服务器可按设备 ID 进行封禁。被封禁的设备将被拒绝访问服务器。同时包含虚拟机检测功能——虚拟机客户端的连接将被直接拒绝。
> 注意:此模组为双端必需模组。未安装模组的客户端将被拒绝连接。
必需依赖:Fabric-api
服务器管理命令
所有命令都需要权限等级 3(OP)。
1. 封禁设备
/device lock <deviceId> [reason] [duration]deviceId:设备 ID(32 位十六进制字符串)reason:封禁原因(可选,支持多个单词;包含空格时需加引号)duration:封禁时长(天)(可选;尾部的数字会被自动识别;省略则为永久封禁)
示例:
/device lock ABC123DEF456 # 永久封禁,无原因
/device lock ABC123DEF456 cheating # 永久封禁,含原因
/device lock ABC123DEF456 using xray 30 # 封禁 30 天,含原因
/device lock ABC123DEF456 "using X-Ray" 7 # 封禁 7 天,原因含空格并加引号2. 解封设备
/device unlock <deviceId>3. 通过玩家 UUID 查询设备 ID
/device client <UUID>返回指定 UUID 最近使用的设备 ID,以及封禁状态。
4. 查看设备登录历史
/device check <deviceId>列出所有曾使用此设备登录过的玩家(昵称、UUID、最后登录时间),以及该设备的封禁状态。
5. 列出所有设备
/device list列出所有已知的设备 ID、封禁状态及相关玩家数量。
数据存储
服务器数据存储在 mods/DeviceLock/ 目录下:
bans.json— 封禁记录(设备 ID、原因、封禁时间、到期时间)devices.json— 设备-玩家映射(设备 ID、玩家 UUID、玩家昵称、最后登录时间)
客户端设备标识符收集
客户端收集以下硬件信息,并通过 SHA-256 生成 32 位设备 ID:
- 物理网络接口 MAC 地址
- CPU 信息(品牌、型号)
- 主板 / 系统序列号
- 操作系统及架构
设备 ID 会在本地缓存,以确保跨会话的稳定性。
虚拟机检测
检测启发式规则(任一匹配即判定为虚拟机):
- CPU 品牌字符串包含 VMware / VirtualBox / QEMU / KVM / Hyper-V / Xen / Parallels 等
- MAC 地址 OUI 属于已知虚拟机厂商
- 系统产品名称 / BIOS 厂商包含虚拟化标识
- 操作系统特定信号(Linux hypervisor 标志、macOS ioreg、Windows 注册表)
断开连接消息
- 虚拟机:“此服务器禁止使用虚拟机”
- 被封禁设备:显示封禁原因、封禁时间和到期时间
- 未安装模组:提示用户安装 Device Lock
正在加载版本记录…




正在加载评论…
评论在新手盒子客户端中发表,这里同步展示。