Настройка выделенного сервера

Описание и требования

Выделенный сервер - это сервер который запускается не на ПК игрока, а используется для этого отдельный физический или виртуальный.

Но в целом инструкция применима и для запуска сервера на своем ПК

Для 7DTD существует 2 вариации: для Linux и Windows серверов

Минимальные требования к серверу

CPU: 2 ядра по 2.4Гц

RAM: от 8 Гб (в некоторых источниках пишут, что +2Гб на каждого игрока)

Диск: свободного места от 12 Гб

Открытые сетевые порты:

TCP/UDP: 26900-26905, 27015-27050

Настройка Linux-сервера

Загрузка файлов и подготовка сервера Linux

Предполагается, что вы умеете работать в консоле и понимаете что делаете. Инструкция не позиционирует себя как step-by-step.

Инструкция не содержит рекомендации по настройке безопасности ОС, расположения файлов и пр. Только как запустить сервер

Все описанные действия выполняются под root

  1. Устанавливаем SteamCMD. Код ниже подходит для Ubuntu. Для Debian/Centos смотрите в документации SteamCMDsudo add-apt-repository multiverse; sudo dpkg --add-architecture i386; sudo apt update sudo apt install steamcmd
  2. Создаем папку под сервер и файл с конфигурацией, который выкачает сервер 7DTD. Вместо USER указываем имя учетки под которой будет запускаться сервер mkdir -R /game/7dtd chown USER /game Под учеткой, которой будем запускать серверvi /game/7dtd.sh # строчку ниже добавляем в 7dtd.sh /usr/games/steamcmd +force_install_dir /game/7dtd +login anonymous +app_update 294420 validate +quit
  3. Запускаем файл от имени пользователяsh /game/7dtd.sh

Если выдается ошибка Error! App '294420' state is 0x202 after update job значит у вас на диске не достаточно места

Запуск сервера Linux

Для запуска сервера достаточно использовать эту команду

/game/7dtd/startserver.sh -configfile=/game/7dtd/serverconfig.xml

Но она не удобна тем, что при отключении консоли сервер выключается.

Есть несколько вариантов запуска:

Запуск отдельной сессии с сервером (рекомендуемый №1)

1) Используем sсreen для запуска

# Ставим screen apt install screen

2) Заходим в сессию

screen

3) Запускаем сервер

/game/7dtd/startserver.sh -configfile=/game/7dtd/serverconfig.xml

4) Для отключения от сесии нажимаем Ctrl+a, потом жмем d Для повторного подключения к сессии с сервером пишем

screen -r

Запуск контейнера в Docker (не рекомендуемый)

Сложный вариант, используйте лучше запуск как отдельная сессия или как сервис.

Добавлен просто как just for fun

Настройку/установку Docker не описываем. Официальная инструкция по установке тут: https://docs.docker.com/engine/install/

Добавляем пользователя от которого будем запускать контейнер в группу docker. Команда выполняется от root. Вместо USER указываем имя учетки

usermod -aG docker USER

1) Создаем Dockerfile

FROM ubuntu:latest # Установить зависимости (например, bash) RUN apt-get update && apt-get install -y bash # Убедиться, что контейнер готов к маппингу папки WORKDIR /game/7dtd CMD ["bash"]

2) Собираем контейнер

docker build -t 7dtd .

3) Подготавливаем docker compose файл

vi docker-compose.yml version: '3.8' services: game_server: image: 7dtd:latest # Укажите ваш Docker-образ container_name: 7dtd_server network_mode: host volumes: - /game/7dtd:/game/7dtd # Маппинг папки с игрой как volume - /game/7dtd/share:/root/.local/share # маппим папку для сохранения мира working_dir: /game/7dtd entrypoint: ["bash", "/game/7dtd/startserver.sh", "-configfile=/game/7dtd/serverconfig.xml"] # Параметры запуска restart: unless-stopped

4) Запускаем контейнер

docker compose up -d

5) Проверяем, что контейнер запустился

docker ps -a

Создание отдельного сервиса с игрой (Рекомендумый №2)

Делаем от root

0) Настраиваем сервер. Добавляем строчки в конфиг и перезагружаем сервер

vi /etc/security/limits.conf root soft nofile 10240 vi /etc/sysctl.conf vm.max_map_count=26214 reboot now

1) Создаем конфиг для сервиса

vi /etc/systemd/system/7dtd.service

2) Добавляем в кофиг

[Unit] Description=7DTD server After=network.target [Service] WorkingDirectory=/game/7dtd Restart=always User=root ExecStart=/game/7dtd/startserver.sh -configfile=/game/7dtd/serverconfig.xml LimitNOFILE=10240 [Install] WantedBy=multi-user.target

3) Перечитываем список сервисов

systemctl daemon-reload

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

systemctl enable 7dtd systemctl start 7dtd

Через несколько минут сервер будет запущен

Настройка Windows-сервера

1) Через Steam ставим 7 Days to Die Dedicated Server

2) Запускаем через клиент Steam или через startdedicated.bat в папке с сервером (steamapps\common\7 Days to Die Dedicated Server)

serverconfig.xml

Описание настроек в serverconfig.xml. Там описаны различные параметры для запуска сервера

Тут описаны настройки в первую очередь связаные с серверной частью, не с геймплеем
Тип Наименование Описание Комментарий
Основные параметры ServerName Название сервера
ServerDescription Описание сервера
ServerWebsiteURL Ссылка на веб-сайт вашего сервера
ServerPassword Пароль для входа на сервер
ServerLoginConfirmationText Если включить, то перед появлением в мире будет сообщение. Нужно подтвердить, что бы продолжить
Region Регион месторасположения сервера
Language Основной язык для игроков
Сетевые ServerPort Порт для подключения Желательно оставить в дефолтное значение. Ну или держать в диапазоне 26900 - 26905 или 27015 - 27020
ServerVisibility Видимость сервера в общем списке 2 - публичный

1 - видим только друзьям

0 - не показывать

Для dedicated серверов значение 1 будет работать, если первый игрок присоединяется по IP

ServerDisabledNetworkProtocols Список протоколов, которые не будут использоваться На dedicated серверах нужно отключать SteamNetworking, если нет NAT или настроена правильно переадресация портов
ServerMaxWorldTransferSpeedKiBs Максимальная скорость с которой игроки могут загрузить себе мир Мир загружается при первом подключении игрока.

Максимальное значение - 1300. Да, оно в kiB

Слоты ServerMaxPlayerCount Максимальное кол-во игроков на сервере
ServerReservedSlots Сколько слотов из ServerMaxPlayerCount будут зарезервированы для определенных игроков
ServerReservedSlotsPermission Уровень доступа, что бы использовать ServerReservedSlots
ServerAdminSlots Сколько админов могут присоединится, даже если все слоты забиты
ServerAdminSlotsPermission Уровень доступа, что бы использовать ServerAdminSlots
Если вы не собираетесь отдельно как-то админить сервер, то настройки "Интерфейс администратора" вам не интересны
Интерфейс администратора WebDashboardEnabled Включить/выключить web-интерфейс дашборда
WebDashboardPort Порт для web-интерфейса По-умолчанию 8080
WebDashboardUrl URL для web-интерфейса Внешний URL, если используется публичный (внешний) IP. Оставьте пустой, если у вас "белый" (статический внешний) IP
EnableMapRendering Вкл/выкл рендеринг карты при её изучении Для отображения в web-интерфейсе
TelnetEnabled Включить telnet
TelnetPort Порт для telnet
TelnetPassword Пароль для подключения к telnet
TelnetFailedLoginLimit Количество не правильных вводов пароля перед блокировкой возможности логина к telnet
TelnetFailedLoginsBlocktime На сколько времени блокировать
TerminalWindowEnabled Показывать окно терминала для вывода логов или ввода команд Только для Windows
Папки и пути AdminFileName Имя файла со списком админов Путь указывать относительно UserDataFolder/Saves
UserDataFolder Путь до папки где сервер хранит все данные по пользователям, мирам и сохранениям По-умолчанию опция закоменчена (выключена и недоступна). В этом случае используется дефолтный путь
Прочие технические настройки ServerAllowCrossplay Разрешение кросплея
EACEnabled Включить/выключить стандартный античит (EasyAntiCheat)
IgnoreEOSSanctions Игнорировать ограничения EOS ограничения
HideCommandExecutionLog Скрыть протоколирование команд в консоле 0 - показывать все

1 - скрывать только от telnet/control panel (web-интерфейс) 2 - скрывать от удаленных игровых клиентов (игроков) 3 - скрывать все

MaxUncoveredMapChunksPerPlayer Максимальное количество chunk (фрагметы, считай частей карты) сколько может быть открыто одним игроком Максимальный размер файла карты для одного игрока составляет (x * 512 байт), площадь раскрытия - (x * 256 м²). По умолчанию 131072 означает, что в любой момент времени может быть открыто не более 32 км².
PersistentPlayerProfiles Постоянные профили пользователей Если выключено, то игрок может подключится к любому (своему) выбранному профилю. Если включено (true), то к последнему профилю которым играл
MaxChunkAge Количество игровых дней, через которое он вернется в свое первоначальное состояние, если его не посещать или не стоит итем типа "привата" территории -1 - отключено состояние
SaveDataLimit Максимальный объем дискового пространства для каждой сохраненной игры в мегабайтах (МБ). Сохраненные фрагменты (chunk) могут быть принудительно сброшены в исходное состояние, чтобы освободить место при достижении этого лимита. -1 - отключено

В статьи использованы материалы сайта 7daystodie.fandom.com/ru/wiki/, в соответствии с условиями лицензии CC-BY-SA.
Бонди

Игровые новости, вики • 2025—2026