Skip to main content
SS14.Admin — это веб-панель для администрирования серверов SS14, предоставляющая различные функции, критически важные для серьёзных серверов. Этот документ объяснит, что вам понадобится для настройки собственного экземпляра SS14.Admin.

Обзор

SS14.Admin подключается напрямую к базе данных вашего игрового сервера, что позволяет просматривать все данные об игроках, банах, администраторах и т.д. Затем эти данные доступны администраторам игрового сервера через их веб-браузер. Администраторы входят в SS14.Admin напрямую через свою учётную запись SS14 с помощью OAuth.

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

  • Ваш игровой сервер должен быть настроен на использование PostgreSQL в качестве движка базы данных. Использовать SS14.Admin с SQLite невозможно.
  • Доменное имя для размещения SS14.Admin.
  • Сервер обратного прокси, например Nginx или Caddy.

Установка

Мы предоставляем официальные образы контейнеров SS14.Admin через GitHub Container Registry. Кроме того, у нас есть инструкции по самостоятельной сборке проекта с помощью .NET SDK.

Образ контейнера

Последний стабильный образ SS14.Admin — ghcr.io/space-wizards-federation/ss14.admin:1. Информация о контейнере:
  • Слушает на порту 8080
  • UID/GID по умолчанию — 1654
  • Важные тома для монтирования:
    • /app/appsettings.yml: основной конфигурационный файл.
Вот пример docker-compose.yml, пожалуйста, измените его под свои нужды.

Ручная компиляция

Если вы ненавидите контейнеры, вы можете вручную опубликовать SS14.Admin и развернуть файлы самостоятельно. Для этого вам понадобятся Git и .NET 10 SDK. Серверу, который будет запускать сборку, требуется соответствующая среда выполнения ASP.NET Core Runtime, но SDK ему не нужен. Клонируйте git-репозиторий, затем опубликуйте:
Готовая сборка будет помещена в SS14.Admin/bin/Release/net9.0/linux-x64/publish. Вы можете скопировать её в любое удобное место, например в /opt, и запускать SS14.Admin оттуда. Например:
Фактические файлы программы помещаются в подпапку, а запускаем мы их из родительской директории, чтобы случайно не затереть конфигурационные файлы при обновлении. Затем вы можете запускать SS14.Admin автоматически с помощью следующего определения systemd-сервиса:

Конфигурация

SS14.Admin — это ASP.NET Core-приложение, поэтому оно поддерживает настройку как через конфигурационный файл, так и через другие источники, например переменные окружения. Вы можете обратиться к документации ASP.NET Core для более подробного обзора. Большая часть конфигурации SS14.Admin осуществляется через конфигурационный файл appsettings.yml. Вот полная справка по его содержимому:
Из-за того, как работает oauth, для успешного входа вам потребуется SSL/HTTPS-соединение. Неважно, будет ли это сертификат от центра сертификации, такого как Let’s Encrypt, или самоподписанный. Просто нужно, чтобы сертификат был доверенным, чтобы ваш браузер действительно передал необходимые данные.

Конфигурация аутентификации

Чтобы администраторы могли входить напрямую через свою учётную запись SS14, вам нужно зарегистрировать OAuth-клиент следующим образом:
  1. Войдите и перейдите на https://account.spacestation14.com/Identity/Account/Manage/Developer, нажмите «New OAuth App».
  2. Введите имя приложения, может быть любым.
  3. Установите «Authorization callback URL» на адрес вашего экземпляра с добавлением /signin-oidc. Примеры:
  • Если ваш экземпляр доступен по https://admin.example.com, укажите https://admin.example.com/signin-oidc.
  • Если ваш экземпляр доступен по https://example.com/admin, укажите https://example.com/admin/signin-oidc.
  1. Установите «Homepage URL» на основной адрес, по которому доступен ваш экземпляр, например https://admin.example.com или https://example.com/admin.
  2. Скопируйте Client ID в ClientId в конфигурационном файле.
  3. Нажмите «Generate new secret» и скопируйте его в ClientSecret в конфигурационном файле.
Ваш client secret будет показан только один раз. Если вы его потеряете — создайте новый.

Конфигурация веб-сервера

Скорее всего, вы захотите запускать SS14.Admin за обратным прокси, таким как Nginx или Caddy, для терминации TLS и возможности запуска нескольких сервисов с одного IP-адреса. Вот несколько примеров и инструкций для некоторых веб-серверов. Обратите внимание, что SS14.Admin, вероятно, не будет работать без HTTPS из-за проблем с безопасностью cookie.

Caddy

Caddy рекомендуется, если у вас ещё не установлен веб-сервер, так как его очень легко настраивать, и он предоставляет встроенную функциональность, такую как сертификаты Let’s Encrypt.

Nginx

Устранение неполадок

Ошибка со стороны аутентификации: «An error occurred while processing your request.» при входе

См. также: устранение неполадок на основной странице OAuth. Это общий код ошибки, если конфигурация OAuth нарушена. Смотрите статью по ссылке выше для возможных причин. Если redirect URI действительно неверен, пожалуйста, проверьте ниже.

Неверный redirect URI

Неправильный redirect URI часто вызван неверной конфигурацией обратного прокси, либо на стороне прокси, либо на стороне приложения:
  • Убедитесь, что ваш обратный прокси отправляет все необходимые заголовки, как показано в примерах конфигурации выше.
  • Если ваш обратный прокси не отправляет запросы на localhost, например, если вы используете контейнер, убедитесь, что вы правильно установили ForwardProxies в конфигурационном файле SS14.Admin.
Последнее изменение 21 июня 2026 г.