VerifyMC

现代Minecraft白名单插件:网页注册、电子邮件验证、管理员审核、多主题、i18n。

资源图片
# 🛡️ VerifyMC [简体中文](https://kitemc.com/zh/docs/verifymc/guide/v1)) | English | [📚 官方文档](https://kitemc.com/docs/verifymc/) --- ## 🚀 简介 **VerifyMC** 是一个轻量级、强大的 Minecraft 服务器白名单管理插件。它支持基于 Web 的注册、自动/手动审核、封禁、主题切换、AuthMe 集成和高度自定义,帮助您轻松保护和管理服务器社区。 --- ## 📝 主要特性 1. 🖥️ **Web 注册 & 审核**: 玩家可以通过网页提交白名单申请;管理员可以在线审核、封禁和管理用户。 2. 🔒 **自动/手动审核**: 支持自动批准和手动管理员审核,以适应不同的服务器需求。 3. 🚫 **封禁系统**: 封禁有问题的玩家以确保服务器的安全。 4. 🎨 **多主题 & 自定义前端**: 内置 `default`/`glassx` 主题,轻松切换主题,并支持自定义上传(npm 构建为静态文件)。 5. 📨 **邮箱验证 & 域名白名单**: 集成 SMTP 邮箱验证,支持邮箱域名白名单(默认主流域名,可自定义和切换)和别名限制。 6. 🌐 **多语言支持**: Web UI 和插件消息都支持英语和中文。 7. ⚙️ **高度可定制**: 设置每个邮箱的最大账户数、玩家 ID 正则表达式、白名单绕过 IP 以及更多。 8. 🪶 **轻量级**: 插件 jar 文件小于 6MB,集成多个功能,运行效率高。 9. 🔄 **自动更新 & 备份**: 配置文件自动升级,每次更新前进行完整备份。 10. 🧩 **灵活的白名单模式**: 支持 Bukkit 原生白名单同步、插件自管理,现在还支持外部 MySQL 存储和自动迁移。 11. 💾 **MySQL & 数据文件存储**: 轻松在本地文件和 MySQL 存储之间切换;支持自动迁移和同步。 12. 📝 **审计日志多存储**: 审计日志可以存储在文件或 MySQL 中。 13. 🌍 **自定义国际化**: 自动加载任何 messages_xx.properties 文件;用户可以添加任何语言。 14. 🔐 **AuthMe 集成**: 与 AuthMe 插件无缝集成,用于密码管理、自动注册和用户身份验证。 --- ## 🖼️ 截图 (Glassx 主题) ### 首页 ![Home Glassx](https://verifymc.cn-nb1.rains3.com/docs/screenshot-home-glassx.png) ### 注册页面 ![Registration Glassx](https://verifymc.cn-nb1.rains3.com/docs/screenshot-register-glassx.png) ### 管理员面板 ![Admin Glassx](https://cn-nb1.rains3.com/verifymc/docs/screenshot-admin-glassx.png) > 想看 Default 主题?[点击这里查看 Default 主题截图.](https://kitemc.com/docs/verifymc/guide/default) --- ## 🛠️ 技术栈 - Java (Bukkit/Spigot/Paper 插件) - 前端:Vue3 + Tailwind CSS (支持自定义主题) - WebSocket 实时通信 - 邮箱服务:SMTP --- ## 📊 Bstats ![Bstats](https://bstats.org/signatures/bukkit/verifymc.svg) --- ## 📦 安装 & 配置 1. 下载最新的 `VerifyMC.jar` 文件,并将其放入服务器的 `plugins` 目录中。 2. 启动服务器以自动生成配置文件,然后按需编辑 `config.yml` (查看完整的示例配置如下)。 3. 重启服务器并访问 `http://your_server_ip:8080` 以访问管理员面板。 ```yml # ---------------------------------------- # 通用设置 # ---------------------------------------- # 全局语言设置。影响插件消息和 Web UI。 (例如,'zh', 'en') language: zh # 启用详细控制台日志以进行故障排除。 debug: false # ---------------------------------------- # Web 服务器 # ---------------------------------------- # Web 接口的端口。 web_port: 8080 # 在 Web 界面上显示的服务器名称。 web_server_prefix: '[ 名称 ]' # ---------------------------------------- # 验证 & 白名单 # ---------------------------------------- # 支持的身份验证方法。目前仅支持 'email'。 auth_methods: - email # 可以链接到单个邮箱地址的最大游戏帐户数。 max_accounts_per_email: 2 # 白名单模式:'bukkit' (与服务器的 whitelist.json 同步) 或 'plugin' (使用内部数据库)。 whitelist_mode: bukkit # 当在 'plugin' 模式下,向非白名单玩家显示的注册 URL。 web_register_url: https://domain.com/ # ---------------------------------------- # 注册 # ---------------------------------------- # 如果为 true,新的用户注册将被自动批准。如果为 false,则需要管理员手动批准。 register: auto_approve: false # ---------------------------------------- # 用户 & 安全 # ---------------------------------------- # 验证玩家名称的正则表达式。 username_regex: "^[a-zA-Z0-9_-]{3,16}$" # 如果为 false,仅按大小写不同的用户名 (例如,"Player" 和 "player") 被视为相同。 username_case_sensitive: false # 可以加入服务器而不需白名单的 IP 地址列表。 whitelist_bypass_ips: - 127.0.0.1 # 用于访问 Web 界面管理员面板的密码。 admin: password: your_custom_password # ---------------------------------------- # 前端 (UI) # ---------------------------------------- frontend: # Web 界面中的视觉主题。选项:'default', 'glassx'。 theme: glassx # 徽标 URL。可以是 Web 链接或本地文件路径 (例如,'/logo.png')。 logo_url: /logo.png # 在主页上显示的提示消息。 announcement: 欢迎来到 [ 名称 ]! # ---------------------------------------- # 邮箱 (SMTP) # ---------------------------------------- smtp: host: smtp.qq.com port: 587 username: your_email@qq.com password: your_email_password from: your_email@qq.com enable_ssl: true # ---------------------------------------- # 白名单同步设置 (针对 bukkit 模式) # ---------------------------------------- # 如果为 true,会自动将 whitelist.json 中的更改同步到插件的数据库。 whitelist_json_sync: true # 如果为 true,会自动将批准的用户添加到 whitelist.json,并从封禁/删除的用户中删除。 auto_sync_whitelist: true # 如果禁用 'bukkit' 模式,此设置 (如果为 true) 会从 whitelist.json 中清理玩家。 auto_cleanup_whitelist: true # ---------------------------------------- # 自动更新 & 备份 # ---------------------------------------- # 如果为 true,插件更新时会自动将新设置添加到您的 config.yml 文件中。 auto_update_config: true # 如果为 true,会自动更新语言文件。 auto_update_i18n: true # 如果为 true,会自动更新邮件模板。 auto_update_email: true # 如果为 true,会自动更新主题文件。 auto_update_static: true # 如果为 true,会在任何自动更新之前创建插件数据文件夹的完整备份。 backup_on_update: true # ---------------------------------------- # 邮箱注册限制 # ---------------------------------------- # 启用邮箱域名白名单 enable_email_domain_whitelist: true # 启用邮箱别名限制 (例如,禁止 user+xxx@gmail.com) enable_email_alias_limit: false # 邮箱域名白名单。留空以使用默认主流域名 email_domain_whitelist: - gmail.com - 163.com - 126.com - qq.com - outlook.com - hotmail.com - icloud.com - yahoo.com - foxmail.com # ---------------------------------------- # 存储 & 数据迁移 # ---------------------------------------- storage: # 存储类型,选项:data (本地文件), mysql (外部数据库) type: data # 在切换 storage.type 时,是否自动将数据从原始存储迁移到新存储 (例如,data→mysql 或 mysql→data) auto_migrate_on_switch: false mysql: host: localhost port: 3306 database: verifymc user: root password: yourpassword # ---------------------------------------- # Authme 集成配置 # ---------------------------------------- authme: # 是否启用 Authme 集成功能 enabled: true # 是否需要在 Web 注册期间要求输入密码 require_password: true # 批准后是否自动注册到 Authme auto_register: false # 用户删除时是否自动从 Authme 注销 auto_unregister: false # 密码正则表达式模式,默认要求至少 6 个字符 password_regex: "^[a-zA-Z0-9_]{3,16}$" ``` > ❤️ 如果您喜欢这个项目,请 Star、分享并提供反馈!