Plugin Release LimboAuth - Auth System built in virtual server - Limbo.

Download Link
https://github.com/Elytrium/LimboAuth/releases/tag/1.0.6
Source Code
https://github.com/Elytrium/LimboAuth/
Support
https://elytrium.net/discord
Minecraft Versions
1.7.2 - 1.19.2
Compatible Java Versions
Java 11+
LimboAuth

Auth System built in virtual server (Limbo).
Needs LimboAPI to be installed on the proxy!

Test server: ely.su

See also
  • LimboFilter - Most powerful bot filtering solution for Minecraft proxies. Built with LimboAPI.
  • LimboAPI - Library for sending players to virtual servers (called limbo)
Features of LimboAuth
  • Supports H2, MySQL, PostgreSQL databases;
  • Geyser Floodgate support;
  • Hybrid (Floodgate/Online/Offline) mode support;
  • Uses BCrypt - the best hashing algorithm for password;
  • Ability to migrate from AuthMe-alike plugins;
  • Ability to block weak passwords;
  • TOTP 2FA support;
  • Ability to set UUID from database;
  • Highly customisable config - you can change all the messages the plugin sends, or just disable them;
  • MCEdit schematic world loading;
  • And more...
Start the server with LimboAuth (+ SocialAddon, if needed) on the desired SQL database.
Then you should execute the SQL statement (e.g. in PhpMySQL or in HeidiSQL)
And set the migration-hash field to the desired value in the LimboAuth config file.

JPremium:
SQL:
INSERT INTO limbo.AUTH
SELECT lastNickname, LOWER(lastNickname), IF(hashedPassword IS NULL, "", IF(premiumId IS NULL, hashedPassword, "")), COALESCE(firstAddress, ""), "", (UNIX_TIMESTAMP(firstSeen) * 1000), CONCAT(SUBSTR(uniqueId, 1, 8), '-', SUBSTR(uniqueId, 9, 4), '-', SUBSTR(uniqueId, 13, 4), '-',  SUBSTR(uniqueId, 17, 4), '-', SUBSTR(uniqueId, 21)), IF(premiumId IS NULL, "", CONCAT(SUBSTR(premiumId, 1, 8), '-', SUBSTR(premiumId, 9, 4), '-', SUBSTR(premiumId, 13, 4), '-',  SUBSTR(premiumId, 17, 4), '-', SUBSTR(premiumId, 21))) FROM jpremium.user_profiles WHERE lastNickname IS NOT NULL
If you've used SHA256 in JPremium, set migration-hash to AUTHME_NP; if you've used SHA512, to SHA512_DBA. If you've used BCrypt, leave this field blank.

NLogin:
SQL:
INSERT INTO limbo.AUTH
SELECT realname, name, COALESCE(password, ""), COALESCE(address, ""), "", 0, CONCAT(SUBSTR(uniqueId, 1, 8), '-', SUBSTR(uniqueId, 9, 4), '-', SUBSTR(uniqueId, 13, 4), '-',  SUBSTR(uniqueId, 17, 4), '-', SUBSTR(uniqueId, 21)), IF(premiumId IS NULL, "", CONCAT(SUBSTR(premiumId, 1, 8), '-', SUBSTR(premiumId, 9, 4), '-', SUBSTR(premiumId, 13, 4), '-',  SUBSTR(premiumId, 17, 4), '-', SUBSTR(premiumId, 21)))
FROM nlogin.table 

MoonVKAuth/DSKAuth:
SQL:
INSERT INTO база_лимбы.AUTH SELECT username, LOWER(username), IF(password IS NULL, "", IF(premium = 1, "", password)), COALESCE(register_ip, ""), "", reg_date, "", "" FROM база_мунвк.auth WHERE username IS NOT NULL;
INSERT IGNORE INTO база_лимбы.SOCIAL
SELECT LOWER(username), vk_id, NULL, NULL, ban, double_auth, notification
FROM база_мунвк.vk;

migration-hash: AUTHME

AuthMe:

SQL:
INSERT INTO limbo.AUTH SELECT realname, username, COALESCE(password, ""), COALESCE(ip, ""), COALESCE(totp, ""), regdate, "", "" FROM authme.table WHERE username IS NOT NULL
DBA:

SQL:
INSERT IGNORE INTO u27303_data.AUTH SELECT name, LOWER(name), IF(password IS NOT NULL, CONCAT("SHA512$", salt, "$", password), ""), COALESCE(reg_ip, ""), "", (UNIX_TIMESTAMP(firstjoin) * 1000), uuid, "" FROM u27303_data.playerdata WHERE name IS NOT NULL 

Donation
Your donations are really appreciated. Donations wallets/links/cards:

  • MasterCard Debit Card (Tinkoff Bank): 5536 9140 0599 1975
  • Qiwi Wallet: PFORG or this link
  • YooMoney Wallet: 4100 1721 8467 044 or this link
 
  • Like
Reactions: Honnisha