Параметры конфигурации
Настройки задаются одним из двух способов, в зависимости от того, как установлен сервер:
- файл
/etc/tetra/config.yaml— установка пакетомdeb/rpm. Файл создаётся сам при первом запуске, с комментариями по каждому полю; - переменные окружения
TETRA_*— установка через Docker Compose (значения приходят из.env).
Переменные окружения важнее файла. Если задана хотя бы одна переменная TETRA_*, файл
config.yaml не создаётся и не читается. Смешивать нельзя.
Основные параметры
Файл (config.yaml) | Переменная | По умолчанию | Назначение |
|---|---|---|---|
addr | TETRA_ADDR | :8080 (в Docker — :8443) | адрес и порт прослушивания. TLS терминирует ваш прокси, поэтому по умолчанию только localhost |
database_url | TETRA_DATABASE_URL | пусто | строка подключения к PostgreSQL 14+. Пусто = хранение в памяти, данные теряются при перезапуске |
migrate_on_start | TETRA_MIGRATE_ON_START | true | применять миграции схемы при старте. false — схему накатывает администратор командой tetra migrate |
events_token | TETRA_EVENTS_TOKEN | пусто | токен аутентификации сенсоров. Он же попадает в политику раздачи расширения |
session_key | TETRA_SESSION_KEY | пусто | ключ подписи cookie панели. Пусто = операторов разлогинивает при каждом перезапуске |
crx_secret_key | TETRA_CRX_SECRET_KEY | пусто | ключ шифрования ключа подписи расширения. В установке пакетом генерируется сам при первом запуске; в Docker задаётся вручную |
log_format | TETRA_LOG_FORMAT | text (в файле-шаблоне — json) | формат логов: json для коллектора, text для чтения глазами |
Генерация секретов:
openssl rand -hex 32 # events_token, session_key, crx_secret_key
openssl rand -hex 24 # POSTGRES_PASSWORD (Docker)
Раздача сенсора
| Файл | Переменная | По умолчанию | Назначение |
|---|---|---|---|
sensor_check_interval | TETRA_SENSOR_CHECK_INTERVAL | 1h | как часто спрашивать вендора о новых сборках расширения |
sensor_auto_rebuild | TETRA_SENSOR_AUTO_REBUILD | true | пересобирать и раздавать новую версию автоматически. false — только по кнопке в панели |
sensor_public_url | TETRA_SENSOR_PUBLIC_URL | пусто | внешний адрес сервера, по которому браузеры забирают .crx, если он отличается от адреса панели |
sensor_updates_path | TETRA_SENSOR_UPDATES_PATH | /sensor/updates.xml | путь манифеста обновлений |
sensor_crx_path | TETRA_SENSOR_CRX_PATH | /sensor/tetra-sensor.crx | путь пакета расширения |
license_check_interval | TETRA_LICENSE_CHECK_INTERVAL | 5m | как часто перепроверять лицензию |
Первые два параметра в шаблоне config.yaml не перечислены — вписываются вручную при
необходимости. Остальные менять почти никогда не нужно.
Восстановление доступа к панели
| Файл | Переменная | Назначение |
|---|---|---|
admin_username | TETRA_ADMIN_USERNAME | имя встроенного оператора (по умолчанию tetra) |
admin_email | TETRA_ADMIN_EMAIL | его адрес почты |
admin_password | TETRA_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, см. Применение политики.