Как установить SkinsRestorer

1. Подготовка окружения на proxify.cloud

  1. Войди в панель proxify.cloud и выбери нужный выделенный сервер (Dedicated Server) с установленным Ubuntu.
  2. Открой консоль сервера через кнопку Console в панели Proxmox или подключись по SSH:
    ssh root@<IP-адрес_сервера>
    
    IP-адрес указан в разделе «Network» панели proxify.cloud.
  3. Обнови пакеты и установи необходимые утилиты:
    apt update && apt upgrade -y
    apt install -y wget curl unzip openjdk-21-jre-headless screen
    
    SkinsRestorer требует Java 17+. На Ubuntu 22.04/24.04 по умолчанию ставится 21 — это нормально.

2. Определение типа ядра сервера

SkinsRestorer работает как плагин (Spigot/Paper/Purpur/Folia) или мод (Fabric/Forge/NeoForge). Определи, что у тебя стоит:

ls -la /home/minecraft/server.jar 2>/dev/null || find /home -name "*.jar" -type f 2>/dev/null | head -5

Типичные пути на proxify.cloud:

  • Панель Pterodactyl (если стоит поверх): /var/lib/pterodactyl/volumes/<uuid>/server.jar
  • Ручная установка: /home/minecraft/server.jar или /opt/minecraft/server.jar

Запиши путь к ядру и его тип (Paper, Fabric и т.д.).

3. Установка на Spigot/Paper/Purpur/Folia (плагин)

3.1. Скачивание плагина

  1. Перейди в папку сервера:
    cd /home/minecraft   # или твой путь
    mkdir -p plugins
    cd plugins
    
  2. Скачай последнюю стабильную версию с официального ресурса (SpigotMC resource ID 56653) или с GitHub Releases:
    wget -O SkinsRestorer.jar "https://github.com/SkinsRestorer/SkinsRestorer/releases/latest/download/SkinsRestorer.jar"
    
    Если wget ругается на сертификат, добавь --no-check-certificate.

3.2. Запуск для генерации конфига

  1. Запусти сервер один раз (если не запущен), чтобы плагин создал файлы:
    cd /home/minecraft
    java -Xms2G -Xmx4G -jar server.jar --nogui
    
    Дождись строки Done! и останови сервер командой stop в консоли.

3.3. Настройка config.yml

  1. Открой конфиг:
    nano plugins/SkinsRestorer/config.yml
    
  2. Основные параметры, которые нужно проверить/изменить:
    # Язык сообщений
    language: "ru_RU"
    
    # Скин по умолчанию (если у игрока нет скина)
    defaultSkin: "Steve"
    
    # Использовать ли кэш скинов (рекомендуется true)
    cache:
      enabled: true
      expireTime: 86400  # 24 часа в секундах
    
    # Источник скинов: MOJANG, MINESKIN, CUSTOM
    skinSource: "MOJANG"
    
    # Разрешить смену скина командой /skin
    allowSkinChange: true
    
    # Обновлять скин при заходе (true = всегда актуальный)
    updateOnJoin: true
    
    # База данных (H2 по умолчанию, для больших серверов — MySQL)
    storage:
      type: "H2"
      # Для MySQL раскомментируй и заполни:
      # type: "MYSQL"
      # host: "127.0.0.1"
      # port: 3306
      # database: "skinsrestorer"
      # username: "minecraft"
      # password: "strong_password"
    
  3. Сохрани: Ctrl+O, Enter, Ctrl+X.

3.4. Права доступа (Permissions)

Дай права нужным группам через LuckPerms или другой менеджер:

# Пример для LuckPerms в консоли сервера
/lp group default permission set skinsrestorer.skin true
/lp group default permission set skinsrestorer.skin.others true
/lp group vip permission set skinsrestorer.nametag true
/lp group admin permission set skinsrestorer.* true

Основные ноды:

  • skinsrestorer.skin — базовая команда /skin
  • skinsrestorer.skin.others — менять скин другим (/skin <ник> <скин>)
  • skinsrestorer.nametag — менять неймтег (/nametag)
  • skinsrestorer.cape — плащи (если включено)
  • skinsrestorer.reload — перезагрузка конфига (/sr reload)

4. Установка на Fabric/Forge/NeoForge (мод)

4.1. Fabric

  1. Останови сервер.
  2. Положи мод в папку mods:
    cd /home/minecraft
    mkdir -p mods
    cd mods
    wget -O SkinsRestorer-fabric.jar "https://github.com/SkinsRestorer/SkinsRestorer/releases/latest/download/SkinsRestorer-fabric.jar"
    
  3. Конфиг появится после первого запуска: config/skinsrestorer.toml. Синтаксис TOML, параметры аналогичны YAML.

4.2. Forge/NeoForge

cd /home/minecraft/mods
wget -O SkinsRestorer-forge.jar "https://github.com/SkinsRestorer/SkinsRestorer/releases/latest/download/SkinsRestorer-forge.jar"

Конфиг: config/skinsrestorer-common.toml (общий) и config/skinsrestorer-client.toml (клиентская часть, на сервере не используется).

5. Настройка BungeeCord / Velocity (прокси)

Если сервер за прокси, плагин/мод нужен на бэкенде (где игроки играют). На прокси ставится отдельный плагин для синхронизации скинов в таб-листе:

5.1. Velocity

cd /home/velocity/plugins
wget -O SkinsRestorer-Velocity.jar "https://github.com/SkinsRestorer/SkinsRestorer/releases/latest/download/SkinsRestorer-Velocity.jar"

Запусти прокси, останови, настрой plugins/SkinsRestorer-Velocity/config.yml:

redis:
  enabled: false  # включи true, если несколько прокси/бэкендов
  host: "127.0.0.1"
  port: 6379

Требует Redis для кросс-серверной синхронизации.

5.2. BungeeCord / Waterfall

cd /home/bungee/plugins
wget -O SkinsRestorer-Bungee.jar "https://github.com/SkinsRestorer/SkinsRestorer/releases/latest/download/SkinsRestorer-Bungee.jar"

Конфиг аналогичен Velocity.

6. Настройка MySQL (рекомендуется для продакшена)

H2 хранит данные в файле plugins/SkinsRestorer/db.mv.db. При краше или переезде теряешь кэш. MySQL надежнее.

  1. Установи MySQL/MariaDB на тот же сервер (или используй внешний):
    apt install -y mariadb-server
    mysql_secure_installation
    
  2. Создай БД и пользователя:
    mysql -u root -p
    CREATE DATABASE skinsrestorer CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
    CREATE USER 'skinsrestorer'@'%' IDENTIFIED BY 'СложныйПароль123!';
    GRANT ALL PRIVILEGES ON skinsrestorer.* TO 'skinsrestorer'@'%';
    FLUSH PRIVILEGES;
    EXIT;
    
  3. В config.yml (плагин) или skinsrestorer.toml (мод) укажи:
    storage:
      type: "MYSQL"
      host: "127.0.0.1"
      port: 3306
      database: "skinsrestorer"
      username: "skinsrestorer"
      password: "СложныйПароль123!"
      poolSize: 10
    
  4. Перезапусти сервер. Таблицы создадутся автоматически.

7. Настройка фаервола и панели proxify.cloud

  1. В панели proxify.cloud → раздел Firewall (если включен) открой порты:
    • 25565 (TCP) — основной порт игры
    • 25575 (TCP) — RCON (если используешь)
    • 3306 (TCP) — MySQL (только если внешний доступ нужен, лучше закрыть и юзать 127.0.0.1)
  2. На самом Ubuntu (если ufw включен):
    ufw allow 25565/tcp
    ufw allow 25575/tcp
    ufw reload
    

8. Автозапуск через systemd (для ручной установки)

Создай сервис, чтобы сервер поднимался после ребута выделенного сервера proxify.cloud:

cat > /etc/systemd/system/minecraft.service <<'EOF'
[Unit]
Description=Minecraft Server (SkinsRestorer)
After=network.target mysql.service
Wants=mysql.service

[Service]
Type=simple
User=minecraft
Group=minecraft
WorkingDirectory=/home/minecraft
ExecStart=/usr/bin/java -Xms2G -Xmx4G -XX:+UseG1GC -jar server.jar --nogui
Restart=on-failure
RestartSec=10
StandardOutput=journal
StandardError=journal

[Install]
WantedBy=multi-user.target
EOF

Создай пользователя и дай права:

useradd -r -m -d /home/minecraft -s /bin/bash minecraft
chown -R minecraft:minecraft /home/minecraft
systemctl daemon-reload
systemctl enable minecraft
systemctl start minecraft

Логи смотри так:

journalctl -u minecraft -f

9. Проверка работоспособности

  1. Зайди на сервер.
  2. Введи команду:
    /skin Notch
    
    Твой скин должен смениться на скин Notch.
  3. Проверь таб-лист (Tab) — скин должен отображаться в голове.
  4. В консоли сервера не должно быть ошибок [SkinsRestorer] Error.

10. Обновление плагина/мода

cd /home/minecraft/plugins   # или /home/minecraft/mods
systemctl stop minecraft     # или stop в консоли панели
wget -O SkinsRestorer.jar "https://github.com/SkinsRestorer/SkinsRestorer/releases/latest/download/SkinsRestorer.jar"
systemctl start minecraft

Конфиг config.yml не перезаписывается, настройки сохраняются.


Возможные проблемы и решения

Проблема Причина Решение
Скин не меняется, в чате «Skin not found» Mojang API не отдает скин (лимит запросов, UUID не найден) 1. Включи кэш (cache.enabled: true).