Настройка разрешений и рангов на Bedrock сервере
Содержание
- 1 Настройка разрешений и рангов на Bedrock сервере
- 1.1 1. Подготовка
- 1.2 2. Система разрешений Bedrock
- 1.3 3. Настройка permissions.json
- 1.4 4. Управление через консоль
- 1.5 5. Связь с default-player-permission-level
- 1.6 6. Создание системы рангов
- 1.7 7. Автоматизация управления =
- 1.8 8. Получение XUID игроков
- 1.9 9. Примеры конфигураций для разных серверов
- 1.10 10. Валидация и безопасность =
- 1.11 11. Интеграция с другими системами =
- 1.12 12. Устранение неполадок =
- 1.13 Заключение
Настройка разрешений и рангов на Bedrock сервере
1. Подготовка
- Убедитесь, что Bedrock сервер установлен и находится в `/opt/bedrock`.
- Имейте права доступа для редактирования конфигурационных файлов.
- Знайте XUID игроков для назначения прав.
- Рекомендуется использовать Ubuntu 24.04 LTS.
2. Система разрешений Bedrock
Уровни разрешений
Bedrock сервер поддерживает три уровня разрешений:
1. visitor - минимальные права (только просмотр) 2. member - стандартные права игрока 3. operator - права администратора
Файл permissions.json
1. Расположение файла:
cd /opt/bedrock cat permissions.json
2. Базовая структура:
[
{
"permission": "operator",
"xuid": "1234567890123456"
}
]
3. Настройка permissions.json
Добавление оператора
1. Способ 1: Через консоль
screen -r minecraft-bedrock op PlayerName
2. Способ 2: Редактирование файла
cd /opt/bedrock nano permissions.json
3. Добавьте оператора:
[
{
"permission": "operator",
"xuid": "1234567890123456"
},
{
"permission": "operator",
"xuid": "9876543210987654"
}
]
4. Перезапустите сервер:
sudo systemctl restart minecraft-bedrock
Назначение разных уровней
1. Пример: Смешанные уровни разрешений
[
{
"permission": "operator",
"xuid": "1234567890123456"
},
{
"permission": "member",
"xuid": "2345678901234567"
},
{
"permission": "visitor",
"xuid": "3456789012345678"
}
]
Примеры конфигураций
1. Базовая конфигурация (1 оператор):
[
{
"permission": "operator",
"xuid": "1234567890123456"
}
]
2. Конфигурация для команды модераторов:
[
{
"permission": "operator",
"xuid": "1234567890123456"
},
{
"permission": "operator",
"xuid": "2345678901234567"
},
{
"permission": "operator",
"xuid": "3456789012345678"
},
{
"permission": "member",
"xuid": "4567890123456789"
}
]
3. Конфигурация с комментариями (в отдельном файле):
\# permissions.json
[
{
"permission": "operator",
"xuid": "1234567890123456"
}
]
\# permissions-notes.txt (создайте отдельный файл)
\# xuid 1234567890123456 - Владелец сервера
\# xuid 2345678901234567 - Главный модератор
\# xuid 3456789012345678 - Модератор
4. Управление через консоль
Команды операторов
1. Добавление оператора:
screen -r minecraft-bedrock op PlayerName
2. Удаление оператора:
deop PlayerName
3. Список операторов:
\# Проверьте permissions.json или используйте команды в консоли
Права оператора
Операторы могут использовать:
- Все команды управления сервером
- Управление игроками (kick, ban, pardon)
- Управление миром (weather, time, gamemode)
- Управление сущностями (summon, kill)
- Изменение блоков (fill, setblock)
- И другие административные команды
5. Связь с default-player-permission-level
Настройка уровня по умолчанию
1. Отредактируйте server.properties:
cd /opt/bedrock nano server.properties
2. Установите уровень по умолчанию:
default-player-permission-level=member \# Возможные значения: visitor, member, operator
3. Примеры:
\# Новые игроки только просматривают default-player-permission-level=visitor \# Новые игроки могут играть default-player-permission-level=member \# Новые игроки - операторы (не рекомендуется) default-player-permission-level=operator
Комбинация с whitelist
1. Сценарий: Приватный сервер
\# server.properties
white-list=true
default-player-permission-level=member
\# permissions.json - только операторы
[
{
"permission": "operator",
"xuid": "1234567890123456"
}
]
2. Сценарий: Публичный сервер
\# server.properties
white-list=false
default-player-permission-level=member
\# permissions.json - операторы и доверенные игроки
[
{
"permission": "operator",
"xuid": "1234567890123456"
},
{
"permission": "member",
"xuid": "2345678901234567"
}
]
6. Создание системы рангов
Ранги через permissions.json
Поскольку Bedrock имеет только 3 уровня, можно создать псевдо-ранги:
1. Уровень 1: Visitor - Гость 2. Уровень 2: Member - Игрок, VIP 3. Уровень 3: Operator - Модератор, Админ, Владелец
Документирование рангов
1. Создайте файл с описанием:
nano /opt/bedrock/ranks.txt
2. Добавьте описание:
=== Система рангов === Visitor: - Только просмотр мира - Не может ломать/ставить блоки - Не может взаимодействовать Member: - Стандартные права игрока - Может играть в выживании - Может строить и добывать VIP (Member): - Те же права, что Member - Отмечен в списке игроков Модератор (Operator): - Все права Member + Может кикать/банить игроков + Может телепортироваться + Может изменять режим игры Админ (Operator): - Все права Модератора + Может управлять сервером + Может изменять мир Владелец (Operator): - Все права Админа + Полный контроль сервера
7. Автоматизация управления =
Скрипт добавления оператора
1. Создайте скрипт:
sudo nano /usr/local/bin/bedrock-op-add.sh
2. Добавьте содержимое:
\#!/bin/bash
if [ -z "$1" ]; then
echo "Usage: $0 <player-name>"
exit 1
fi
PLAYER_NAME="$1"
PERMISSIONS_FILE="/opt/bedrock/permissions.json"
BACKUP_FILE="/opt/bedrock/permissions.json.backup"
\# Создание резервной копии
cp "$PERMISSIONS_FILE" "$BACKUP_FILE"
\# Добавление через консоль
screen -S minecraft-bedrock -X stuff "op $PLAYER_NAME$(printf \\r)"
echo "Player $PLAYER_NAME granted operator permissions"
echo "Restart server to apply permissions.json changes"
3. Сделайте исполняемым:
sudo chmod +x /usr/local/bin/bedrock-op-add.sh
4. Использование:
sudo /usr/local/bin/bedrock-op-add.sh PlayerName
Скрипт удаления оператора
1. Создайте скрипт:
sudo nano /usr/local/bin/bedrock-op-remove.sh
2. Добавьте содержимое:
\#!/bin/bash
if [ -z "$1" ]; then
echo "Usage: $0 <player-name>"
exit 1
fi
PLAYER_NAME="$1"
PERMISSIONS_FILE="/opt/bedrock/permissions.json"
BACKUP_FILE="/opt/bedrock/permissions.json.backup"
\# Создание резервной копии
cp "$PERMISSIONS_FILE" "$BACKUP_FILE"
\# Удаление через консоль
screen -S minecraft-bedrock -X stuff "deop $PLAYER_NAME$(printf \\r)"
echo "Player $PLAYER_NAME operator permissions revoked"
echo "Restart server to apply permissions.json changes"
3. Сделайте исполняемым:
sudo chmod +x /usr/local/bin/bedrock-op-remove.sh
4. Использование:
sudo /usr/local/bin/bedrock-op-remove.sh PlayerName
8. Получение XUID игроков
Метод 1: Через логи
1. Попросите игрока подключиться 2. Проверьте логи:
grep "PlayerName" /opt/bedrock/logs/*.log | grep xuid
Метод 2: Через консоль
1. Когда игрок онлайн, проверьте информацию через команды 2. XUID отображается в логах при подключении
Метод 3: Создание скрипта
1. Создайте скрипт:
sudo nano /usr/local/bin/bedrock-get-xuid.sh
2. Добавьте содержимое:
\#!/bin/bash
if [ -z "$1" ]; then
echo "Usage: $0 <player-name>"
exit 1
fi
PLAYER_NAME="$1"
\# Поиск XUID в логах
XUID=$(grep -i "$PLAYER_NAME" /opt/bedrock/logs/*.log | grep -o '"xuid":"[^"]*"' | head -1 | cut -d'"' -f4)
if [ -z "$XUID" ]; then
echo "XUID not found for player: $PLAYER_NAME"
echo "Player should connect to server first"
else
echo "XUID for $PLAYER_NAME: $XUID"
fi
3. Сделайте исполняемым:
sudo chmod +x /usr/local/bin/bedrock-get-xuid.sh
4. Использование:
sudo /usr/local/bin/bedrock-get-xuid.sh PlayerName
9. Примеры конфигураций для разных серверов
Пример 1: Маленький приватный сервер
\# permissions.json
[
{
"permission": "operator",
"xuid": "1234567890123456"
}
]
\# server.properties
default-player-permission-level=member
Пример 2: Средний публичный сервер
\# permissions.json
[
{
"permission": "operator",
"xuid": "1234567890123456"
},
{
"permission": "operator",
"xuid": "2345678901234567"
},
{
"permission": "operator",
"xuid": "3456789012345678"
}
]
\# server.properties
default-player-permission-level=member
Пример 3: Большой сервер с командой
\# permissions.json
[
{
"permission": "operator",
"xuid": "1234567890123456"
},
{
"permission": "operator",
"xuid": "2345678901234567"
},
{
"permission": "operator",
"xuid": "3456789012345678"
},
{
"permission": "operator",
"xuid": "4567890123456789"
},
{
"permission": "operator",
"xuid": "5678901234567890"
},
{
"permission": "member",
"xuid": "6789012345678901"
}
]
\# server.properties
default-player-permission-level=member
10. Валидация и безопасность =
Проверка формата JSON
1. Проверьте синтаксис:
python3 -m json.tool /opt/bedrock/permissions.json
2. Если есть ошибки, исправьте:
nano /opt/bedrock/permissions.json
Резервное копирование
1. Создайте резервную копию перед изменениями:
sudo cp /opt/bedrock/permissions.json /opt/bedrock/permissions.json.backup
2. Автоматическое резервное копирование:
sudo nano /usr/local/bin/bedrock-permissions-backup.sh
3. Добавьте содержимое:
\#!/bin/bash BACKUP_DIR="/backup/bedrock" DATE=$(date +%Y%m%d_%H%M%S) PERMISSIONS_FILE="/opt/bedrock/permissions.json" mkdir -p "$BACKUP_DIR" cp "$PERMISSIONS_FILE" "$BACKUP_DIR/permissions-$DATE.json" echo "Permissions backed up to: $BACKUP_DIR/permissions-$DATE.json"
4. Сделайте исполняемым:
sudo chmod +x /usr/local/bin/bedrock-permissions-backup.sh
Защита файла
1. Установите права доступа:
sudo chmod 644 /opt/bedrock/permissions.json sudo chown bedrock:bedrock /opt/bedrock/permissions.json
11. Интеграция с другими системами =
Связь с whitelist
1. Операторы автоматически получают доступ даже если их нет в whitelist 2. Для членов команды можно добавить в оба файла:
\# allowlist.json
[
{
"name": "Operator1",
"xuid": "1234567890123456"
}
]
\# permissions.json
[
{
"permission": "operator",
"xuid": "1234567890123456"
}
]
12. Устранение неполадок =
Игрок не получает права оператора
1. Проверьте XUID:
cat /opt/bedrock/permissions.json
2. Убедитесь, что перезапустили сервер после изменения файла
3. Проверьте через консоль:
screen -r minecraft-bedrock op PlayerName
Ошибки в permissions.json
1. Проверьте JSON:
python3 -m json.tool /opt/bedrock/permissions.json
2. Восстановите из резервной копии:
sudo cp /opt/bedrock/permissions.json.backup /opt/bedrock/permissions.json sudo systemctl restart minecraft-bedrock
Заключение
Настройка разрешений и рангов на Bedrock сервере позволяет эффективно управлять правами доступа игроков. Правильная конфигурация permissions.json и server.properties обеспечит безопасность и удобство управления сервером.
Для размещения ваших Bedrock серверов на надежном хостинге рекомендуем воспользоваться услугами [ARK-HOSTER.RU](https://ark-hoster.ru):
- [Выделенные серверы](https://ark-hoster.ru/dedicated/) - для высоконагруженных Bedrock серверов
- [VPS/VDS серверы](https://ark-hoster.ru/vpsgame/) - для небольших и средних серверов
Наши специалисты помогут с настройкой разрешений и рангов на Bedrock серверах!