Плагин Без обновлений Авторизация nLogin Premium [Last]

nLogin Premium
Краткое описание:
nLogin Premium
1 762
15 999
  • Лайк 0
  • Gold love
  • Cookie
Реакции:853 пользователей
Для версий
  1. 1.7.10
  2. 1.8.✘
  3. 1.9.✘
  4. 1.10.✘
  5. 1.11.✘
  6. 1.12.✘
  7. 1.13.✘
  8. 1.14.✘
  9. 1.15.✘
  10. 1.16.✘
  11. 1.17.✘
  12. 1.18.✘
  13. 1.19.✘
  14. 1.20.✘
Источник
https://www.nickuc.com/panel/home
Документация
https://en.docs.nickuc.com/about
2

Описание плагина nLogin Premium:​

nLogin - это система аутентификации, ориентированная на практичность, безопасность и удобство для игроков.
nLogin Premium предоставляет эксклюзивные преимущества в платной версии.

Что доступно в премиум версии плагина nLogin?​

Привязка аккаунтов​

Ваши игроки смогут связать свои учетные записи электронной почты, Discord и Twitter.
После привязки вы сможете...
  • включить второй фактор для пользователя, добавив дополнительный уровень безопасности при аутентификации.
  • использовать интегрированную учетную запись в качестве способа восстановления пароля.
  • интегрировать предоставленные учетные записи в другие серверные приложения (форумы, магазины, группу Discord и т.д.).
Также...
Вы можете заставить игрока регистрировать электронную почту при аутентификации, что предотвратит доступ ботов или дублирование учетных записей.
1

До входа в аккаунт игрок не сможет выполнить никаких действий. Проверка электронной почты требуется, если только у вас нет разрешения "nlogin.bypass.email".
Вы также можете ограничить количество раз использования учетной записи!
По умолчанию ограничение составляет одну учетную запись для одного пользователя.

Более удобная аутентификация​

Вы - ютубер или стример, и вам нужно скрывать пароль при каждой аутентификации? Или вам просто надоело каждый раз входить в систему?

Не волнуйтесь! С премиум-версией nLogin вы сможете автоматически проходить аутентификацию независимо от того, взломанная у вас учетная запись или премиум-аккаунт. Проверьте это ниже:

Сеансы входа в систему​

Если игрок взломан, ему не нужно постоянно вводить свой пароль.
По умолчанию сеансы входа длятся 5 минут, но это можно изменить в config.yml.

Вход для премиумов​

Если игрок является премиум-игроком, ему не нужно вводить пароль (даже при первом входе в игру).
Просто войдите в систему и играйте. Все очень просто.

Вход в систему через Bedrock​

Если игрок входит в систему через Bedrock, ему не нужно будет проходить аутентификацию.

Особенности плагина nLogin Premium:​

  • Полная поддержка прокси-серверов.
  • Система BungeeGuard.
  • Поддержка всех плагинов, использующих AuthMe api.
  • Пользовательское преобразование различных плагинов.
  • Система защиты для отключения плагина от хакерских атак.
  • Простая система обновления одним щелчком мыши.
  • Поддержка нескольких языков.
  • Автоматический выбор языка в зависимости от языка Minecraft.
  • Система скрытия и шифрования паролей.

Команды плагина nLogin Premium:​

/nlogin <команда> [аргументы] — Основная команда плагина. Обычно используется для администрирования.
/nlogin support — список контактов для получения поддержки.​
/nlogin version — показывает информацию о версии плагина.​
/nlogin changepass <Ник игрока> <новый пароль> — изменяет пароль игрока.​
/nlogin delete <игрок> — удаляет учетную запись игрока (ВНИМАНИЕ, UUID-данные могут быть потеряны) - не путать с /nlogin unregister.​
/nlogin dupeip <Ник игрока/ip> — перечисляет учетные записи с одинаковыми IP.​
/nlogin forcelogin <Ник игрока> — заставляет войти в учетную запись.​
/nlogin unregister <Ник игрока> — удаляет пароль из учетной записи.​
/nlogin verify <Ник игрока> — выводит список информации из учетной записи.​
/nlogin reload — перезагружает настройки плагина.​
/nlogin update — управление настройками обновления.​
/nlogin spawn <операция> <тип> — управление механизмом телепортации.​

/2fa <2fa> [аргументы] — используется для настройки второго фактора.
/changepassword <текущий пароль> <новый пароль> — изменяет зарегистрированный пароль.
/cracked — помечает учетную запись как взломанную.
/login <пароль> — аутентификация зарегистрированного игрока.
/premium — помечает учетную запись как премиум.
/register — регистрирует пароль.
/unregister — отменить регистрацию учетной записи. (по умолчанию команда отключена)

Права плагина nLogin Premium:​

nlogin.admin — отличает игрока от администратора. Используется для отправки уведомлений, предоставления доступа к административным командам и т.д.
nlogin.dupeip — предоставляет доступ к команде /nlogin dupeip.
nlogin.verify — предоставляет доступ к команде /nlogin verify.
nlogin.discord — Предоставляет доступ к 2fa через Discord.
nlogin.email — Предоставляет доступ к 2fa через электронную почту.
nlogin.twitter — Получает доступ к 2fa через Twitter.
nlogin.bypass.email — избавляет от необходимости регистрировать электронную почту, если включена опция require-email.

Конфигурация плагина nLogin Premium:​

config.yml:
####################################################################################################
# +----------------------------------------------------------------------------------------------+ #
# |                                          __             _                                    | #
# |                                 _ __   / /  ___   __ [I]([/I])_ __                                | #
# |                                | '_ \ / /  / _ \ / [I]` | | '[/I] \                               | #
# |                                | | | / /__| ([I]) | ([/I]| | | | | |                              | #
# |                                |[I]| |[/I]\[B][B]/\[I][/B]/ \[/B], |[I]|[/I]| |[/I]|                              | #
# |                                                    |___/                                     | #
# |                                                                                              | #
# |                      A practical, secure and friendly authentication plugin                  | #
# |                                                                                              | #
# |                                © 2022 - Powered by nickuc.com                                | #
# |                                                                                              | #
# |                                                                                              | #
# |  For a better understanding of this file see our documentation:                              | #
# |   ==> https://docs.nickuc.com/nlogin                                                     | #
# |                                                                                              | #
# |  New options are not automatically added in this file. Default values are used               | #
# |  if an option is not found.                                                                  | #
# +----------------------------------------------------------------------------------------------+ #
####################################################################################################

# Set the version of the file.
file-version: 2

# Sets the debugging mode.
# - This option is used to find problems in the plugin.
debug: false

# Set the language of the plugin
#
# - Available translations:
#
#  |=> Chinese: messages_cn.yml
#  |=> Chinese: messages_cn.yml
#  |=> Czech: messages_cz.yml
#  |=> German: messages_de.yml
#  |=> English: messages_en.yml
#  |=> Spanish: messages_es.yml
#  |=> French: messages_fr.yml
#  |=> Hungarian: messages_hu.yml
#  |=> Lithuanian: messages_lt.yml
#  |=> Polish: messages_pl.yml
#  |=> Portuguese: messages_br.yml
#  |=> Romanian: messages_ro.yml
#  |=> Russian: messages_ru.yml
#  |=> Turkish: messages_tr.yml
#  |=> Other languages: https://github.com/nickuc/OpeNLogin/blob/master/docs/lang.md
#
# - When changing the language, the current file can be reset.
languageFile: "messages_en.yml"

#      ___      _        _
#     /   \__ [I]| |[/I] __ [I]| |[I][/I]   [I][/I] _ [B][/I]  _[/B]
#    / /\ / [I][ICODE] | _[/I]/ [I][/ICODE] | '[/I] \ / [I]` / _[/I]|/ _ \
#   / /[I]// ([/I]| | || ([I]| | |[/I]) | ([I]| \[I][/I] \  _[/I]/
#  /[B][I],' \[/B],[I]|\[/I][/I]\[B],[I]|[/I].[/B]/ \[B],[I]|[/I][/B]/\___|

# Database settings.
database:
  # Sets the type of database used.
  #
  # - Options available:
  #  |=> MySQL
  #  |=> SQLite
  type: SQLite

  remote:
    # Defines MySQL information.
    # - Tutorial for installation: https://docs.nickuc.com/nlogin-mysql
    address: "localhost:3306"
    database: "nLogin"
    user: "root"
    password: ""

    # Set the connection properties.
    # - Don't change this information if you don't know what you are doing!
    properties:
      #useSSL: false
      #verifyServerCertificate: false
      useUnicode: true
      characterEncoding: "utf8"

  # Defines the connection pool settings.
  # - Don't change this information if you don't know what you are doing!
  pool-settings:
    maximum-pool-size: 10
    minimum-idle: 10
    maximum-lifetime: 1800000 # 30 minutes
    connection-timeout: 5000 # 5 seconds

  table:
    account:
      # Sets the name of the nLogin accounts table.
      # - Don't change this information if you don't know what you are doing!
      table-name: "nlogin"

      # Sets the name of the nLogin columns.
      # - Don't change this information if you don't know what you are doing!
      columns:
        id: "id"
        name: "name"
        real_name: "realname"
        unique_id: "uniqueId"
        premium_id: "premiumId"
        password: "password"
        premium: "premium"
        address: "address"
        reg_date: "regdate"
        last_login: "lastlogin"
        email: "email"
        twitter: "twitter"
        discord: "discord"
        settings: "settings"

    data:
      # Sets the name of the nLogin data table.
      # - Don't change this information if you don't know what you are doing!
      table-name: "nlogin_data"

      # Sets the name of the nLogin columns.
      # - Don't change this information if you don't know what you are doing!
      columns:
        id: "id"
        key: "key"
        value: "value"

#                           _____       _             __
#   /\ /\  [B]_  [I][/B] _ [I][/I]    \[/I]   \_ __ | |_ [B]_ _ __ / [I]| [I][/I] _  [I][/B] _[/I][/I]
#  / / \ \/ [B]|/ _ \ '[/B]|    / /\/ '_ \| [B]/ _ \ '[/B]| |_ / [I]` |/ _[/I]/ _ \
#  \ \[I]/ /\[I][/I] \  [I][/I]/ |    /\/ /[/I] | | | | ||  __/ |  |  [I]| ([/I]| | ([I]|  _[/I]/
#   \[B][I]/ |[/I][/B]/\[B][I]|[/I]|    \[B][/B]/ |[I]| |[/I]|\[B]\[I][/B]|[I]|  |[/I]|  \[B],[I]|\[/I][/B]\[/I][/B]|

# User Interface settings.
ui:
  # Sets whether on-screen messages will be sent.
  use-title-bar: true

  # Sets whether messages in actionbars will be sent.
  use-action-bar: true

  # Sets whether the time remaining message will be sent.
  actionbar-counter: true

  # Sets whether sound effects will be sent.
  use-sounds: true

  # Sets whether interactive messages will be sent.
  use-chat-component: true

#     __        _
#     \ \  ___ ([I])[/I] __
#      \ \/ _ \| | '_ \
#   /\[I]/ / ([/I]) | | | | |
#   \[B][I]/ \[/I][/B]/|[I]|[/I]| |_|

# Join configuration.
join:
  # Sets whether the chat should be cleaned upon joining the server.
  clean-chat-on-join: true

  # Sets whether the input message will be removed.
  remove-join-message: true

#   _____     _                       _
#  /__   \[B][I]| | [I][/B] _ [I][/I]   _[/I][/I]  _ __| |_
#    / /\/ _ \ |/ _ \ '_ \ / _ \| '__| __|
#   / / |  __/ |  __/ |[I]) | ([/I]) | |  | |_
#   \/   \[B][I]|[/I]|\[I][/B]| .[B]/ \[/I][/B]/|[I]|   \_[/I]|
#                   |_|

# Teleport settings.
teleport:
  # Sets whether the player will be teleported to a safe position upon entering.
  # - It is recommended to activate the option if no spawn has been set.
  safe-location: false

  # Defines if the player will be teleported to the last location upon exit.
  last-location: true

  # Defines if the player will be teleported to the spawn upon death.
  teleport-on-death: true

#     __ _           _
#    / /([I])[/I] __ [B]_ | |[/B]   ___
#   / / | | '_ ` _ \| '_ \ / _ \
#  / /__| | | | | | | |[I]) | ([/I]) |
#  \[B][B]/[I]|[/I]| |[I]| |[/I]|[I].[/B]/ \[/I][/B]/

# Limbo settings.
# - Limbo is the player information protection system.
# - In case of an abrupt shutdown (e.g. power failure), the
#   limbo files will go into action.
limbo:
  # Defines whether the limbo should hide the players' information.
  #
  # => Player info list:
  #  - speed and flight mode;
  #  - speed when walking;
  #  - life;
  #  - satiety;
  #  - [...]
  #
  # - It is recommended to disable this option in case of conflicts with other
  #   plugins that handle these options (e.g. lobby plugins).
  hide-player-stats: true

  # Sets the time to wait for player information to be hidden.
  #
  # => The value provided must be in ticks. To calculate the required ticks,
  #    multiply the value (in seconds) by 20.
  #
  #   - Example:
  #      2 seconds X 20 ticks = 40 ticks
  #
  hide-player-stats-delay: 0

  inventory:
    # Sets whether items should be hidden before logging in.
    hide-inventory: true

    # Defines whether acceleration should be used.
    # - This option hides items more optimally, but requires
    #   the installation of ProtocolLib and may cause problems with plugins
    #   that require the inventory to be empty before login (e.g. nAntiBot)
    fast-hide-inventory: true

  # Sets whether other players should be hidden before logging in.
  # - This option can prevent spamming of bots in the server's player list.
  hide-players-before-login: true

  # Defines whether the movement should be locked before authenticating.
  block-player-walk: true

#     ___                    _
#    / _ \_ __ [B]_ _ __ [I][/B] ([I])[/I]   _ _ [I][/I] [B][/I]   __/\[/B]
#   / /[I])/ '[I][/I]/ _ \ '[/I] [ICODE] _ \| | | | | '_ [/ICODE] _ \  \    /
#  / ___/| | |  __/ | | | | | | |[I]| | | | | | | /[/I]  _\
#  \/    |[I]|  \[B][/I]|[I]| |[/I]| |[I]|[/I]|\[/B],[I]|[/I]| |[I]| |[/I]|   \/

# Paid features of the plugin (premium version).
premium:
  # Defines the type of unique id for users.
  #
  # - Options available:
  #  |=> REAL [recommended]
  #  |=> RANDOM
  #  |=> OFFLINE
  #
  # - You can change this option freely: already registered users
  #   will NOT be affected by this change. Consequently, your users will
  #   continue to have the items and achievements after the change.
  #
  # - For more information, access the documentation:
  #    * https://docs.nickuc.com/nlogin-uuid
  unique-id-type: REAL

  autologin:
    bedrock:
      # Defines whether Bedrock players should authenticate automatically.
      # - You can change this setting freely: already registered users
      #   will NOT be vulnerable by this change
      enable: true

      # Sets whether Bedrock players should skip registration.
      # - It is recommended to disable this option if you use player passwords
      #   in a web integration (e.g. server site).
      skip-register: true

    premium:
      # Defines whether premium players should authenticate automatically.
      # - You can change this setting freely: already registered users
      #   will NOT be vulnerable by this change
      enable: true

      # Defines whether premium players should skip registration.
      # - It is recommended to disable this option if you use player passwords
      #   in a web integration (e.g. server site).
      skip-register: true

      # Defines whether premium nicknames will receive a notification to mark their account as premium or not.
      # - Changing this option will only be done if you use the UUID "RANDOM" or "OFFLINE".
      #   Otherwise premium players will be automatically marked as premium
      #   in order to keep the real UUID from Mojang.
      ask-via-notification: true

      # Sets whether cracked players can use premium player nicknames.
      # - The option will only change if you use the "REAL" UUID.
      #   Otherwise, cracked players will be allowed by default.
      allow-cracked-users: true

    session:
      # Defines whether login sessions will be used.
      # - Authentication will be ignored if the player logs in at the timeout
      #   and continues using the same ip address.
      enable: true

      # Sets the length of login sessions.
      # => Very long session times may open vulnerabilities if the player's IP
      #   is public (proxies, public VPNs, shared networks)
      #   or if it switches too quickly (on ISPs with dynamic ip).
      # - To make a session permanent use the value 0. However, this is inadvisable.
      duration: 5

#     _       _                               _
#    /[I]\   [I][/I]| |[/I]   [B]__ _ _ __   [I][/B] __[/I]  __| |
#   //[I]\\ / [I][ICODE] \ \ / / _[/ICODE] | '[/I] \ / _[/I]/ _ \/ _` |
#  /  _  \ ([I]| |\ V / ([/I]| | | | | ([I]|  [I][/I]/ ([/I]| |
#  \[I]/ \[/I]/\[B],[I]| \[/I]/ \[/B],[I]|[/I]| |[I]|\__[/I]\[B][I]|\[/B],[/I]|

# Advanced features of the plugin.
advanced:
  unrestricted:
    # Defines the nicknames that will skip the authentication process.
    #
    # - This option can be useful for MODS or plugins that spoof
    #   the behavior of a player.
    #
    #   - Examples:
    #    - '[ThaumcraftTablet]'
    #    - '[BuildCraft]'
    #    - 'ComputerCraft'
    #
    # => Use this feature at your own risk.
    unrestricted-names: []

    # Sets the name of the inventories that will not be locked before login.
    # - If you are a developer, it is best to use a higher priority for
    #   your inventory event (e.g. HIGH or HIGHEST), and then remove
    #   the nLogin cancel - "Event#setCancelled(false)"
    unrestricted-inventories: []

  # Client (player) related resources.
  client:
    # Define whether the nLogin language should be adapted to the Minecraft language.
    language-by-client: false

    # Defines whether advertisements should be sent in-game.
    # - Advertisements are only sent to administrators.
    # - Advertisements are sent out rarely and include
    #   new plugins or features from NickUC projects
    advertising: true

    # Defines the list of commands to be executed after registering.
    #
    # - Options available:
    #  |=> @console: executes the command on the console.
    #  |=> @delay <time in seconds>: adds a delay to the command.
    #  |=> @proxy: runs the command on the proxy server (only if you are using one).
    #  |=> @server <servers divided by ",">: executes the command only if the player is connected to a
    #      list of specific servers (only if using a proxy server).
    #
    #      Example: @server lobby1,lobby2
    #
    commands-after-register:
      #- "@console tell @player Welcome to the server!" # run in console
      #- "@delay 40 /kit starter" # wait for 40 ticks (2s)

    # Defines the list of commands to be executed after authenticating.
    #
    # - Options available:
    #  |=> @console: executes the command on the console.
    #  |=> @delay <time in seconds>: adds a delay to the command.
    #  |=> @proxy: runs the command on the proxy server (only if you are using one).
    #  |=> @server <servers divided by ",">: executes the command only if the player is connected to a
    #      list of specific servers (only if using a proxy server).
    #
    #      Example: @server lobby1,lobby2
    #
    commands-after-login:
      #- "@console @proxy send @player lobby" # run in proxy console (bungee, velocity, etc.)

    # Define a lista de comandos permitidos antes de autenticar-se.
    allowed-commands:
      - "/loginstaff"

#     ___                                    _
#    / _ \__ _ [B]_ [B][I][/B]      __[/I][/B]  _ __ [B]| |_[/B]
#   / /[I])/ _` / _[/I]/ [B]\ \ /\ / / _ \| '[/B]/ [I]` / _[/I]|
#  / [B][I]/ ([/I]| \[/B] \__ \\ V  V / ([I]) | | | ([/I]| \__ \
#  \/    \[B],[I]|[/I][/B]/[B][I]/ \[/I]/\[I]/ \[/I][/B]/|[I]|  \[I][/I],[I]|_[/I][/I]/

# Password settings.
passwords:
  # Sets the minimum password size.
  small: 5

  # Sets maximum password size.
  large: 15

  bruteforce:
    # Sets the maximum number of incorrect attempts a player can make.
    # - When using the value "1" the player will be disconnected immediately when he makes a mistake.
    max-login-tries: 1

    # Defines whether brute-force attacks will be punished automatically.
    # - After too many incorrect attempts, the suspect IP address will be blocked.
    auto-punish: true

    # Sets the punishment time for a suspected brute force attack (in minutes).
    punishment-duration: 15

  insecure-passwords:
    # Defines whether the player will be warned when using an insecure password.
    warn: true

    # Sets the weak password detection level:
    #
    # - Available levels:
    #  |=> 1: checks if it contains letters [abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ]
    #  |=> 2: checks if it contains numbers [0123456789]
    #  |=> 3: checks if it contains symbols [!@#$%&*()-_]
    #
    # - Using the value "123" will perform all three checks.
    level: "123"

  hashing:
    # Defines the hashing algorithm used.
    #
    # - Options available:
    #
    #  | The computational cost of hashings should increase (but not necessarily) from the bottom up.
    #  |=> MD5
    #  |=> SHA256
    #  |=> SHA512
    #  |=> BCRYPT2Y
    #  |=> BCRYPT2A
    #  |=> PBKDF2
    #  |=> ARGON2ID
    #  |=> ARGON2I
    #  |=> ARGON2D
    #
    algorithm: "SHA512"

    bcrypt:
      rounds: 10

    argon2:
      iterations: 10
      memory: 64
      parallelism: 1

#   __                      _ _
#  / [I]\ [B][/I]  [I][/B] _   _ _ _[/I]([I]) |[/I] _   _
#  \ \ / _ \/ [B]| | | | '[/B]| | __| | | |
#  [I]\ \  [I][/I]/ ([I][/I]| |[I]| | |  | | |[/I]| |[/I]| |
#  \[B]/\[I][/B]|\[B][/I]|\[/B],[I]|[/I]|  |[I]|\[I][/I]|\_[/I], |
#                                 |___/

# General security settings.
security:
  address-limiter:
    # Sets whether the per-IP account limiter should be used.
    # - This option can prevent fake accounts.
    enable: true

    # Sets the maximum number of records per ip address.
    limit: 1

    # Defines the list of IPs that ignore the limitation.
    bypass:
      - '127.0.0.1'
      - 'localhost'

  # Sets the time for a player to authenticate (in seconds).
  time-to-login: 45

  # Sets whether high-risk nLogin commands will be disabled in-game.
  # - This option can prevent hacking attacks that remove admin registration.
  disable-high-risk-commands: true

  # Set the regex for nickname validation.
  nickname-regex: '([a-zA-Z0-9_]{3,16})'

#     ___                                          _
#    / [B]\[I][/B]  _ [I][/I] [B][/I]  _ __ [I][/B]   [I][/I] _ _ _[/I]   [B]| |_[/B]
#   / /  / _ \| '_ [ICODE] _ \| '_ [/ICODE] _ \ / [I][ICODE] | '[/I] \ / [I][/ICODE] / _[/I]|
#  / /[B]| ([I]) | | | | | | | | | | | ([/I]| | | | | (_| \[/B] \
#  \[B][B]/\[I][/B]/|[I]| |[/I]| |[I]|[/I]| |[I]| |[/I]|\[B],[I]|[/I]| |[/I]|\[/B],[I]|[/B][/I]/

# Command settings.
commands:
  2fa:
    enabled: true
    commands: [2fa]
    description: Command to configure 2fa.
  changepassword:
    enabled: true
    commands: [changepassword, changepass]
    description: Command to change the password.
  cracked:
    enabled: true
    commands: [cracked]
    description: Command to mark your account as cracked.
  login:
    enabled: true
    commands: [login, l, log]
    description: Command to login on the server.
  premium:
    enabled: true
    commands: [premium]
    description: Command to mark your account as premium.
  register:
    enabled: true
    commands: [register, reg]
    description: Command to register an account.
  unregister:
    enabled: false
    commands: [unregister]
    description: Command to unregister.

Установка плагина nLogin Premium:​

  1. Скачайте плагин.
  2. Выключите сервер
  3. Переместите файл .jar в папку /plugins/ вашего сервера.
  4. Запустите сервер.
  5. Готово.

Настройка плагина nLogin Premium совестно с BungeeGuard+​

В этом руководстве вы узнаете, как настроить BungeeGuard+ на своем сервере.

Введение​

Инсталляции BungeeCord по умолчанию небезопасны и требуют настройки дополнительных правил брандмауэра (с помощью iptables или иным способом) для предотвращения обхода прокси-сервера и подключения злоумышленников с использованием любого uuid/имени пользователя.
Эта проблема хорошо известна, и в течение многих лет многие (даже крупные) серверы успешно подвергались подобным атакам.

Традиционное решение​

Традиционное решение, рекомендуемое автором BungeeCord, заключается в настройке правила брандмауэра с помощью iptables или ufw для предотвращения внешних подключений к внутренним серверам.

Однако здесь есть две основные проблемы:​

  1. Настройка этих правил брандмауэра сложна, особенно для неопытных пользователей.
    • Даже опытные пользователи иногда допускают ошибки или упускают что-то из виду. Если настройка не является абсолютно идеальной, правила могут быть нарушены при последующих изменениях или сброшены при перезагрузке системы.
  2. Пользователи "виртуального хостинга" не имеют доступа к базовой системе и, скорее всего, не смогут настроить собственные правила брандмауэра.

Решение BungeeGuard​

Администраторы серверов устанавливают BungeeGuard+ (обычный плагин!) на свои прокси и внутренние серверы.
  • На прокси-сервере BungeeGuard+ добавляет секретный "токен аутентификации" к рукопожатию при входе в систему.
  • На внутреннем сервере (Spigot и т.п.) BungeeGuard+ проверяет квитанции на наличие в них разрешенного маркера аутентификации.
Все очень просто.

Установка​

Если у вас есть доступ к базовой системе и вы можете настроить правила межсетевого экрана с помощью iptables (или иным способом), настоятельно рекомендуется сделать это. Затем установите и BungeeGuard.

На вашем прокси-сервере...​

Если вы используете BungeeCord
  1. Убедитесь, что в файле config.yml BungeeCord для параметра ip_forward установлено значение true.
  2. Добавьте файл BungeeGuard.jar в папку plugins. Затем перезапустите прокси-сервер. Если в вашей сети несколько прокси, выполните эти действия для каждого из них.
  3. Перейдите в папку /plugins/BungeeGuard/token.yml и запишите токен.
Если вы используете Velocity
  1. Убедитесь, что вы используете Velocity 1.1.0 или более новую версию. (Нет необходимости устанавливать BungeeGuard.jar - он уже встроен в Velocity!)
  2. Установите в velocity.toml для player-info-forwarding-mode значение "bungeeguard" и обратите внимание на forwarding-secret. Это значение используется для токена BungeeGuard. Если в сети установлено несколько прокси-серверов, выполните эти действия для каждого из них.
  3. Перезапустите прокси-сервер.
На каждом из ваших внутренних серверов Minecraft...
  1. Убедитесь, что вы используете Paper 1.9.4+ или у вас установлен ProtocolLib.
  2. Убедитесь, что параметр bungeecord установлен в значение true в файле spigot.yml.
  3. Добавьте файл BungeeGuard.jar в папку plugins. Затем перезапустите сервер.
  4. Перейдите в папку /plugins/BungeeGuard/config.yml. Добавьте токен(ы), сгенерированный(ые) прокси-сервером(ами), в список разрешенных токенов.
    YAML:
    # Разрешенные токены аутентификации.
    allowed-tokens:
      - "AUSXEwebkOGVnbihJM8gBS0QUutDzvIG009xoAfo1Huba9pGvhfjrA21r8dWVsa8"
  5. Запустите bungeeguard reload из консоли.

Автор

bobobo

Еще ресурсы от bobobo

[AKL] File Manager
[AKL] File Manager
Файловый менеджер позволяет AdminCP управлять файлами и папками, загружать файлы.
The Search
The Search
Прячьте различные блоки (или сущности) в своих лобби и заставляйте игроков находить их
SkyGrid
SkyGrid
Прыгайте между блоками в этом уникальном мире небесной сетки; сможете ли вы выжить и процветать?
Crucible or MythicCrucible DEV BUILDS
Crucible or MythicCrucible DEV BUILDS
Девверсия плагина MythicCrucible (или Crucible)
⭐ FUNGAMES ⭐
⭐ FUNGAMES ⭐
• Casino, Presents, LuckyBlocks, Glowing, Events, Easter eggs, HeadHunt, Sliding Puzzles
⭐ BattlePass ⭐
⭐ BattlePass ⭐
Самый продвинутый плагин квестов
AdvancedJobs
AdvancedJobs
20+ профессий, беспрерывные награды, уровни заданий и легкая настройка для максимального вовлечения
Model Engine Premium 4.x
Model Engine Premium 4.x
Создание и управление модоподобными моделями сущностей без каких-либо модов.
AdvancedMobs
AdvancedMobs
Добавьте 20+ новых мобов в свой мир ⭐ Без ресурспака ⭐ Случайные спавны ⭐ Стак мобов и спавнеров
Winter - Christmas & Winter 2-in-1 Suite
Winter - Christmas & Winter 2-in-1 Suite
Добавляйте частицы снега и рельефный снег, рождайте снеговиков, ставьте сундуки с подарками и многое
ВерхНиз