Как включить белый список (Whitelist)
1. Подготовка и доступ к серверу через панель proxify.cloud
- Авторизуйтесь в панели управления proxify.cloud.
- В списке услуг выберите нужный выделенный сервер (Dedicated Server) с установленным Ubuntu.
- Перейдите во вкладку Console (Консоль) или VNC для прямого доступа к командной строке сервера.
Рекомендуется использовать SSH-клиент (Termius, PuTTY, OpenSSH) для комфортной работы:ssh root@<IP-адрес_сервера>. IP-адрес указан в деталях услуги в панели proxify.cloud. - Убедитесь, что вы находитесь в системе с правами
rootили пользователя, от имени которого запускается сервер (например,minecraft). Дальнейшие команды предполагают выполнение отrootс переключением на пользователя сервера при необходимости.
2. Остановка Minecraft-сервера перед редактированием конфигурации
Никогда не редактируйте server.properties или файлы whitelist.json, пока сервер запущен — изменения будут перезаписаны при сохранении мира или перезагрузке.
- Зайдите в консоль управления сервером (screen/tmux/systemd).
- Если используется systemd (стандарт для Ubuntu на proxify.cloud):
systemctl stop minecraft - Если сервер запущен в screen (сессия
mc):screen -r mc # В консоли сервера введите: stop # Дождитесь полной остановки (появление приглашения bash). - Если используется Docker (контейнер
mc-server):docker stop mc-server
- Если используется systemd (стандарт для Ubuntu на proxify.cloud):
- Проверьте, что процесс Java остановлен:
Команда не должна вернуть PID.pgrep -f "minecraft_server\|paper\|purpur\|fabric\|forge"
3. Редактирование server.properties — активация whitelist
Перейдите в директорию сервера. Типовые пути на выделенных серверах proxify.cloud:
/opt/minecraft/home/minecraft/server/var/lib/minecraft/root/minecraft(если запускали от root вручную)
cd /opt/minecraft # Замените на ваш реальный путьОткройте файл конфигурации:
nano server.propertiesНайдите параметр
white-list(в новых версиях —enforce-whitelistиwhite-list). Приведите к следующему виду:white-list=true enforce-whitelist=truewhite-list=true— включает проверку белого списка при входе.enforce-whitelist=true— критически важно: кикает игроков, не в списке, даже если они уже на сервере (после перезагрузки/релоада). Защищает от случаев, когда whitelist включили «на горячую» через консоль, но файл не обновился.
Сохраните:
Ctrl+O,Enter,Ctrl+X.
4. Управление белым списком: файлы и команды
4.1. Файл whitelist.json (современный формат, UUID)
Начиная с Minecraft 1.7.10/1.8, используется JSON с UUID. Путь: <путь_к_серверу>/whitelist.json.
Структура записи:
[
{
"uuid": "123e4567-e89b-12d3-a456-426614174000",
"name": "PlayerName"
}
]
Добавление игрока вручную (файловый метод):
Узнайте UUID игрока по нику через официальный API Mojang:
curl -s "https://api.mojang.com/users/profiles/minecraft/PlayerName" | jq .Ответ:
{"id":"123e4567e89b12d3a456426614174000","name":"PlayerName"}. Вставьте дефисы в UUID:123e4567-e89b-12d3-a456-426614174000.Отредактируйте файл:
nano whitelist.jsonДобавьте объект в массив. Если файл пуст или отсутствует — создайте массив
[].Сохраните и выйдите.
4.2. Команды в консоли сервера (оперативное управление)
Этот метод предпочтительнее — сервер сам обновит whitelist.json и применит изменения без рестарта.
Запустите сервер:
systemctl start minecraft # или screen -dmS mc java -Xms4G -Xmx4G -jar paper.jar noguiЗайдите в консоль:
screen -r mc # или journalctl -u minecraft -f (только чтение)Выполните команды (требует прав оператора/оператора консоли):
- Добавить игрока:
whitelist add PlayerName - Удалить игрока:
whitelist remove PlayerName - Посмотреть список:
whitelist list - Перезагрузить список с диска (если правили файл вручную):
whitelist reload - Включить/выключить принудительно (дублирует server.properties):
whitelist on whitelist off
- Добавить игрока:
Отсоединитесь от screen:
Ctrl+A, затемD.
5. Настройка прав доступа к файлам (важно для безопасности на Ubuntu)
На выделенном сервере proxify.cloud сервер должен работать от отдельного пользователя, а не от root.
Создайте пользователя (если нет):
adduser --disabled-password --gecos "" minecraftНазначьте владельца директории сервера:
chown -R minecraft:minecraft /opt/minecraft chmod -R 750 /opt/minecraftНастройте systemd-юнит
/etc/systemd/system/minecraft.serviceдля запуска отminecraft:[Unit] Description=Minecraft Server (Paper) After=network.target [Service] User=minecraft Group=minecraft WorkingDirectory=/opt/minecraft ExecStart=/usr/bin/java -Xms4G -Xmx4G -jar paper.jar nogui Restart=on-failure RestartSec=10 StandardInput=tty-force [Install] WantedBy=multi-user.targetПерезагрузите демон:
systemctl daemon-reload.
6. Автоматизация: скрипт для массового добавления (опционально)
Если нужно добавить список ников из файла players.txt (по одному нику в строке):
#!/bin/bash
# add_whitelist_bulk.sh
# Запуск: sudo -u minecraft bash add_whitelist_bulk.sh
SERVER_DIR="/opt/minecraft"
INPUT_FILE="players.txt"
cd "$SERVER_DIR" || exit 1
while IFS= read -r name; do
[[ -z "$name" ]] && continue
echo "Processing: $name"
uuid=$(curl -s "https://api.mojang.com/users/profiles/minecraft/$name" | jq -r '.id // empty')
if [[ -n "$uuid" ]]; then
# Форматируем UUID: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
uuid_fmt="${uuid:0:8}-${uuid:8:4}-${uuid:12:4}-${uuid:16:4}-${uuid:20:12}"
# Добавляем через jq в whitelist.json
tmp=$(mktemp)
jq --arg uuid "$uuid_fmt" --arg name "$name" '. + [{"uuid": $uuid, "name": $name}]' whitelist.json > "$tmp" && mv "$tmp" whitelist.json
echo "Added: $name ($uuid_fmt)"
else
echo "WARN: UUID not found for $name (name change or invalid?)"
fi
sleep 0.1 # Rate limit Mojang API
done < "$INPUT_FILE"
echo "Done. Run 'whitelist reload' in server console."
Сделайте исполняемым: chmod +x add_whitelist_bulk.sh.
7. Проверка работоспособности
- Убедитесь, что сервер запущен:
systemctl status minecraft. - Зайдите в консоль:
screen -r mc. - Выполните
whitelist list. Должен вывестись список UUID и ников. - Попробуйте зайти на сервер с аккаунта, не в списке. Ожидаемое сообщение:
You are not whitelisted on this server!. - Зайдите с аккаунта, добавленного в whitelist. Вход должен пройти успешно.
- Проверьте
enforce-whitelist: добавьте себя в список, зайдите, затем удалите себя командойwhitelist remove YourNameне выходя с сервера. Через несколько секунд (обычно мгновенно) вас должно кикнуть с сообщениемYou are not whitelisted on this server!.
8. Резервное копирование whitelist.json
Настройте бэкап через панель proxify.cloud (снимки диска / Snapshots) или скриптом в cron:
# /etc/cron.daily/backup-mc-whitelist
#!/bin/bash
cp /opt/minecraft/whitelist.json /opt/backups/whitelist_$(date +%F).json
find /opt/backups -name "whitelist_*.json" -mtime +30 -delete
chmod +x /etc/cron.daily/backup-mc-whitelist.
Возможные проблемы и решения
1. Игрок не может зайти, хотя ник в whitelist list
- Причина: В
whitelist.jsonстарый ник, а игрок сменил имя. UUID совпадает, но сервер сверяет ник при логине (в новых версиях — только UUID, но кэш клиента/сервера может глючить). - Решение: Выполните
whitelist reloadв консоли. Сервер обновит ники по UUID из профилей Mojang. Либо удалите и добавьте заново:whitelist remove OldName->whitelist add NewName.
2. whitelist add пишет Player not found / Could not find profile
- Причина: Игрок никогда не покупал лицензию (пиратка) / ошибка в нике / проблемы с API Mojang.
- Решение:
- Для пиратских серверов (с плагином AuthMe и
online-mode=false): whitelist на уровне сервера не работает по UUID. Используйте плагин Whitelist (например, SimpleWhitelist или LuckPerms с нодойwhitelist.bypass) или настройтеwhitelistв BungeeCord/Velocity. - Для лицензионных: проверьте ник на https://namemc.com. Подождите 1-2 минуты (кэш API Mojang).
- Для пиратских серверов (с плагином AuthMe и
Комментарии (0)