EzLogin

EzLogin

EzLogin是一款独一无二的登录插件,几乎包含了你能想到的所有功能。

EzLogin

一个针对 NeoForge 1.21.1 的强大认证模组


什么是 ezLogin?

ezLogin 是一个轻量级但功能完备的认证模组,专为离线模式与私有 NeoForge 服务器设计。它强制玩家在能够与世界互动之前进行注册与登录——从而防止账户因知晓用户名而被盗用。

该模组仅需服务端安装——客户端无需安装,但将其包含在整合包中也是安全的。


✅ 功能特性

命令

  • /register [密码] [确认密码] — 创建新账户。成功后自动登录。
  • /login [密码] — 加入服务器后进行身份验证。
  • /logout — 手动结束当前会话。
  • /changepassword [旧密码] [新密码] [确认密码] — 登录后修改密码。

未认证时的保护

  • 失明效果 — 玩家在登录前处于失明状态,无法看到世界。
  • 移动锁定 — 玩家在认证前无法移动或探索。
  • 物品掉落保护 — 玩家无法丢弃物品。任何尝试丢弃的物品都会被无声地返回物品栏,并完整保留所有数据——适用于模组物品、NBT、附魔等你所有内容。
  • 聊天受限 — 玩家在登录前无法发送聊天消息。
  • 命令受限 — 除 /login 和 /register 外,所有命令在认证前均被阻止。

安全性

  • 恒定时间比较 以防止计时侧信道攻击。
  • 最大登录尝试次数 — 玩家在多次失败尝试后会被踢出。
  • 登录超时 — 玩家若未在可配置的时间窗口内完成认证则被踢出。
  • 会话超时 — 空闲会话可自动过期。
  • IP 自动登录 — 可选功能,允许来自同一 IP 地址的回归玩家自动认证。

离线服务器支持

  • 抑制原版当玩家重新连接时,离线服务器错误发送的 “你从另一个位置登录” 断开连接消息。

管理员命令(需要 OP 等级 2)

  • /ezlogin setpassword [玩家] [新密码] — 强制重置玩家密码。
  • /ezlogin unregister [玩家] — 完全删除玩家账户。
  • /ezlogin forcelogin [玩家] — 强制认证玩家。
  • /ezlogin forcelogout [玩家] — 强制取消玩家认证。
  • /ezlogin info [玩家] — 查看注册日期、最后登录时间、IP 及登录次数。
  • /ezlogin stats — 查看总注册玩家数及当前在线玩家的认证状态。

⚙️ 配置文件

配置文件在首次启动时生成于:
config/ezlogin/ezlogin-server.toml

可配置选项包括:

  • 最小和最大密码长度
  • 踢出前的登录超时时间
  • 踢出前的最大失败登录尝试次数
  • 会话空闲超时时间
  • 分别开关失明、移动锁定、聊天限制、命令限制
  • 基于 IP 的自动登录,带可配置的有效期窗口

🔧 系统要求

  • Minecraft 1.21.1
  • NeoForge 21.1.227 或更高版本
  • Java 21
  • 无需客户端安装

📋 兼容性

  • 专为离线模式服务器和私有局域网/托管服务器设计
  • 可与其他模组共存运行——物品掉落保护完整保留模组物品的 NBT 数据
  • 可安全地包含于整合包中(客户端安装为可选)