# 🛡️ 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 主题)
### 首页

### 注册页面

### 管理员面板

> 想看 Default 主题?[点击这里查看 Default 主题截图.](https://kitemc.com/docs/verifymc/guide/default)
---
## 🛠️ 技术栈
- Java (Bukkit/Spigot/Paper 插件)
- 前端:Vue3 + Tailwind CSS (支持自定义主题)
- WebSocket 实时通信
- 邮箱服务:SMTP
---
## 📊 Bstats

---
## 📦 安装 & 配置
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、分享并提供反馈!