Перейти к основному содержимому

Параметры конфигурации

Настройки задаются одним из двух способов, в зависимости от того, как установлен сервер:

  • файл /etc/tetra/config.yaml — установка пакетом deb/rpm. Файл создаётся сам при первом запуске, с комментариями по каждому полю;
  • переменные окружения TETRA_* — установка через Docker Compose (значения приходят из .env).
Механизм один на установку

Переменные окружения важнее файла. Если задана хотя бы одна переменная TETRA_*, файл config.yaml не создаётся и не читается. Смешивать нельзя.

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

Файл (config.yaml)ПеременнаяПо умолчаниюНазначение
addrTETRA_ADDR:8080 (в Docker — :8443)адрес и порт прослушивания. TLS терминирует ваш прокси, поэтому по умолчанию только localhost
database_urlTETRA_DATABASE_URLпустострока подключения к PostgreSQL 14+. Пусто = хранение в памяти, данные теряются при перезапуске
migrate_on_startTETRA_MIGRATE_ON_STARTtrueприменять миграции схемы при старте. false — схему накатывает администратор командой tetra migrate
events_tokenTETRA_EVENTS_TOKENпустотокен аутентификации сенсоров. Он же попадает в политику раздачи расширения
session_keyTETRA_SESSION_KEYпустоключ подписи cookie панели. Пусто = операторов разлогинивает при каждом перезапуске
crx_secret_keyTETRA_CRX_SECRET_KEYпустоключ шифрования ключа подписи расширения. В установке пакетом генерируется сам при первом запуске; в Docker задаётся вручную
log_formatTETRA_LOG_FORMATtext (в файле-шаблоне — json)формат логов: json для коллектора, text для чтения глазами

Генерация секретов:

openssl rand -hex 32 # events_token, session_key, crx_secret_key
openssl rand -hex 24 # POSTGRES_PASSWORD (Docker)

Раздача сенсора

ФайлПеременнаяПо умолчаниюНазначение
sensor_check_intervalTETRA_SENSOR_CHECK_INTERVAL1hкак часто спрашивать вендора о новых сборках расширения
sensor_auto_rebuildTETRA_SENSOR_AUTO_REBUILDtrueпересобирать и раздавать новую версию автоматически. false — только по кнопке в панели
sensor_public_urlTETRA_SENSOR_PUBLIC_URLпустовнешний адрес сервера, по которому браузеры забирают .crx, если он отличается от адреса панели
sensor_updates_pathTETRA_SENSOR_UPDATES_PATH/sensor/updates.xmlпуть манифеста обновлений
sensor_crx_pathTETRA_SENSOR_CRX_PATH/sensor/tetra-sensor.crxпуть пакета расширения
license_check_intervalTETRA_LICENSE_CHECK_INTERVAL5mкак часто перепроверять лицензию

Первые два параметра в шаблоне config.yaml не перечислены — вписываются вручную при необходимости. Остальные менять почти никогда не нужно.

Восстановление доступа к панели

ФайлПеременнаяНазначение
admin_usernameTETRA_ADMIN_USERNAMEимя встроенного оператора (по умолчанию tetra)
admin_emailTETRA_ADMIN_EMAILего адрес почты
admin_passwordTETRA_ADMIN_PASSWORDпринудительно вернуть пароль к этому значению при каждом запуске
Убирайте admin_password после входа

Пока значение задано, пароль возвращается к нему при каждом старте — смена пароля в панели перестанет держаться. Порядок использования — Первый вход.

Параметры Docker Compose

Помимо TETRA_*, файл .env поставки содержит:

ПеременнаяНазначение
TETRA_IMAGE_TAGверсия загруженного образа. Меняется при обновлении
POSTGRES_PASSWORDпароль встроенного PostgreSQL. Задаётся до первого запуска и больше не меняется
COMPOSE_PROFILES=embedded-dbподнимать встроенную СУБД. Закомментируйте при работе с внешним PostgreSQL
TETRA_BIND_ADDR, TETRA_PORTна каком адресе и порту публиковать сервис на хосте (по умолчанию 127.0.0.1:8443)
POSTGRES_IMAGEобраз PostgreSQL, должен совпадать с загруженным из images/

Чего в настройках нет

Адреса лицензионного сервера. Он встроен в бинарь и не настраивается: реестр лицензий находится на инфраструктуре вендора, и подменять адрес на стороне заказчика нечем и незачем.

Адреса и токена для расширения — они не хранятся на сервере как настройка, а раздаются рабочим станциям вашей же корпоративной политикой Chrome, см. Применение политики.