Как разбанить игрока

Подготовка и доступ к серверу

  1. Авторизуйтесь в панели proxify.cloud
    Откройте https://proxify.cloud и войдите в свой аккаунт. В списке услуг найдите выделенный сервер с Ubuntu, на котором развёрнут Minecraft-сервер. Нажмите на название услуги, чтобы открыть карточку управления.

  2. Получите доступ к консоли сервера (Proxmox)
    В карточке услуги перейдите во вкладку Console (или VNC). Откроется веб-консоль Proxmox с уже загруженным Ubuntu. Войдите под пользователем, под которым запущен сервер (обычно minecraft, mc или root).
    Пример:

    login: minecraft
    password: ********
    
  3. Альтернатива: SSH-подключение
    Если предпочитаете терминал, подключитесь по SSH, используя IP-адрес сервера из панели proxify.cloud (раздел NetworkIPv4):

    ssh minecraft@<IP-адрес_сервера>
    

    При первом подключении подтвердите отпечаток ключа (yes), введите пароль или используйте ключ SSH, если он настроен в панели.

Определение типа бана и места хранения

  1. Узнайте, как запущен сервер
    Выполните:

    ps aux | grep -E '(java|bedrock)' | grep -v grep
    

    Обратите внимание на рабочую директорию (cwd) и имя jar-файла. Обычно это /home/minecraft/server, /opt/minecraft или /var/lib/minecraft.

  2. Перейдите в рабочую директорию сервера

    cd /home/minecraft/server   # замените на ваш путь
    pwd
    
  3. Проверьте наличие файлов бан-листов
    В ванильном Paper/Spigot/Purpur баны хранятся в двух файлах:

    • banned-players.json — баны по нику/UUID (игроки)
    • banned-ips.json — баны по IP-адресам

    Выполните:

    ls -la banned-*.json
    

    Если файлы есть — баны управляются движком сервера. Если их нет, но есть плагин (LuckPerms, AdvancedBan, LiteBans и др.) — смотрите раздел Работа с плагинами бана ниже.

Разбан через файлы сервера (Vanilla / Paper / Spigot / Purpur)

  1. Найдите UUID или ник игрока
    Откройте banned-players.json:

    cat banned-players.json | jq .
    

    Если jq не установлен:

    apt-get update && apt-get install -y jq
    

    Пример записи:

    [
      {
        "uuid": "123e4567-e89b-12d3-a456-426614174000",
        "name": "GriefMaster",
        "created": "2024-05-10 14:23:11 +0300",
        "source": "Console",
        "expires": "forever",
        "reason": "Griefing base"
      }
    ]
    
  2. Удалите запись о бане
    Способ А — через jq (безопасно, сохраняет форматирование):

    jq 'map(select(.name != "GriefMaster"))' banned-players.json > banned-players.json.tmp && mv banned-players.json.tmp banned-players.json
    

    Замените "GriefMaster" на нужный ник. Если известен только UUID:

    jq 'map(select(.uuid != "123e4567-e89b-12d3-a456-426614174000"))' banned-players.json > banned-players.json.tmp && mv banned-players.json.tmp banned-players.json
    

    Способ Б — ручное редактирование (nano/vim):

    nano banned-players.json
    

    Удалите весь объект { ... } для нужного игрока, сохраните (Ctrl+O, Enter), выйдите (Ctrl+X).

  3. Проверьте IP-бан (banned-ips.json)
    Аналогично:

    cat banned-ips.json | jq .
    

    Если IP игрока там есть — удалите запись тем же способом:

    jq 'map(select(.ip != "192.168.1.50"))' banned-ips.json > banned-ips.json.tmp && mv banned-ips.json.tmp banned-ips.json
    
  4. Перезагрузите сервер или примените изменения без рестарта

    • Полный рестарт (гарантированно работает): В панели proxify.cloud перейдите во вкладку Console и нажмите Restart (или выполните systemctl restart minecraft, если настроен systemd-юнит).
    • Горячая перезагрузка (только Paper/Spigot/Purpur): В консоли сервера (ввод команд в работающем процессе) выполните:
      pardon GriefMaster
      pardon-ip 192.168.1.50
      
      Команды сработают мгновенно, запись удалится из JSON-файлов автоматически.

Разбан через консоль сервера (RCON / встроенная консоль)

  1. Используйте веб-консоль proxify.cloud
    В карточке сервера в панели proxify.cloud откройте Console. Это stdin/stdout процесса Java. Вводите команды напрямую:

    pardon GriefMaster
    pardon-ip 192.168.1.50
    

    Сервер ответит:

    [Server thread/INFO]: GriefMaster has been pardoned.
    [Server thread/INFO]: 192.168.1.50 has been pardoned.
    
  2. RCON (если включён в server.properties)
    Параметры в server.properties:

    enable-rcon=true
    rcon.port=25575
    rcon.password=strongpassword
    

    Подключитесь с локальной машины или через контейнер:

    apt-get install -y rcon-cli
    rcon-cli -a 127.0.0.1:25575 -p strongpassword "pardon GriefMaster"
    rcon-cli -a 127.0.0.1:25575 -p strongpassword "pardon-ip 192.168.1.50"
    

Работа с плагинами бана (LuckPerms, AdvancedBan, LiteBans, BanManager)

  1. Определите установленные плагины

    ls plugins/ | grep -iE '(ban|luckperms|advancedban|litebans|banmanager)'
    
  2. LuckPerms (бан через permission luckperms.ban или команду /ban)

    • В консоли сервера:
      luckperms user GriefMaster permission unset luckperms.ban
      
      или, если использовался встроенный бан LuckPerms:
      luckperms user GriefMaster permission unset minecraft.command.ban
      
    • Проверьте настройки в plugins/LuckPerms/config.yml — секция ban может хранить баны в БД (MySQL/SQLite). Если БД — используйте веб-редактор:
      lp editor
      
      Откроется ссылка на веб-интерфейс (обычно http://<IP>:<PORT>), где можно удалить бан в разделе Users → GriefMaster → Permissions.
  3. AdvancedBan / LiteBans / BanManager (SQLite / MySQL)
    Эти плагины хранят баны в базе данных. Файлы конфигурации в plugins/<PluginName>/config.yml покажут тип хранилища.

    SQLite (файл .db в папке плагина):

    sqlite3 plugins/AdvancedBan/advancedban.db "DELETE FROM bans WHERE name='GriefMaster';"
    sqlite3 plugins/LiteBans/litebans.db "DELETE FROM bans WHERE uuid='123e4567-e89b-12d3-a456-426614174000';"
    

    MySQL/MariaDB (настройки в config.yml):

    mysql -u minecraft_user -p -e "USE minecraft_db; DELETE FROM bans WHERE name='GriefMaster';"
    

    Введите пароль БД при запросе. Параметры подключения возьмите из config.yml плагина:

    storage:
      type: mysql
      host: 127.0.0.1
      port: 3306
      database: minecraft_db
      username: minecraft_user
      password: "db_password"
    
  4. Перезагрузите плагин после ручной чистки БД
    В консоли сервера:

    advancedban reload
    # или
    litebans reload
    # или
    banmanager reload
    

Разбан на Bedrock-сервере (Bedrock Dedicated Server / Geyser + Floodgate)

  1. Проверьте тип сервера

    ps aux | grep bedrock
    

    Если запущен нативный bedrock_server — баны в файле permissions.json в папке сервера.

  2. Редактирование permissions.json

    cat permissions.json | jq .
    

    Структура:

    [
      { "permission": "ban", "xuid": "2535412345678901234" }
    ]
    

    Удалите объект с нужным xuid (Xbox User ID). Узнать xuid по нику можно через https://xuid.io или плагин Geyser.

    Удаление через jq:

    jq 'map(select(.xuid != "2535412345678901234"))' permissions.json > permissions.json.tmp && mv permissions.json.tmp permissions.json
    
  3. Если стоит Geyser + Floodgate на Java-сервере
    Баны Bedrock-игроков часто синхронизируются с Java-банлистом через Floodgate. Выполните стандартный pardon <ник> в консоли Java-сервера — это снимет бан и для Bedrock.

Проверка результата

  1. Попросите игрока зайти
    Игрок должен подключиться к IP сервера (видно в панели proxify.cloud → NetworkIPv4) и порту (по умолчанию 25565 для Java, 19132 для Bedrock).

  2. Проверьте логи сервера
    В консоли proxify.cloud или в файле logs/latest.log найдите строку:

    [User Authenticator #1/INFO]: UUID of player GriefMaster is 123e4567-e89b-12d3-a456-426614174000
    [Server thread/INFO]: GriefMaster[/192.168.1.50:12345] logged in with entity id