Перейти к содержанию

Обзор развертывания сервера ARK Survival Evolved

Предварительные требования и основные условия

  • Операционная система: Ubuntu (семейство Debian)

  • Привилегии: Доступ root или sudo

  • Требуемые пакеты: curl, lib32gcc1, lib32stdc++6, screen, wget, tar

  • Системный пользователь: steam

  • Межсетевой экран (Firewall): ufw должен быть настроен для разрешения доступа через конкретные порты UDP

Имя хоста (FQDN)

Сервер не предоставляет веб-панель. Соединение устанавливается напрямую через IP-адрес и порты. Если внешний поддомен настроен отдельно, используется соглашение об именовании по шаблону ark-server<ServerID>.hostkey.in, однако в текущей конфигурации идентификатор сервера не определен.

Структура файлов и директорий

  • Директория SteamCMD: /home/steam/steamcmd

  • Директория сервера ARK: /home/steam/ARK

  • Скрипт установки: /home/steam/install.sh

  • Скрипт запуска: /home/steam/ARK/ark_server_start.sh

  • Файл сервиса systemd: /etc/systemd/system/ark.service

Процесс развертывания сервера

Приложение устанавливается с использованием SteamCMD для загрузки специализированного сервера ARK Survival Evolved Dedicated Server (App ID 376030).

  1. Создается системный пользователь steam с домашней директорией /home/steam.

  2. SteamCMD скачивается и распаковывается в /home/steam/steamcmd.

  3. Скрипт установки /home/steam/install.sh выполняет следующую команду:

    /home/steam/steamcmd/steamcmd.sh +force_install_dir /home/steam/ARK +login anonymous +app_update 376030 validate +quit
    

  4. Файлы сервера ARK извлекаются в /home/steam/ARK.

  5. Генерируется скрипт запуска в /home/steam/ARK/ark_server_start.sh.

Права доступа и безопасность

  • Сервер работает от имени пользователя, не являющегося root (steam).

  • Сервис systemd настроен на запуск от имени пользователя и группы steam.

  • Правила межсетевого экрана применяются через ufw для разрешения трафика только через необходимые порты UDP.

Запуск, остановка и обновление

Сервер ARK управляется как сервис systemd с именем ark. Используйте следующие команды для управления сервисом:

  • Запустить сервис:

    sudo systemctl start ark
    

  • Остановить сервис:

    sudo systemctl stop ark
    

  • Перезапустить сервис:

    sudo systemctl restart ark
    

  • Включить автоматический запуск при старте системы:

    sudo systemctl enable ark
    

  • Проверить статус сервиса:

    sudo systemctl status ark
    

  • Перезагрузить демона systemd (после изменения файла сервиса):

    sudo systemctl daemon-reload
    

Доступные порты для подключения

В межсетевом экране открыты следующие порты UDP, используемые сервером:

Порт Протокол Описание
7777 UDP Главный игровой порт
27015 UDP Порт запросов (Query)
32330 UDP Порт удаленной консоли (RCON)

Расположение файлов конфигурации и данных

Параметры конфигурации встроены непосредственно в скрипт запуска /home/steam/ARK/ark_server_start.sh. Скрипт выполняет серверный бинарный файл со следующими параметрами:

  • Путь к бинарному файлу: /home/steam/ARK/ShooterGame/Binaries/Linux/ShooterGameServer

  • Карта: TheIsland

  • Имя сервера: My ARK Server

  • Пароль сервера: TestPass123!

  • Пароль администратора: TestPass123!

  • Максимальное количество игроков: 20

  • Путь к библиотеке: /home/steam/ARK/linux64 (экспортируется как LD_LIBRARY_PATH)

Полная команда исполнения внутри скрипта:

/home/steam/ARK/ShooterGame/Binaries/Linux/ShooterGameServer TheIsland?listen?SessionName="My ARK Server"?ServerPassword="TestPass123!"?ServerAdminPassword="TestPass123!"?Port=7777?QueryPort=27015?RCONEnabled=True?RCONPort=32330 -server -log

question_mark
Я могу вам чем-то помочь?
question_mark
ИИ Помощник ×