Palworld: REST API и RCON — как включить и зачем они нужны

Что такое RCON и REST API в Palworld, какие порты и ключи включают их, как проверить доступ и почему открывать их в интернет опасно.

Команда EGN 8 мин чтения
Palworld: REST API и RCON — как включить и зачем они нужны
Содержание 16
  1. Коротко
  2. Разница между RCON и REST API
  3. Шаги: включаем и проверяем
  4. Пример: бот, который сохраняет мир каждый час
  5. Как сделать в панели EGN
  6. Безопасность: что не делать
  7. Частые ошибки
  8. Таблица: что проверить, если RCON или REST API не отвечает
  9. Пример: проверка RCON через клиент
  10. Как устроен доступ по сети
  11. Итог
  12. Вопросы и ответы
  13. Какой порт у REST API Palworld?
  14. Какой порт у RCON Palworld?
  15. Что использовать для логина в REST API?
  16. Можно ли включить оба интерфейса сразу?

Обычный игрок заходит на сервер Palworld по адресу и паролю, а администратор и бот управляют им иначе. Есть два способа. RCON — протокол удалённой консоли, знакомый по другим играм. REST API — HTTP-интерфейс, который встроен в сам сервер. Оба дают команды вроде «показать игроков», «сохранить мир» или «кикнуть». Разберём, как их включить и не открыть лишнего.

Коротко

REST API включается ключом RESTAPIEnabled=True и работает на порту RESTAPIPort, по умолчанию 8212 по TCP. RCON включается ключом RCONEnabled=True, порт RCONPort, по умолчанию 25575 по TCP. Оба интерфейса защищены паролем AdminPassword из PalWorldSettings.ini. Наружу открывайте порт только тем адресам, которым доверяете.

Разница между RCON и REST API

RCON — текстовый протокол удалённой консоли. Вы подключаетесь по TCP, вводите пароль и отправляете команды вроде ShowPlayers или Save. Его используют боты и программы, которые умеют говорить на этом протоколе.

REST API — набор HTTP-запросов к серверу с ответами в формате JSON. По справочникам по Palworld в нём есть информация о сервере, список игроков, сохранение, объявления, кик, бан, выключение и метрики. Это удобнее для мониторинга и веб-панелей.

Что выбрать? Если нужны только «сохранить» и «список игроков», хватит RCON. Если строите панель мониторинга или интеграцию, берите REST API. Можно включить оба, но открывайте наружу только то, чем пользуетесь.

Шаги: включаем и проверяем

  1. Остановите сервер и откройте файл настроек PalWorldSettings.ini (подробности — в статье настройка PalWorldSettings.ini).
  2. Задайте админский пароль и включите нужные интерфейсы. Строка OptionSettings будет выглядеть так:
Конфиг
OptionSettings=(AdminPassword="длинный-уникальный-пароль",RCONEnabled=True,RCONPort=25575,RESTAPIEnabled=True,RESTAPIPort=8212)
  1. Сохраните файл и запустите сервер. Дождитесь готовности: в журнале должна появиться строка о запуске.
  2. Проверьте выдачу портов. В панели EGN откройте раздел «Сеть»: там видно адрес подключения и список портов тарифа. Порт RCON выдаётся отдельно. Если нужного порта в списке нет, его придётся выдать, иначе снаружи до сервера не достучаться.
  3. Проверьте REST API с другой машины. Он использует базовую аутентификацию HTTP: логин admin, пароль — значение AdminPassword. Запрос без пароля должен получать отказ, это признак того, что защита работает.
Терминал
# Проверка REST API с вашего компьютера (замените адрес и пароль)
curl -u admin:ВАШ_ADMIN_PASSWORD http://ВАШ_IP:8212/v1/api/info

Пути вида /v1/api/... соответствуют справочникам по REST API Palworld. Версии игры меняют набор запросов, поэтому перед использованием сверяйтесь с документацией вашей версии.

  1. Для RCON используйте клиент с поддержкой Source RCON. Подключитесь к адрес:25575 с тем же AdminPassword, отправьте ShowPlayers и убедитесь, что пришёл ответ со списком.

Пример: бот, который сохраняет мир каждый час

Представьте небольшого бота, который раз в час просит сервер сохраниться. Ему нужны адрес, порт и пароль. Пароль держите в переменной окружения, а не в тексте скрипта, и не публикуйте его в репозиториях:

Терминал
export PAL_ADMIN_PASSWORD='ВАШ_ADMIN_PASSWORD'

Для сохранения мир через REST API используется запрос POST /v1/api/save. Перед написанием бота проверьте метод и путь в документации своей версии. Скрипт запускайте по расписанию на отдельной машине, например на VPS. Если бот работает на той же машине, что и сервер, обращайтесь к 127.0.0.1 и не открывайте порт наружу совсем.

Как сделать в панели EGN

Команды администратора удобно отправлять из раздела «Консоль» панели: там же видно, что сервер пишет при старте и при сохранении.

Порты для RCON и REST API проверяйте в разделе «Сеть»: там адрес подключения и список выданных портов. Если порт не выдан, сервер не откроет протокол на нужном адресе, даже с правильным файлом настроек.

Раздел «Сеть» в панели EGN: игровой порт и RCON
Раздел «Сеть» в панели EGN: игровой порт и RCON

Внешние интеграции, например бот или мониторинг, работают через RCON или REST API, а не через консоль панели. Поэтому порт должен быть выдан и открыт именно для того адреса, с которого идёт запрос.

Безопасность: что не делать

Не открывайте REST API в интернет без нужды

Тот, кто знает AdminPassword, управляет сервером целиком: кикает игроков, банит, останавливает сервер. Пароль из примера — только пример. Придумайте свой, длинный и уникальный. Если пароль утёк, смените его в файле и перезапустите сервер.

Правила простые:

  • не используйте один пароль для RCON, REST API и входа в игру;
  • открывайте RCON и REST API только для адресов, которым доверяете;
  • если бот работает на той же машине, обращайтесь к 127.0.0.1;
  • регулярно проверяйте, что порты закрыты для всех, кроме нужных адресов.

Имейте в виду: REST API по HTTP передаёт пароль с каждым запросом. Поэтому открывать его в интернет без фильтрации адресов не стоит.

Какой интерфейс выбрать для новых инструментов

Справочники расходятся: одни называют RCON устаревающим и советуют REST API, другие перечисляют оба способа как рабочие. Для новых инструментов разумно начинать с REST API и проверять состояние RCON в документации вашей версии игры.

Частые ошибки

Симптом Причина Решение
curl отвечает «connection refused» REST API выключен или порт не выдан Проверьте RESTAPIEnabled=True и порт в «Сеть»
Ответ 401 Unauthorized Неверный логин или пароль Логин admin, пароль из AdminPassword
RCON не подключается Порт RCON не выдан или занят Выдайте порт в «Сеть», проверьте RCONPort
Бот работает локально, но не снаружи Порт закрыт фаерволом Откройте порт только для нужного адреса
Старый пароль всё ещё работает Сервер не перезапущен Перезапустите, чтобы новый AdminPassword подхватился
Порт занят при старте Два сервера на одном порту Задайте разные RESTAPIPort и RCONPort

Таблица: что проверить, если RCON или REST API не отвечает

Пройдите по таблице сверху вниз, прежде чем менять что-то ещё. Большинство проблем решаются в первых двух строках.

Проверка Как проверить Если не совпадает
Ключ включён В файле стоит RCONEnabled=True или RESTAPIEnabled=True Включите ключ и перезапустите сервер
Порт задан числом RCONPort и RESTAPIPort записаны без кавычек Укажите число
Порт выдан В разделе «Сеть» есть строка с этим портом Выдайте порт
Пароль совпадает Пароль в запросе равен AdminPassword Сверьте значение в файле и в запросе
Порт открыт Подключение с другой машины проходит Откройте порт для нужного адреса
Сервер перезапущен Время старта позже правки файла Перезапустите сервер

Два интерфейса независимы: если RCON работает, а REST API нет, проверяйте только ключи REST API и порт 8212.

Пример: проверка RCON через клиент

Возьмите любой клиент с поддержкой Source RCON. Подключитесь к адресу сервера на порт RCONPort, введите AdminPassword и отправьте ShowPlayers. Если пришёл список игроков (или пустой список, когда никого нет), RCON работает. Если клиент пишет «authentication failed», проблема в пароле. Если не подключается вовсе, проблема в порте, фаерволе или выдаче порта в панели.

Тот же приём годится для команд из статьи админ-команды Palworld и ARK: сначала проверьте связь простой командой, а потом пишите автоматизацию.

Схема ниже помогает разложить порты: какой порт для игры, какой для REST API и какой для RCON.

Схема портов Palworld: игра, REST API и RCON
Схема портов Palworld: игра, REST API и RCON

Как устроен доступ по сети

Порт, который вы открываете, — точка входа. Для RCON и REST API она должна вести только к вам или к вашему боту. Если бот на отдельном VPS, открывайте порт для адреса этого VPS, а не для всех. Если бот работает на той же машине, что и сервер, он обращается к 127.0.0.1, и наружу порт не выходит.

Итог

REST API и RCON — два инструмента администрирования Palworld. Включайте их ключами RESTAPIEnabled и RCONEnabled, проверяйте выдачу портов в разделе «Сеть» и защищайте AdminPassword. Открывайте порты наружу только тогда, когда без этого не обойтись, и сразу проверяйте, что доступ закрыт для посторонних. Соседние темы: перенос мира Palworld и админ-команды Palworld и ARK.

Вопросы и ответы

Какой порт у REST API Palworld?

По умолчанию RESTAPIPort равен 8212 по TCP. Его можно поменять в файле настроек, но тогда новый порт должен быть выдан серверу.

Какой порт у RCON Palworld?

По умолчанию RCONPort равен 25575 по TCP. Включается ключом RCONEnabled=True.

Что использовать для логина в REST API?

Логин admin и пароль из AdminPassword. Это базовая аутентификация HTTP.

Можно ли включить оба интерфейса сразу?

Да, но открывайте наружу только нужный. Если бот работает на той же машине, достаточно адреса 127.0.0.1.

Сервер под Palworld за пару минут — egnetwork.ru.

Читать далее

Вся рубрика →