26.11.6-RC · Paper 1.12.2

InTheNameOfLinux

SERVER MANAGEMENT


以 Linux 之名,守护你的服务器
身份验证 · 封禁 · 举报 · 协管

8 大模块 · 28 条子命令 · 24 个权限节点

8大功能模块
28条子命令
24个权限节点
46项可配置
01

26.11.6 更新亮点

本版三件事:非法 NBT 从「事后扫描」升级为「全链路拦截」、 封禁页改为登录前抢先拦截、 以及 DuelArena 双 OP 决斗豁免。

🛡 非法 NBT 全链路拦截

以前只有「周期扫描」—— 玩家拿到非法物品后,要等下一轮扫描才会被收走。 26.11.6 把物品流动的每一个入口都堵上了。

  • 玩家 /give、/replaceitem 直接取消命令
  • 掉落物一生成就判定(ItemSpawnEvent)
  • 拾取 / 容器取出 / 创造复制 / 切到手上 / 出手 全部前置判定
  • 交互后 2 tick 补扫 —— 覆盖命令方块的 /give
判定标准不变
  • 附魔等级 > max-enchant-level
  • AttributeModifiers 超上限

命令拦截与背包扫描共用同一套判定,普通物品、改名、Lore、正常附魔一律放行。

🚫 自定义封禁页(登录前拦截)

封禁仍会自动同步到原版 banned-players.json, 管理面板照样看得见;但玩家看到的不再是原版那句 You are banned from this server。

  • 在 AsyncPlayerPreLoginEvent 抢先拦截(早于原版检查)
  • 显示完整封禁页:服务器名 / 理由 / 解封时间 / 申诉群
  • 永久、临时、IP、历史封禁全部覆盖
  • 其它插件已经拦下的不抢
玩家看到的样子
══════════════════
  Nalxer MC
══════════════════
  您已被临时封禁账户/IP地址
  封禁理由:<你的理由>
  解封时间:2026-11-02 01:18:26
  如果您有任何异议,
  请到申诉群 925200745 申诉
══════════════════

⚔ DuelArena 双 OP 决斗豁免

两个 OP 打剑技 PVP 时,硬性清理会把双方装备清空,打起来毫无意义。 现在改成「不清,但摊开说」。

  • 双方都是 OP 且正在对局 → 不清理非法 NBT
  • 每 30 秒互相提醒对方持有的非法物品与原因
  • 决斗结束立即恢复正常清理
  • OP 打普通玩家 → 不豁免
豁免边界
  • 配置名单玩家:全路径放行,不清理也不提醒
  • 豁免玩家丢出的物品:不会被吞掉
  • 竞技场里的普通玩家:照常拦截
02

核心功能

从身份验证到物品安全,八个模块覆盖服务器日常管理的主要环节。

🔐 身份验证

聊天栏输密码,服务端日志零痕迹。

  • 密码最短 6 位
  • 失败 3 秒冷却,5 次锁定 300 秒
  • 重启后锁定状态保留
  • 旧 SHA-256 哈希在登录时自动升级
登录相关命令
  • /login <密码> — 登录
  • /register <密码> <确认> — 注册
  • /changepw — 修改密码

🚫 封禁管理

永久封禁、临时封禁、IP 封禁三套体系。

  • 封禁历史可追溯,到期自动解封
  • 支持 IP 封禁与解封
  • 同 IP 账号可一并查询
功能封禁
  • banmsg — 禁言
  • banmove — 禁止移动
  • banblock — 禁用方块交互
  • banall — 全面封禁
其余模块
📢

举报系统

提交后按被举报人身份智能分流,处理结果回执给举报人。

👮

协管体系

给协管有限的管理权限,时长上限 7 天,越权操作被拦截。

🛡️

玩家保护

可拦截针对保护对象的命令,防止误伤与恶意操作。

🔗

插件联动

读取 LinuxTitle 的头衔状态,并联动 FakePlayerPlugin 识别假人。

💾

数据持久化

脏标记 + 定时批量写盘,重启后封禁与锁定状态都不丢。

🖱️

交互式帮助

主页与帮助页的命令可点击直接执行,不用手打。

03

封禁系统

账号封禁与功能封禁分开,处罚可追溯、可到期自动解除。

账号封禁

  • /linux ban <玩家> — 永久封禁
  • /linux tempban <玩家> <时长> — 临时封禁
  • /linux banip <IP> — IP 封禁
  • /linux unban / unbanip — 解封
时间格式
  • 1d — 1 天
  • 12h — 12 小时
  • 30m — 30 分钟
  • 可组合,如 1d12h
功能封禁
命令封禁内容解封
/linux banmsg禁言 —— 无法发送聊天/linux unbanmsg
/linux banmove禁止移动/linux unbanmove
/linux banblock禁用方块交互/linux unbanblock
/linux banall全面封禁(以上全部)/linux unbanall
历史查询

/linux history <玩家> 可查询该玩家的完整封禁记录, 包含操作人、时间、原因与到期时间。

04

举报系统 NEW

玩家提交举报,插件按被举报人身份自动决定通知谁,处理结果回执给举报人。

提交流程

  • 玩家提交 /linux report <玩家> <原因>
  • 提交后 24 小时冷却,期间不接受重复举报
  • 智能分流:根据被举报人身份决定通知对象
  • 处理并通知:接受或驳回,举报人收到结果
分流规则
  • 被举报普通玩家 → 通知在线协管与管理员
  • 被举报协管 → 直接通知服主
  • 服主 → 同步所有处理结果
  • 服主上线 10 秒后自动推送待处理举报

离线消息缓存与批量清理

玩家离线期间的举报处理结果也会缓存,上线后自动推送。 缓存上限 100 条,超出丢弃最早的。

  • /linux report list — 查看待处理举报
  • /linux report info <编号> — 查看详情
  • /linux report clear — 批量清理已处理举报
为什么要有冷却

防止有人连点刷屏占用管理资源。 24 小时内对同一玩家只能提交一次, 处理完才能再次提交。

05

协管权限体系

协管能做事,但做不了过头的事 —— 权限边界由插件强制,不靠自觉。

协管可用

  • 禁言 / 禁移动 / 禁交互 / 全面封禁
  • 以及 4 个对应的解封命令
  • 处理举报(查看 / 接受 / 驳回)
  • 查询玩家资料与封禁历史

协管不可用

  • 不能账号封禁、不能 IP 封禁
  • 不能清空举报记录
  • 不能重载配置、不能看审计日志
  • 时长必须写明,最长 7 天
界面分流

帮助菜单会按身份展示不同目录:协管看不到自己不能用的命令, 普通玩家只看得到自己的命令。这样不需要额外培训,看菜单就知道能做什么。

06

命令列表

主命令 /linux,共 28 条子命令。

玩家命令
命令说明
/login <密码>登录服务器
/register <密码> <确认>注册账号
/changepw修改密码
/linux report <玩家> <原因>提交举报
管理命令
命令说明最低身份
/linux ban / tempban / banip账号封禁管理员
/linux unban / unbanip解封管理员
/linux banmsg / banmove / banblock / banall功能封禁协管
/linux unbanmsg 等 4 条解除功能封禁协管
/linux report list / info查看举报协管
/linux lookup <玩家>查询维度与坐标协管
/linux history <玩家>查询封禁历史协管
/linux nbtview手动扫描非法 NBT管理员
/linux report clear清理举报记录服主
/linux reload重载配置服主
07

技术亮点

密码怎么存、缓存怎么做、并发怎么处理 —— 这几个地方决定了插件能不能长期跑。

🔒 安全

  • PBKDF2-HMAC-SHA256 · 12 万次迭代
  • 旧 SHA-256 哈希在登录时自动升级
  • 常量时间比较,防时序攻击
  • 聊天栏输密码,服务端日志零痕迹
  • 防爆破:冷却 + 锁定 + 持久化
  • 权限节点与身份双重校验
为什么用 PBKDF2

服务器密码库一旦泄露,弱哈希可以被离线暴力破解。 PBKDF2 的 12 万次迭代让每次尝试都要付出计算代价, 大幅提高破解成本。

⚡ 性能 · 🧵 并发 · 🛠️ 健壮

  • 多级缓存(ConcurrentHashMap),避免频繁读盘
  • 脏标记 + 定时批量写盘,减少 I/O 次数
  • 异步处理举报推送与消息缓存
  • 异常不中断主流程,单点失败不影响其它功能
  • 配置缺失项自动补全并写回
写盘策略

每次改动只标记「脏」,由定时任务批量落盘。 这样频繁操作(比如连续封禁)不会每次都触发磁盘写入, 同时重启也不会丢数据。

08

角色与权限

三级身份,权限逐级放大,每条都有明确边界。

👮

协管

有限管理权限,适合日常巡查。

  • 禁言 / 禁移动 / 禁交互 / 全面封禁
  • 处理举报(查看 / 接受 / 驳回)
  • 必须写明时长,最长 7 天
  • 不能账号封禁、不能清空举报
🛡️

管理员(非服主)

完整处罚权限,但摸不到配置与审计。

  • 账号封禁 / 临时封禁 / IP 封禁 / 解封
  • 查询玩家资料、封禁历史、同 IP 账号
  • 处理并清理举报
  • 不能重载配置、不能看审计日志
👑

服主(Linux)

全部权限,包括配置与审计。

  • 以上全部权限
  • 重载配置
  • 查看审计日志与状态总览
  • 清空举报记录
09

感谢列表

非法 NBT 检测功能原本是一个独立插件 BanNbt, 由 星白喵喵 提供源码。

现已整体合并进 InTheNameOfLinux: 检测阈值、抗性提升压缩等判定规则均沿用其原始实现, 并在此基础上补充了配置化豁免名单、世界豁免、饰品兼容与悬浮详情播报。 感谢他的贡献。

InTheNameOfLinux

以 Linux 之名,守护你的服务器。