JPremium 是一个 BungeeCord 插件,它不能单独的在一个 Spigot 等服务端上使用!该插件只能通过 MySQL 储存登录数据!
该插件是付费插件,如果你没有充足的资金支持,可以考虑另外一个 LibrePremium 免费插件,该插件开源且大部分功能仿本插件,我不是服主,并不适用任何登录插件,在此只介绍。
LibrePremium | Proxy Authorization Plugin | Automatic Login | 2FA | SpigotMC - High Performance Minecraft
请勿于帖内向我询问任何问题,我不知道。
» 特性列表
正版玩家免密登录
正版玩家ID保留(正版玩家的ID盗版玩家无法使用)
正版改名密码不丢失
基岩版玩家适配
同IP短时间内免密登录
邮箱密码找回
反机器人登录(最新版本已被移除)
图形验证码验证
网站注册
BossBar显示登录剩余时间
一服崩溃后所有玩家传送到主服,不会被踢
跳转服:需要登录的玩家需要进入跳转服以登录,正版玩家和基岩版玩家可以直接登录完成进入大厅服
反直接进Spigot子服,令牌连接验证
密码加密储存
二步验证
支持从AuthMe等多种登录插件直接转换登录数据
支持MC 1.8-1.19
» 首次安装
1.下载 .jar 插件到你的 BungeeCord和各个子服(只支持Spigot) 的 plugins 文件夹中
2.开启你的服务器,服务器开启后会被关闭,不要慌张,这是正常现象!
3.打开 BungeeCord 端的 plugins/JPremium/configuration.yml 文件,你会发现 accessToken 选项,在它的两个'符号中间填写你想要给你的服务器登录系统设置的 Token 值。它应该只能包含 字母和数字,长度大于16。你可以理解就是普通的的登录密码,只不过长度必须大于16.
敲黑板:Token 是 非常非常重要的东西,千万不要把它丢给你的玩家等等,一旦泄露,你的登录系统将有可能存在安全漏洞。
4.在 同样的文件中 填写好 limboServerNames 和 mainServerNames 两个选项。
敲黑板:limboServer 概念是 跳转服,也跟很多人认为的登录服差不多。但是,JPremium是在BungeeCord上完成玩家登录操作,无论玩家首先进去的是哪个服务器,都会被要求登录。所以,登录操作不仅仅在传统的登录服上可以进行,其他任何的子服都可以,跳转服的好处是让玩家可以”专心的完成登录操作“,不会被游戏服里面的东西所打扰。
mainServer 概念是 大厅服,也就是你的服务器各种子服的传送中心。是玩家在 跳转服 完成登录操作后所被传送的地方。
如果你有多个跳转/大厅服,像这样格式填写即可:[服1, 服2, 服3],千万不要用换行加”-“符号进行,插件不支持这种格式填写!
5.在你的 所有子服 的 JPremium 配置文件中找到 accessToken 选项,填写与你 BC 服中该选项一样的内容。
6.默认情况下BC的配置文件是开启注册验证码的,这意味着玩家在注册时需要子服的 JPremium 开启给玩家发送验证码功能,在子服的plugins/JPremium/configuration.yml 文件中找到 captchaMapSlot 选项,将其后面的0修改为 1-9 中间任意值均可。这代表验证码地图将会在玩家对应物品栏的第X格出现。如果是0,则代表不出现,这样玩家就无法完成验证码注册操作。
» 旧登录插件数据转换
如果你之前使用的不是 JPremium,那么这个插件支持将你以前的登录插件数据进行转换。
1.完成上面的 首次安装 所有操作,确保插件配置无误正常,登录系统已经可以正常工作。
2.下载下面的这个插件到 BC 服的 plugins 文件夹中:
https://github.com/Jakubson/JPremiumCleared/blob/master/assets/Converter.jar
如果是从本地数据转换,还需要安装下面这个插件到BC服中:
https://www.spigotmc.org/resources/sqlite-for-bungeecord.57191/
3.打开所生成的 configuration.yml 文件,下面我将为你介绍如何使用该插件的配置文件:
# 在从JPremium旧版转换数据时,你需要保证该选项与你旧版配置文件选项一致,也就是说,你的原JP插件中该选项填写的是false,那么这里你也应该改为false。其他登录插件无视此选项即可。
fixedUniqueIds: true
# 选择你的旧的登录插件:JPREMIUM, AUTHME, AUTHME_AND_FASTLOGIN, DYNAMICBUNGEEAUTH
convertFrom: AUTHME
# debug模式,默认情况下请勿修改
debug: false
# JPremium 目前储存登录数据所在的 MySQL 库
newStorage:
host: '172.0.0.5'
port: 3306
database: 'game'
user: 'root'
password: '338728243'
useSSL: false
# 旧 JPremium 储存数据所在的库,以下根据登录插件名称选择即可。不再累述。
jpremiumStorage:
remote:
host: '127.0.0.1'
port: 3306
database: 'jpremium'
user: 'root'
password: 'pass'
useSSL: false
tables:
firstTable: 'non_premium_users'
secondTable: 'premium_users'
# 如果是 本地储存,请在此处指定文件所在的目录,例如:
# C:/Users/Joe/Servers/Bungee/plugins/JPremium/database.db
local: '' #
# AuthMe
authmeStorage:
remote:
host: '172.0.0.5'
port: 3306
database: playerdata
user: 'root'
password: '338728243'
useSSL: false
table: 'authme'
local: ''
fastLoginStorage:
remote:
host: '127.0.0.1'
port: 3306
database: 'authme'
user: 'root'
password: 'pass'
useSSL: true
table: 'premium'
local: ''
onlineUUID: true
dynamicPremiumStorage:
remote:
host: '127.0.0.1'
port: 3306
database: 'authme'
user: 'root'
password: 'pass'
useSSL: true
table: 'premiumusers'
dynamicBungeeAuthStorage:
remote:
host: '127.0.0.1'
port: 3306
database: 'dynamicbungeeauth'
user: 'root'
password: 'pass'
useSSL: true
table: 'playerdata'
passwordHash: SHA512 # SHA256, SHA512
ignorePremium: false
openLoginStorage:
local: 'C:/Users/Joe/Servers/Spigot/plugins/OpeNLogin/accounts.db'
aBungeeAuthStorage:
local: 'C:/Users/Joe/Servers/Spigot/plugins/ABungeeAuth/abungeeauth.db'
aegisStorage:
remote:
host: '127.0.0.1'
port: 3306
database: 'aegis'
user: 'root'
password: 'pass'
useSSL: true
onlineUUIDForPremiumPlayers: true
local: '' #'C:/Users/Joe/Servers/Bungee/auth_database.db'
|
4.转换不是百分之百成功,例如 AuthMe 插件只支持 SHA-256 和 Bcrypt 密码格式的转换。转换完成后,应当从BC服中删除该转换插件。
» 网站注册
向插件开发者寻求该功能的帮助,在此不再累述。
» Geyser 适配
1.在你的 BC服务器 上安装 Geyser2.0 和 Floodgate2.0.
2.在你的 Floodgate 配置文件中开启选项 username-prefix,关闭选项 replace-spacesplayer-link.enable。
3.在你的 JPremium 配置文件中打开选项 floodgateSupport。
4.重启你的 BC服务器。
» 指令列表
玩家指令:
/login <password>
登录
/register <new-password>
注册
/unregister <password>
注销账号
/changepassword <current-password> <new-password>
修改密码
/createpassword <new-password>
创建密码
/premium <password>
绑定正版账号
/cracked <password>
取消绑定正版账号
/startsession
开启免登录
/destroysession
关闭免登录
/changeemailaddress <password> <email-address>
更换绑定邮箱
/requestpasswordrecovery <email-address>
申请重置密码
/confirmpasswordrecovery <recovery-code> <new-password>
确认重置密码
/requestsecondfactor
申请二步验证
/activatesecondfactor <password> <second-factor-code>
激活二步验证
/deactivatesecondfactor <password> <second-factor-code>
关闭二步验证
管理员命令:
/forcelogin <nickname> > jpremium.command.forcelogin
强制玩家登录
/forceregister <nickname> <new-password> > jpremium.command.forceregister
强制玩家注册
/forceunregister <nickname> > jpremium.command.forceunregister
强制玩家注销
/forcechangepassword <nickname> <new-password> > jpremium.command.forcechangepassword
强制更改玩家密码
/forcecreatepassword <nickname> <new-password> > jpremium.command.forcecreatepassword
强制给玩家创建密码
/forcepremium <nickname> > jpremium.command.forcepremium
强制给玩家正版绑定
/forcecracked <nickname> > jpremium.command.forcecracked
强制给玩家取消正版绑定
/forcestartsession <nickname> > jpremium.command.forcestartsession
强制给玩家开启免登录
/forcedestroysession <nickname> > jpremium.command.forcedestroysession
强制给玩家关闭免登录
/forcechangeemailaddress <nickname> <email-address> > jpremium.command.forcechangeemailaddress
强制给玩家更换绑定邮箱
/forcerequestpasswordrecovery <nickname> > jpremium.command.forcerequestpasswordrecovery
强制给玩家申请重置密码
/forceconfirmpasswordrecovery <nickname> <new-password> > jpremium.command.forceconfirmpasswordrecovery
强制给玩家确认重置密码
/forcerequestsecondfactor <nickname> > jpremium.command.forcerequestsecondfactor
强制给玩家申请二步验证
/forceactivatesecondfactor <nickname> > jpremium.command.forceactivatesecondfactor
强制给玩家开启二步验证
/forcedeactivatesecondfactor <nickname> > jpremium.command.forcedeactivatesecondfactor
强制给玩家关闭二步验证
/forceviewuserprofile <nickname> > jpremium.command.forceviewuserprofile
强制查看玩家的信息
/forcepurgeuserprofile <nickname> > jpremium.command.forcepurgeuserprofile
/jreload > jpremium.command.reload
重启插件
» 配置文件
BC:
#+------------------------------------------------------------------------------------------------------+#
#| |#
#| |#
#| J P R E M I U M |#
#| C O N F I G U R A T I O N |#
#| |#
#| |#
#+------------------------------------------------------------------------------------------------------+#
version: 'CLEARED-Bungee-1.11.4'
# MySQL配置
storageHost: '172.0.0.5'
storagePort: 3306
storageDatabase: 'game'
storageUser: 'root'
storagePassword: '338728243'
storageProperties: [useSSL=false, verifyServerCertificate=true]
# 连接池设置
connectionPoolSize: 10
connectionPoolIdle: 10
connectionPoolTimeout: 5000
connectionPoolLifetime: 1800000
# 邮箱服务器设置
mailHost: ''
mailPort: 25
mailUser: ''
mailPassword: ''
mailUseTLS: true
# 贴中有详细介绍
accessToken: ''
# 贴中有详细介绍
limboServerNames: []
# 贴中有详细介绍
mainServerNames: []
# ID类型,有FIXED,REAL和OFFLINE三种类型
uniqueIdsType: OFFLINE
# 如果一个正版玩家在登录过程中意外退出,再次进服后插件将视其为盗版玩家
secondLoginCracked: false
# 网站注册设置
# 0代表不开启,1代表服务器和网站都可以注册,2代表只能网站注册
registerOnWebsite: 0
# 是否禁止正版玩家ID被占用
registerPremiumUsers: true
# 密码输入错误后是否将玩家踢出
disconnectWhenWrongPassword: false
# 当玩家所在服务器意外离线后,是否将玩家传送到其他服务器
disconnectRedirection: true
# 是否将玩家传送到上一次在线的服务器,而不是大厅服
lastServerRedirection: false
# 标题持续时间
delayTitlesAfterJoinTime: 1000
# 贴中有详细介绍
floodgateSupport: false
# 是否开启多BC支持
multiProxySupport: true
# 是否开启注册验证码
verifyCaptchaCode: true
# 是否开启注册确认密码
confirmPassword: false
# 备份服务器功能,联系插件开发者
useBackupServer: false
# 重置密码邮件标题
passwordRecoverySubject: The password recovery
# 服务器名称
serverName: MC Example
# 一个IP地址最多的玩家数
maximumUserProfilesPerAddress: 3
# 注册和登录最长时间,秒为单位
maximumAuthorisationTime: 90
# 玩家手动开启的免登录最长时间,分钟为单位
manuallySessionTime: 720
# 自动给玩家进行的免登录最长时间,分钟为单位
automaticSessionTime: 10
# 重置密码最长时间,分钟为单位
recoveringPasswordDelay: 60
# 盗版玩家多长时间没有登录自动注销账号,天为单位,0为关闭
automaticUnregisterTime: 0
# 密码储存类型,支持 SHA256, SHA512, BCRYPT.
passwordHashingAlgorithm: SHA256
# 安全密码确认逻辑
safePasswordPattern: '[\S]{6,25}'
# The hostnames which players can use to connect with your BungeeCord server.
# If you want to disable it, please set the value to '[]'.
# All host names have to have ports, for example: 'acceptedHostnames: [mc.example:25565]'.
acceptedHostnames: []
# 指令缩写功能,下面是我写的两个示例,所有指令都可以开启缩写功能
loginCommandAliases: [l, log]
regitserCommandAliases: [r, reg]
|
子服:
#+------------------------------------------------------------------------------------------------------+#
#| |#
#| |#
#| J P R E M I U M |#
#| C O N F I G U R A T I O N |#
#| |#
#| CLEARED-Backend-1.11.4 |#
#| |#
#| |#
#| If you are looking for support with the configuration or with JPremium, |#
#| please contact with the author on SpigotMC.org: |#
#| <a href="https://www.spigotmc.org/conversations/add?to=Jakubson" target="_blank" style="user-select: text !important;">https://www.spigotmc.org/conversations/add?to=Jakubson</a> |#
#| |#
#| |#
#+------------------------------------------------------------------------------------------------------+#
# 贴中有详细介绍
accessToken: ''
# 贴中有详细介绍
captchaMapSlot: 0
# 未登录玩家是否不可移动
restrictedMovement: true
# 未登录玩家是否不可进行操作,例如破坏方块等
restrictedInteractions: true
# 未登录玩家是否给予失明药水
blindnessEffect: true
# 出生点位置,留空代表关闭,格式: 世界/x/y/z/yaw/pitch
spawnLocation: ''
# 验证码地图上的字样
captchaMessage: '%captcha_code%'
# 非法连接提示
disconnectionMessage: '&8[&c&l»&8] &7无效连接!'
|
| 下载 请到原贴购买插件正版后进行。 插件价格:16.99USD,约合110RMB。 |
|
|