AuthMeReloaded

作者:sgdc3 发布时间:2015年4月21日 原生版本:未知 测试支持:1.8,1.9,1.10,1.11,1.12,1.13,1.14,1.15,1.16

Bukkit/Spigot API最好的身份验证插件!

点此下载

插件详细介绍

🔒 AuthMeReloaded 是 Bukkit/Spigot API 的最佳身份验证插件。它可以有效防止服务器上的用户名被盗用,增强离线模式服务器的安全性,并提高在线模式服务器的保护能力。该插件功能强大,配置灵活,支持多种密码加密算法、数据库类型,并与其他插件良好兼容。

🛡️ AuthMeReloaded

⚙️ 插件信息

  • Native Minecraft Version: 1.16
  • Tested Minecraft Versions: 1.8 1.9 1.10 1.11 1.12 1.13 1.14 1.15 1.16 1.17 1.18 1.19 1.20 1.20.6 1.21
  • Source Code: GitHub
  • Contributors: Xephi59, sgdc3, ljacqu, DNx5, TimVisee, games647, Gnat008, HexelDev

✨ 主要特性

  • E-Mail Recovery System!
  • Username spoofing protection.
  • Countries Whitelist/Blacklist! (countries codes)
  • Built-in AntiBot System!
  • ForceLogin Feature: Admins can login with all account via console commands!
  • Avoid the "Logged in from another location" message!
  • Two-factor (2FA) support!
  • Session Login!
  • Editable translations and messages!
  • MySQL and SQLite Backend support!
  • Supported password encryption algorithms: SHA256, ARGON2, BCRYPT, PBKDF2, xAuth
  • 支持多种替代注册方法:PHPBB, VBullettin, MyBB, IPB3, IPB4, PhpFusion, Joomla, WBB3*, SHA512, DoubleSaltedMD5, WordPress
  • Custom MySQL tables/columns names (useful with forums databases)
  • Cached database queries!
  • Full compatible with Citizens2, CombatTag, CombatTagPlus and ChestShop!
  • Compatible with Minecraft mods like BuildCraft or RedstoneCraft
  • Restricted users (associate a Username with an IP)
  • Protect player's inventory until a correct Authentication
  • Saves the quit location of the player
  • Automatic database Backup
  • 支持多种语言:en, de, br, cz, pl, fr, uk, ru, hu, sk, es, fi, zhtw, zhhk, zhcn, lt, it, ko, pt, nl, gl, bg, eu, tr (欢迎提供新的翻译)
  • Built-in Deprecated FlatFile (auths.db) to SQLite converter!
  • Import your old database from other plugins like Rakamak, xAuth, CrazyLogin, RoyalAuth and vAuth
  • AuthMeBungee (Bungeecord addon!)

🚀 使用指南

📜 命令 & 权限

命令

权限

🛠️ 使用方法

👨‍💻 开发工具

📊 统计

🌍 GeoIP 信息

This product uses data from the GeoLite API created by MaxMind, available at: http://www.maxmind.com

🙏 Credits

Contributors : sgdc3, ljacqu, games647, H3xel

Inactive: Xephi59, TimVisee, Gnat008, DNx5, Maxetto, darkwarriors, eprimex

Logo by MasterMithrandir

📝 示例配置 (config.yml)

    
# AuthMe Configuration File
# For more information visit: https://github.com/AuthMe/AuthMeReloaded/wiki/Configuration
# If you need help, feel free to ask on our discord: https://discord.gg/YFG69Cf
#
# Set the config version here. Do not change this.
config: 7
#
# ==== DATABASE SETTINGS ====
#
# Database Type. Available:
#   - MYSQL
#   - SQLITE
#   - POSTGRESQL
#   - MARIADB
#   - MONGODB
#
# SQLITE : It's a file database, which don't need password and hostname.
# MYSQL : A database server where you can configure password and other settings.
# POSTGRESQL : A database server like MySQL, need a driver to be installed.
# MARIADB : A database server like MySQL, optimized version of MySQL.
# MONGODB : NoSQL Database
#
# Default: SQLITE
#
# For using an external MySQL Database you have to install the MySQL JDBC Driver:
# https://github.com/AuthMe/AuthMeReloaded/wiki/Installation#mysql-jdbc-driver
# And configure the settings below in the mysql section of the config.
#
database:
  method: SQLITE
  #
  # MySQL, MariaDB and PostgreSQL settings
  #
  mysql:
  # MySQL Hostname
    host: 'localhost'
    # MySQL Port
    port: 3306
    # MySQL Database Name
    database: 'authme'
    # MySQL Username
    username: 'user'
    # MySQL Password
    password: 'password'
    # Use SSL?
    ssl: false
  #
  # PostgreSQL settings
  #
  postgresql:
    # PostgreSQL Hostname
    host: 'localhost'
    # PostgreSQL Port
    port: 5432
    # PostgreSQL Database Name
    database: 'authme'
    # PostgreSQL Username
    username: 'user'
    # PostgreSQL Password
    password: 'password'
    # Use SSL?
    ssl: false
  #
  # MariaDB settings
  #
  mariadb:
    # MariaDB Hostname
    host: 'localhost'
    # MariaDB Port
    port: 3306
    # MariaDB Database Name
    database: 'authme'
    # MariaDB Username
    username: 'user'
    # MariaDB Password
    password: 'password'
    # Use SSL?
    ssl: false
  #
  # MongoDB settings
  #
  mongodb:
    # MongoDB Hostname
    host: 'localhost'
    # MongoDB Port
    port: 27017
    # MongoDB Database Name
    database: 'authme'
    # MongoDB Username
    username: 'user'
    # MongoDB Password
    password: 'password'
    # Authentication Database
    authentication-database: 'admin'
    # Replica Set Name (if using a replica set)
    replica-set-name: ''
    # Connection URI (Optional - overwrites host, port, database, username, password, authentication-database and replica-set-name)
    connection-uri: ''
  #
  # The name of the auths table.
  authmeTable: 'authme'
  #
  # Set the column names of the table.
  column:
    # Column which contains the Minecraft account name.
    name: 'username'
    # Column which contains the last known IP address.
    ip: 'ip'
    # Column which contains the encryption method.
    hash: 'hash'
    # Column which contains the password.
    password: 'password'
    # Column which contains the last known login date (as timestamp).
    lastlogin: 'lastlogin'
    # Column which contains the x, y, z coordinates of the player quit location.
    x: 'x'
    y: 'y'
    z: 'z'
    # Column which contains the world name of the player quit location.
    world: 'world'
    # Column which contains the e-mail address of the player.
    email: 'email'
    # Column which contains the isLogged status.
    isLogged: 'isLogged'
    # Column which contains the uniqueId of the player.
    uniqueId: 'uniqueId'
    # Column which contains the registration date (as timestamp).
    regdate: 'regdate'
    # Column which contains the country of the player.
    country: 'country'
    # Column which contains the total amount of loggins.
    totalSessions: 'totalSessions'
    # Column which contains the premium status of the player.
    premium: 'premium'
    # Column which contains the two factor authentication secret of the player.
    twoFactorSecret: 'twoFactorSecret'
#
# Here are listed all the settings related to general stuffs.
#
settings:
  #
  # Allows you to automatically update the config file when a new version is available.
  # You should keep this option on true to receive new updates.
  auto-update-config: true
  #
  # Set the default language.
  # Default: en
  language: 'en'
  #
  # Set the default system of the plugin. Available:
  #   - AUTHME : Basic login with /register and /login
  #   - MANAGEMENT : Management system like registration approval.
  # Default: AUTHME
  #
  # MANAGEMENT MODE REQUIRE A PLUGIN LIKE AuthMeBridge TO WORKS
  mode: AUTHME
  #
  # Debug mode
  #
  # If you have problems, enable the debug mode, and send the log to developers.
  # Default: false
  debug: false
  #
  # Save player last known ip
  #
  # Should AuthMe save the last player IP Address?
  # This is needed for /lastlogin command, and to prevent account sharing if enabled.
  # Default: true
  save-last-ip: true
  #
  # Restrict duplicated IP addresses?
  #
  # Block players from registering/logging in if their IP address is already used by another account?
  # Players with "authme.admin.bypassip" permission are exempt from this check.
  # Default: false
  restrict-ip: false
  #
  # Count unique logins (for statistics).
  # This will only count logins that are not made on the same IP within a 24 hour period.
  # Default: false
  count-unique-logins: false
  #
  # Ban country feature
  #
  # Block players to register/login if the their country is blacklisted?
  # To get more informations about how to set up the ban country feature, please visit :
  # https://github.com/AuthMe/AuthMeReloaded/wiki/Country-Bans
  # Default: false
  ban-country: false
  #
  # List of blocked countries with ISO 3166-1 alpha-2 country codes
  # https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2
  # Example:
  #   - US
  #   - CA
  blocked-countries:
  #
  # Whitelist country feature
  #
  # Allow players to register/login only if the their country is whitelisted?
  # To get more informations about how to set up the whitelist country feature, please visit :
  # https://github.com/AuthMe/AuthMeReloaded/wiki/Country-Whitelist
  # Default: false
  whitelist-country: false
  #
  # List of allowed countries with ISO 3166-1 alpha-2 country codes
  # https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2
  # Example:
  #   - US
  #   - CA
  allowed-countries:
  #
  #  Registration E-mail
  #
  #  With this function the player needs to enter a valid e-mail address for register, and AuthMe checks if the e-mail really exist with a built-in DNS check system.
  #  You can use the email function to send a confirmation link to the player, and activate their account after the click on the link.
  #  NOTE: The feature require an active SMTP server for send the e-mail messages.
  #
  email:
    #
    #  Enable the E-mail verification system.
    #  Default: false
    #  WARNING: Enable this option only if you have an valid SMTP server, or AuthMe can't send any emails!
    email-verification: false
    #
    #  If the player has an e-mail address in the database, AuthMe can send the password to the player if he/she forgot it.
    #  Default: false
    lost-password: false
    #
    #  The player has to change the password with the /changepassword command after the login.
    #  Default: false
    must-change-password: false
    #
    #  Here you can set up the SMTP server settings.
    #  NOTE: If you don't know what settings you need, please contact your hosting provider.
    #  WARNING: IF YOU DON'T HAVE ANY SMTP SERVER, DON'T ENABLE THE E-MAIL VERIFICATION SYSTEM!
    #
    smtp:
      # Host of the SMTP server
      host: 'mail.example.com'
      # Port of the SMTP server
      port: 587
      # User name for authentication
      username: 'authme@example.com'
      # Password for authentication
      password: 'password'
      # Enable TLS encryption
      tls: true
      # Enable SSL encryption
      ssl: false
      #
      #  Here you can customize the messages sent to the players.
      #  If you need more help about how to customize messages, visit: https://github.com/AuthMe/AuthMeReloaded/wiki/Translations
      #
      messages:
        #  The subject of the verification e-mail.
        verification-subject: '[AuthMe] Account Verification'
        #  The body of the verification e-mail.
        verification-body: "Hello %player%,\n\nThank you for registering on our server! Please click the link below to verify your account:\n%link%\n\nIf you did not register on our server, please ignore this email.\n\nSincerely,\nThe Server Team"
        #  The subject of the lost password e-mail.
        lost-password-subject: '[AuthMe] Lost Password Request'
        #  The body of the lost password e-mail.
        lost-password-body: "Hello %player%,\n\nYou have requested to reset your password. Your new password is:\n%password%\n\nPlease change your password as soon as possible.\n\nIf you did not request to reset your password, please ignore this email.\n\nSincerely,\nThe Server Team"
  #
  # Registration and login settings
  #
  registration:
    #
    # The maximum length of the password
    # Default: 32
    passwordMaxLength: 32
    #
    # The minimum length of the password
    # Default: 6
    passwordMinLength: 6
    #
    # The maximum length of the playername
    # Default: 16
    playerNameMaxLength: 16
    #
    # The minimum length of the playername
    # Default: 3
    playerNameMinLength: 3
    #
    # Force the player to change password after some time.
    # Set the number of days after that the player will be forced to change his password, set to 0 to disable this feature.
    # Default: 0
    forcePasswordChange: 0
  #
  #  Premium auto login system.
  #  AuthMe can check the player authentication from Mojang servers, and automatically log them in if they are already authenticated.
  #  WARNING: This feature is not 100% secure, and can be bypassed by some cracked clients.
  #
  premium:
    #
    #  Enable or disable the premium auto login system.
    #  Default: false
    enabled: false
    #
    #  Should AuthMe save the premium status to the database?
    #  Default: false
    savePremium: false
    #
    #  Should AuthMe kick offline players that try to login with an existing account?
    #  Default: true
    kickOfflinePlayers: true
  #
  #  Session Login
  #
  #  With this system, the player is automatically logged in if he/she has already logged in during the last session.
  #
  session:
    #  Enable or disable the Session Login system.
    #  Default: true
    enabled: true
    #  The time in seconds before the session expires.
    #  Default: 300
    length: 300
    #  Reset session on kick
    #  Default: false
    resetOnKick: false
  #
  #  Inventory protection.
  #
  #  With this system, the player inventory is protected until he/she has logged in.
  #
  inventory:
    #  Enable or disable the inventory protection system.
    #  Default: true
    enabled: true
    #  Clear the inventory on login.
    #  If this option is enabled, the player inventory will be cleared when he/she logs in.
    #  Default: false
    clearInventory: false
  #
  #  Forcelogin system
  #
  #  With this system, admins can login with all account via console commands!
  #
  forcelogin:
    #  Enable or disable the forcelogin system.
    #  Default: true
    enabled: true
  #
  #  AntiBot system
  #
  #  With this system, AuthMe can block bots to register on the server.
  #
  antibot:
    #  Enable or disable the AntiBot system.
    #  Default: false
    enabled: false
    #  The maximum number of registrations per IP address.
    #  Default: 3
    maxRegistrationsPerIp: 3
    #  The time in seconds before the IP address is reset.
    #  Default: 3600
    timeToReset: 3600
  #
  #  Remember last location
  #
  #  With this system, AuthMe can remember the last player location and teleport him/her back to the last location after the login.
  #
  rememberlastloc:
    #  Enable or disable the remember last location system.
    #  Default: true
    enabled: true
  #
  #  Teleport UnAuthed
  #
  #  If this option is enabled, AuthMe will teleport the player to a specific location if he/she is not authenticated.
  #
  teleportUnAuthed:
    #  Enable or disable the teleport unauthed system.
    #  Default: false
    enabled: false
    #  The world to teleport the player to.
    world: 'world'
    #  The x coordinate to teleport the player to.
    x: 0
    #  The y coordinate to teleport the player to.
    y: 0
    #  The z coordinate to teleport the player to.
    z: 0
    #  The yaw to teleport the player to.
    yaw: 0
    #  The pitch to teleport the player to.
    pitch: 0
  #
  #  Forced Registration
  #
  #  If this option is enabled, AuthMe will force the player to register if he/she is not registered yet.
  #
  forcedRegistration:
    #  Enable or disable the forced registration system.
    #  Default: false
    enabled: false
  #
  #  Experimental settings.
  #  These settings are not recommended to be changed unless you know what you are doing.
  #
  experimental:
    #  Use FastLogin to check if the player is already logged in.
    #  Default: false
    useFastLogin: false
#
# Here are listed all the settings related to the protection of the player.
#
security:
  #
  #  Protection settings.
  #
  protection:
    #  Prevent the player from moving if he/she is not authenticated.
    #  Default: true
    movement: true
    #  Prevent the player from chatting if he/she is not authenticated.
    #  Default: true
    chat: true
    #  Prevent the player from using commands if he/she is not authenticated.
    # You can add commands to the "allowed-commands" section to allow the player to use them.
    #  Default: true
    commands: true
    #  Prevent the player from interacting with the environment if he/she is not authenticated.
    #  Default: true
    interact: true
    #  Prevent the player from damaging entities if he/she is not authenticated.
    #  Default: true
    entity-damage: true
    #  Prevent the player from block placing/breaking if he/she is not authenticated.
    #  Default: true
    block-placing: true
    #  Prevent the player from item dropping if he/she is not authenticated.
    #  Default: true
    item-drop: true
    #  Prevent the player from picking up items if he/she is not authenticated.
    #  Default: true
    item-pickup: true
    #  Prevent the player from using items if he/she is not authenticated.
    #  Default: true
    item-use: true
    #  Prevent the player from using the bucket if he/she is not authenticated.
    #  Default: true
    bucket: true
    #  Prevent the player from eating if he/she is not authenticated.
    #  Default: true
    eating: true
    #  Prevent the player from using the bed if he/she is not authenticated.
    #  Default: true
    bed: true
    #  Prevent the player from using the doors if he/she is not authenticated.
    #  Default: true
    door: true
    #  Prevent the player from entering in vehicles if he/she is not authenticated.
    #  Default: true
    vehicle: true
    #  Prevent the player from fishing if he/she is not authenticated.
    #  Default: true
    fishing: true
    #  Prevent the player from shearing sheeps if he/she is not authenticated.
    #  Default: true
    shearing: true
    #  Prevent the player from using the anvil if he/she is not authenticated.
    #  Default: true
    anvil: true
    #  Prevent the player from using the enchanting table if he/she is not authenticated.
    #  Default: true
    enchanting: true
    #  Prevent the player from using the brewing stand if he/she is not authenticated.
    #  Default: true
    brewing: true
    #  Prevent the player from using the crafting table if he/she is not authenticated.
    #  Default: true
    crafting: true
    #  Prevent the player from using the furnace if he/she is not authenticated.
    #  Default: true
    furnace: true
    #  Prevent the player from using the hopper if he/she is not authenticated.
    #  Default: true
    hopper: true
    #  Prevent the player from using the dispenser if he/she is not authenticated.
    #  Default: true
    dispenser: true
    #  Prevent the player from using the dropper if he/she is not authenticated.
    #  Default: true
    dropper: true
    #  Prevent the player from using the beacon if he/she is not authenticated.
    #  Default: true
    beacon: true
    #  Prevent the player from using the jukebox if he/she is not authenticated.
    #  Default: true
    jukebox: true
    #  Prevent the player from using the note block if he/she is not authenticated.
    #  Default: true
    note-block: true
    #  Prevent the player from using the command block if he/she is not authenticated.
    #  Default: true
    command-block: true
    #  Prevent the player from using the wither if he/she is not authenticated.
    #  Default: true
    wither: true
    #  Prevent the player from using the ender crystal if he/she is not authenticated.
    #  Default: true
    ender-crystal: true
    #  Prevent the player from using the ender portal frame if he/she is not authenticated.
    #  Default: true
    ender-portal-frame: true
  #
  #  Allowed commands.
  #  Here you can add commands that the player can use before he/she is authenticated.
  #  Example:
  #   - /spawn
  #   - /help
  allowed-commands:
  #
  #  Kick settings.
  #
  kick:
    #  Kick the player if he/she has an uncommon long playername.
    #  Default: false
    long_name: false
    #  Kick the player if he/she has an uncommon short playername.
    #  Default: false
    short_name: false
    #  Kick the player if he/she is not authenticated after a certain time.
    #  Default: false
    unauthed: false
    #  The time in seconds before the player is kicked if he/she is not authenticated.
    #  Default: 30
    unauthedTimeout: 30
#
# Here are listed all the settings related to the password encryption.
#
password:
  #
  #  Encryption algorithm. Available:
  #   - SHA256
  #   - ARGON2
  #   - BCRYPT
  #   - PBKDF2
  #   - xAuth
  #  Default: SHA256
  encryption: 'SHA256'
  #
  #  Number of iterations for the PBKDF2 algorithm.
  #  Default: 1000
  pbkdf2Iterations: 1000
  #
  #  Salt length for the PBKDF2 algorithm.
  #  Default: 16
  pbkdf2SaltLength: 16
  #
  #  Argon2 settings.
  #
  argon2:
    #  Memory cost for the Argon2 algorithm.
    #  Default: 65536
    memoryCost: 65536
    #  Time cost for the Argon2 algorithm.
    #  Default: 3
    timeCost: 3
    #  Parallelism for the Argon2 algorithm.
    #  Default: 1
    parallelism: 1
  #
  #  xAuth settings.
  #
  xauth:
    #  Enable or disable the xAuth compatibility mode.
    #  Default: false
    enabled: false
    #  The salt used by xAuth.
    #  Default: 'changeme'
    salt: 'changeme'
#
# Here are listed all the settings related to the Two-Factor Authentication.
#
twofactor:
  #
  #  Enable or disable the Two-Factor Authentication system.
  #  Default: false
  enabled: false
  #
  #  Force the player to use Two-Factor Authentication.
  #  Default: false
  force: false
  #
  #  The time in seconds before the player is kicked if he/she does not enter the code.
  #  Default: 30
  timeout: 30
  #
  #  The issuer name that will be displayed in the Google Authenticator app.
  #  Default: 'AuthMe'
  issuer: 'AuthMe'
  #
  #  The QR code size.
  #  Default: 200
  qrCodeSize: 200