docs(detmir): add registry proof package

This commit is contained in:
igor04091968
2026-06-03 01:46:15 +03:00
parent 5f217b6dbb
commit 109c31f291
11 changed files with 1024 additions and 20 deletions
+159
View File
@@ -0,0 +1,159 @@
# DetMir: установка и первичная проверка
Статус: подготовительный документ для пакета реестра российского ПО.
Продуктовое имя: `DetMir`.
Техническая база и репозиторий: `AWatch-rus`.
## 1. Назначение
Документ описывает воспроизводимую установочную модель DetMir без публикации
секретов и внутренних адресов production-контура.
Подробные внутренние playbooks и текущие runtime-пути описаны в
`docs/FULL_DEPLOYMENT_MANUAL_RU.md` и `adk-rust/RUNBOOK.md`. Этот документ
является публично-подготовительной версией для продукта.
## 2. Минимальные требования
Серверный контур:
- Linux server или LXC/VM;
- systemd;
- сетевой доступ от endpoint-collectors до AW-rus API;
- Rust runtime binaries из release artifacts;
- Python runtime для Telegram bot и legacy-compatible компонентов, где он еще
используется;
- Grafana/InfluxDB/SQLite/ClickHouse по выбранному профилю установки.
Endpoint-контур:
- Windows с PowerShell 5.1+;
- права локального администратора для установки collectors;
- Scheduled Tasks;
- доступ к серверному API;
- каталог для incident artifacts/evidence sync.
Административный контур:
- Ansible;
- SSH/WinRM доступ;
- git;
- доступ к release artifacts.
## 3. Общий порядок установки
1. Подготовить сервер.
2. Установить AW-rus server.
3. Развернуть Rust binaries DetMir.
4. Установить systemd units/timers.
5. Развернуть DetMir Portal.
6. Настроить Grafana datasources и dashboards.
7. Настроить DLP/worktime/reporting services.
8. Развернуть Windows collectors.
9. Включить evidence upload/sync.
10. Выполнить smoke checks.
## 4. Конфигурация
Секреты задаются вне git:
- tokens;
- passwords;
- SSH/WinRM credentials;
- Grafana admin/API credentials;
- Telegram bot token;
- evidence upload token.
В git допускаются только:
- `.example` файлы;
- шаблоны переменных;
- документация;
- playbooks без секретов.
## 5. Установка серверных компонентов
Типовой путь:
```bash
cd ansible
ansible-playbook -i inventory.ini deploy_aw_server.yml
ansible-playbook -i inventory.ini deploy_detmir_portal.yml
ansible-playbook -i inventory.ini deploy_grafana_dashboards.yml
```
Для production нужно использовать актуальный inventory и group vars конкретного
контура. Секреты передаются через защищенное окружение или отдельные
непубликуемые файлы.
## 6. Установка Windows collectors
Типовой путь:
```bash
cd ansible
ansible-playbook -i inventory.ini deploy_aw_windows.yml
ansible-playbook -i inventory.ini deploy_dlp_evidence_sync.yml
```
После установки проверяются:
- scheduled tasks созданы;
- tasks выполняются без ошибок;
- ActivityWatch buckets получают события;
- DLP/evidence sync task возвращает успешный статус.
## 7. Первичная проверка
Минимальный smoke:
```bash
detmir-status --json
detmir-check --json
detmir-dlp --json
detmir-grafana-check --json
```
Ожидается:
- status OK;
- failed systemd units отсутствуют;
- AW API отвечает;
- Grafana datasources healthy;
- mandatory dashboards не stale;
- portal health OK.
## 8. Проверка evidence workflow
Контролируемый тест:
1. Создать тестовый incident artifact на endpoint.
2. Дождаться scheduled sync или запустить его вручную.
3. Проверить upload на сервере.
4. Проверить portal evidence metadata.
5. Открыть preview/download.
6. Проверить audit.
7. Удалить тестовый incident/artifact/state.
Тестовые artifacts должны быть явно помечены как synthetic/smoke.
## 9. Завершение установки
Перед передачей в эксплуатацию:
- сохранить версии release artifacts;
- сохранить контрольный `detmir-status`;
- сохранить список active services/timers;
- сохранить список Grafana dashboards;
- проверить backup/restore;
- проверить, что ноутбук администратора не является runtime-зависимостью.
## 10. Связанные документы
- `docs/ADMIN_GUIDE_RU.md`
- `docs/ARCHITECTURE_RU.md`
- `docs/FULL_DEPLOYMENT_MANUAL_RU.md`
- `docs/GRAFANA_DASHBOARDS_RU.md`
- `adk-rust/RUNBOOK.md`