Pterohost docs

Enshrouded: установка и настройка выделенного сервера

Установка сервера Enshrouded через SteamCMD на Linux: enshrouded_server.json, порты 15636-15637 UDP, кооператив до 16 игроков, бэкап и обновление.

Кратко: Enshrouded dedicated server устанавливается через SteamCMD (app ID 2278520) на Linux, настраивается одним файлом enshrouded_server.json, работает на портах 15636-15637 UDP и поддерживает до 16 игроков без привязки к хосту.

Enshrouded: установка и настройка выделенного сервера

Enshrouded - выживалка в открытом воксельном мире с кооперативом до 16 человек, которая с момента релиза в Early Access в 2024 году стала одной из самых популярных игр в жанре. Стандартная кооперативная сессия требует, чтобы хост был онлайн - как только он выходит, сервер падает и прогресс никуда не записывается в фоне. Выделенный сервер Enshrouded решает эту проблему: мир живёт 24/7, каждый игрок подключается в удобное время, бэкапы и обновления настраиваются без вмешательства в игровой процесс. В этой статье разберём установку через SteamCMD на Linux, полную настройку enshrouded_server.json, правила файрвола и типичные проблемы запуска.

Pterohost - игровой хостинг с NVMe-дисками, DDoS-защитой и поддержкой 24/7: сервер Enshrouded готов к запуску за 2 минуты без самостоятельной настройки Linux. Промокод 4START даёт -20% на первый заказ. Заказать сервер Enshrouded

Системные требования Enshrouded сервера

Enshrouded хранит воксельный мир в памяти и активно использует CPU при строительстве и разрушении блоков. Требования ниже, чем у Palworld, но выше, чем у большинства 2D-выживалок.

ИгроковCPURAMДискКанал
2-44 ядра 3.0 ГГц8 ГБ20 ГБ50 Мбит/с
4-84 ядра 3.5 ГГц16 ГБ25 ГБ100 Мбит/с
8-166-8 ядер 3.5+24 ГБ30 ГБ200 Мбит/с

Диск обязательно SSD или NVMe - на HDD загрузка мира при старте занимает 2-3 минуты и автосейв может лагать. Для операционной системы подойдёт Ubuntu 22.04 LTS, Ubuntu 24.04 LTS или Debian 12 - это стандартные дистрибутивы с официальной поддержкой SteamCMD.

Установка через SteamCMD

SteamCMD - консольный клиент Steam для загрузки серверных приложений. App ID Enshrouded dedicated server: 2278520.

Подготовка системы

# Добавляем 32-bit поддержку (нужна SteamCMD)
sudo dpkg --add-architecture i386
sudo apt update

# Устанавливаем зависимости
sudo apt install -y lib32gcc-s1 curl wget tar

# Создаём пользователя для сервера (рекомендуется, не запускать от root)
sudo useradd -m -s /bin/bash enshrouded
sudo su - enshrouded

Установка SteamCMD

# Скачиваем SteamCMD
mkdir ~/steamcmd && cd ~/steamcmd
curl -sSL https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz | tar xz

# Проверяем что steamcmd работает
./steamcmd.sh +quit

Загрузка файлов сервера Enshrouded

# Создаём папку для сервера
mkdir ~/enshrouded-server

# Устанавливаем серверные файлы
./steamcmd.sh \
  +force_install_dir /home/enshrouded/enshrouded-server \
  +login anonymous \
  +app_update 2278520 validate \
  +quit

Загрузка займёт 3-5 минут в зависимости от скорости интернета. После завершения в папке enshrouded-server появятся исполняемый файл enshrouded_server и папки с контентом игры.

Настройка enshrouded_server.json

Всё управление сервером Enshrouded сосредоточено в одном файле конфигурации. При первом запуске сервер создаёт его автоматически, но удобнее создать файл вручную перед стартом.

nano ~/enshrouded-server/enshrouded_server.json

Полный пример конфигурации:

{
  "name": "Мой сервер Enshrouded",
  "password": "секретный_пароль",
  "saveDirectory": "./savegame",
  "logDirectory": "./logs",
  "ip": "0.0.0.0",
  "queryPort": 15637,
  "port": 15636,
  "slotCount": 16,
  "gameSettings": {
    "difficulty": "Normal",
    "pacifistMode": false,
    "playerGroupSize": "Duo"
  }
}

Описание параметров

ПараметрТипОписание
namestringИмя сервера в Server Browser
passwordstringПароль для входа (пустая строка - без пароля)
saveDirectorystringПапка для сохранений (относительный или абсолютный путь)
logDirectorystringПапка для логов
ipstringIP для прослушивания (0.0.0.0 - все интерфейсы)
queryPortnumberПорт запросов Steam (по умолчанию 15637)
portnumberИгровой порт UDP (по умолчанию 15636)
slotCountnumberМаксимум игроков, от 1 до 16

Параметры gameSettings

Блок gameSettings управляет игровыми правилами:

  • difficulty - сложность. Допустимые значения: Relaxed (проще), Normal (стандарт), Hard (сложнее), Survival (максимальная сложность с голодом и болезнями)
  • pacifistMode - если true, PvP между игроками отключён
  • playerGroupSize - размер группы для балансировки врагов: Solo, Duo, Trio, Duo или Quatro. Влияет на HP и количество врагов, но не на количество слотов

Для небольшой компании друзей рекомендуется Normal + pacifistMode: false + playerGroupSize: "Quatro" - баланс будет рассчитан на группу из 4 человек.

Открытие портов

Enshrouded использует два UDP-порта. Оба обязательны.

UFW (Ubuntu/Debian)

# Открываем игровой порт и порт запросов
sudo ufw allow 15636/udp comment "Enshrouded game"
sudo ufw allow 15637/udp comment "Enshrouded query"

# Проверяем правила
sudo ufw status

iptables (если не используете ufw)

sudo iptables -A INPUT -p udp --dport 15636 -j ACCEPT
sudo iptables -A INPUT -p udp --dport 15637 -j ACCEPT
# Сохраняем правила
sudo iptables-save > /etc/iptables/rules.v4

Если сервер за роутером или NAT - пробросьте те же порты в настройках роутера на внутренний IP машины.

Запуск через systemd

Запуск через systemd - правильный способ для продакшена. Сервис автоматически стартует после перезагрузки и перезапускается при падении.

Создаём юнит-файл:

sudo nano /etc/systemd/system/enshrouded.service

Содержимое:

[Unit]
Description=Enshrouded Dedicated Server
After=network.target

[Service]
Type=simple
User=enshrouded
WorkingDirectory=/home/enshrouded/enshrouded-server
ExecStart=/home/enshrouded/enshrouded-server/enshrouded_server
Restart=on-failure
RestartSec=30
StandardOutput=journal
StandardError=journal

[Install]
WantedBy=multi-user.target

Активируем и запускаем:

sudo systemctl daemon-reload
sudo systemctl enable enshrouded
sudo systemctl start enshrouded

# Смотрим статус и логи в реальном времени
sudo systemctl status enshrouded
sudo journalctl -u enshrouded -f

В логах нужно дождаться строки вида Server started successfully или Listening on port 15636 - это означает, что сервер готов принимать подключения.

Ручной запуск (для теста)

Если systemd ещё не настроен, можно запустить вручную:

cd ~/enshrouded-server
./enshrouded_server

Для фонового запуска без systemd используйте screen или tmux:

screen -S enshrouded
cd ~/enshrouded-server
./enshrouded_server
# Ctrl+A, D - отсоединиться от screen
# screen -r enshrouded - вернуться к логам

Кооператив с друзьями: как подключиться

После запуска сервера друзья подключаются двумя способами:

Через Server Browser Steam:

  1. В главном меню Enshrouded нажмите Play
  2. Выберите Join Game
  3. Найдите сервер по имени (может появиться с задержкой до 5 минут)
  4. Введите пароль, если задан

Прямое подключение по IP:

  1. В меню Join Game найдите кнопку Direct Connect или IP Connect
  2. Введите IP:15636, например 45.11.16.73:15636
  3. Нажмите Connect

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

Бэкап мира

Сохранения Enshrouded хранятся в папке, указанной в saveDirectory. Регулярный бэкап критически важен - восстановить мир из ничего невозможно.

Ручной бэкап

# Останавливаем сервер перед бэкапом
sudo systemctl stop enshrouded

# Копируем папку сохранений с датой
cp -r ~/enshrouded-server/savegame ~/backups/savegame_$(date +%Y%m%d_%H%M%S)

# Запускаем сервер обратно
sudo systemctl start enshrouded

Автоматический бэкап через cron

crontab -e

Добавляем строку для бэкапа каждые 6 часов:

0 */6 * * * systemctl stop enshrouded && cp -r /home/enshrouded/enshrouded-server/savegame /home/enshrouded/backups/savegame_$(date +\%Y\%m\%d_\%H\%M\%S) && systemctl start enshrouded

Для бэкапа без остановки сервера - некоторые версии игры допускают копирование на лету, но безопаснее всё же делать холодный бэкап с остановкой.

Очистка старых бэкапов

Чтобы бэкапы не забивали диск, добавьте автоудаление файлов старше 7 дней:

# В cron добавляем удаление старых бэкапов
0 0 * * * find /home/enshrouded/backups -maxdepth 1 -name "savegame_*" -mtime +7 -exec rm -rf {} \;

Обновление сервера

Keen Games регулярно выпускает патчи для Enshrouded. Клиент и сервер должны быть одной версии - иначе подключение невозможно.

Скрипт обновления

Создайте файл ~/update_enshrouded.sh:

#!/bin/bash
echo "Останавливаем сервер..."
systemctl stop enshrouded

echo "Обновляем файлы..."
/home/enshrouded/steamcmd/steamcmd.sh \
  +force_install_dir /home/enshrouded/enshrouded-server \
  +login anonymous \
  +app_update 2278520 validate \
  +quit

echo "Запускаем сервер..."
systemctl start enshrouded
echo "Сервер обновлён и запущен."
chmod +x ~/update_enshrouded.sh

Теперь обновление запускается одной командой: ~/update_enshrouded.sh. Обновление обычно занимает 1-5 минут в зависимости от размера патча.

Частые проблемы и решения

Сервер запустился, но не виден в Server Browser

Проблема чаще всего в порте 15637. Проверьте:

# Убеждаемся, что сервер слушает оба порта
ss -ulnp | grep 1563

Должны быть видны строки с портами 15636 и 15637. Если 15637 отсутствует - проверьте конфиг и правила файрвола.

Ошибка “Failed to initialize Steam” при запуске

Сервер требует наличия библиотек Steam. Решение:

# Проверяем наличие libsteam_api.so в папке сервера
ls ~/enshrouded-server/*.so

# Если отсутствует - переустанавливаем через steamcmd с validate
~/steamcmd/steamcmd.sh +force_install_dir ~/enshrouded-server +login anonymous +app_update 2278520 validate +quit

Не удаётся подключиться: Connection timed out

Алгоритм диагностики:

  1. Убедитесь, что сервер запущен: systemctl status enshrouded
  2. Проверьте порты в файрволе: sudo ufw status
  3. Если сервер за NAT - убедитесь, что в роутере пробиты порты 15636 и 15637 UDP
  4. Проверьте, что IP в команде подключения верный (внешний, а не локальный)
# Узнать внешний IP сервера
curl -s ifconfig.me

Высокое потребление CPU / лаги

Если сервер потребляет слишком много CPU при активном строительстве:

  • Уменьшите slotCount до реального количества игроков
  • Убедитесь, что используете NVMe-диск (ротация HDD сильно замедляет I/O сейвов)
  • Проверьте через htop, что не запущены лишние процессы

Сервер падает после обновления игры

Клиент Enshrouded обновился, а сервер нет - это частая причина. Запустите ~/update_enshrouded.sh и убедитесь, что версия сервера совпадает с версией клиента.

Связанные материалы

Если вас интересует настройка других серверов для выживания, читайте подробные руководства: сервер Palworld: установка и настройка, сервер V Rising: создание для совместной игры, сервер Project Zomboid: настройка для кооператива.

Заключение

Выделенный сервер Enshrouded - несложная в настройке, но заметная по возможностям вещь. Один файл enshrouded_server.json закрывает 90% задач: имя, пароль, слоты, сложность. SteamCMD обеспечивает простое обновление в одну команду. Systemd гарантирует автозапуск и перезапуск при падениях. Бэкап через cron защищает мир от случайных потерь. После настройки сервер не требует внимания - ваши друзья могут подключаться и строить базу даже когда вы офлайн.

Pterohost - хостинг для Enshrouded с автоустановкой сервера, DDoS-защитой и технической поддержкой 24/7. Никакой ручной настройки Linux - просто выберите тариф и играйте. Промокод 4START даёт -20% на первый заказ. Заказать сервер Enshrouded