docs(detmir): add registry proof package
This commit is contained in:
@@ -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`
|
||||
Reference in New Issue
Block a user