docs: define collector and platform strategy
This commit is contained in:
@@ -0,0 +1,58 @@
|
||||
# AWatch-rus Data Collection Framework
|
||||
|
||||
Документ фиксирует модель развития сборщиков данных AWatch-rus без заявления
|
||||
несуществующего функционала.
|
||||
|
||||
AWatch-rus рассматривается как платформа:
|
||||
|
||||
```text
|
||||
Source -> Provider -> Normalized Event/API Contract -> Backend -> Portal -> Report
|
||||
```
|
||||
|
||||
Важно: наличие точки расширения не означает, что соответствующий collector уже
|
||||
реализован. Статус каждого направления указан отдельно.
|
||||
|
||||
## Статусы
|
||||
|
||||
- `implemented` - есть рабочая реализация в репозитории или текущем runtime.
|
||||
- `planned` - направление предусмотрено архитектурно, но не является готовым
|
||||
универсальным provider.
|
||||
- `future` - возможное направление развития без готового контракта внедрения.
|
||||
- `contract_only` - есть схема/API/fixture или модель данных, но нет заявления
|
||||
о включенном production ingestion.
|
||||
|
||||
## Текущее состояние продукта
|
||||
|
||||
| Компонент | Статус | Что есть сейчас | Evidence |
|
||||
|---|---:|---|---|
|
||||
| Rust Agent | `implemented` | `awatch-agent-rs` и `aw-windows-telemetry.exe` как Rust-first runtime для агентского сбора, guard/validation и отдельных Windows-путей. Глубина сбора зависит от платформы и текущего parity-этапа. | `adk-rust/crates/awatch-agent-rs`, `adk-rust/crates/aw-windows-telemetry`, `docs/AGENT_ARCHITECTURE_RU.md`, `docs/POWERSHELL_TO_RUST_ROADMAP_RU.md` |
|
||||
| API Contracts | `implemented` | Портальный слой и Pilot v1 API имеют стабильные JSON-контракты для executive/workforce/security/forensics/ueba/reports; отдельные интеграции могут иметь статус `contract_only`. | `docs/PILOT_V1_RU.md`, `docs/ROLES_RU.md`, `docs/UEBA_SCORE_RU.md` |
|
||||
| Portal | `implemented` | Rust server-rendered HTML + HTMX-compatible JSON API; ролевые представления Executive / Workforce / Security / Forensics. | `README.md`, `docs/PILOT_V1_RU.md`, `docs/PORTAL_RU.md` |
|
||||
| Backend | `implemented` | Rust-first серверные helpers для health, worktime, DLP/evidence, install-kit tooling, portal contracts и report layer. | `adk-rust/README.md`, `adk-rust/RUNBOOK.md` |
|
||||
|
||||
## Архитектурно предусмотренные точки расширения
|
||||
|
||||
| Provider | Статус | Назначение | Граница честного заявления |
|
||||
|---|---:|---|---|
|
||||
| PowerShell Provider | `planned` | Агентless/legacy сбор на Windows через существующие PowerShell-скрипты или WinRM-оркестрацию. | В репозитории есть PowerShell scripts и rollback/fallback слой, но формальный универсальный provider Data Collection Framework не заявлен как готовый. |
|
||||
| SSH Provider | `planned` | Агентless сбор с Linux/Unix/network hosts через SSH-команды, read-only probes и existing logs. | Есть операционные SSH/Rust wrappers и Linux remote worker docs, но нет готового универсального SSH provider для массового пилота без агентов. |
|
||||
| Syslog Provider | `planned` | Прием событий от сетевых устройств, Linux hosts, DLP/security tools или существующих log sources. | Серверные DLP syslog/CEF направления существуют как интеграционные helpers; полноценный inbound syslog collector для всех источников не заявляется. |
|
||||
| 1C Provider | `implemented` | File-based 1C analytics через Rust ingest/ClickHouse и связанные отчеты. | Реализованный контур относится к текущему file analytics сценарию; это не универсальный 1C-коннектор ко всем конфигурациям 1C. |
|
||||
| pfSense Provider | `contract_only` | Контракты для firewall events, VPN events, traffic summary, top destinations. | Есть API/fixture/docs readiness, но реальный ingestion и SIEM-функции не заявляются. |
|
||||
| VPN Provider | `future` | Обогащение расследований и workforce/security analytics VPN-событиями из корпоративных VPN-шлюзов. | Отдельный production provider не реализован. pfSense VPN events остаются частью `contract_only` readiness. |
|
||||
| SCUD Provider | `future` | Сопоставление активности рабочего места с событиями физического доступа. | Нет реализованного СКУД collector, схемы конкретного вендора или production ingestion. |
|
||||
| Future API Providers | `future` | Подключение корпоративных систем через стабильные API-контракты и нормализацию событий. | Направление архитектурно допустимо, но каждый API provider должен получать отдельный контракт, тесты и статус только после реализации. |
|
||||
|
||||
## Принципы расширения
|
||||
|
||||
1. Provider не должен менять существующие portal/API contracts без обратной
|
||||
совместимости.
|
||||
2. Новые источники должны сначала отдавать обезличенный fixture и JSON schema,
|
||||
затем проходить ingestion tests.
|
||||
3. Статус `implemented` присваивается только после наличия кода, тестов,
|
||||
документации и smoke-проверки.
|
||||
4. Demo data не должны содержать реальные IP, hostname, логины, ФИО,
|
||||
подразделения заказчика или реальные события безопасности.
|
||||
5. AWatch-rus не заявляется как SIEM, классический DLP, EDR/XDR или
|
||||
сертифицированная СЗИ.
|
||||
|
||||
@@ -0,0 +1,105 @@
|
||||
# AWatch-rus Deployment Strategy
|
||||
|
||||
Документ описывает стратегию внедрения AWatch-rus по уровням зрелости. Это
|
||||
архитектурная модель, а не заявление о готовности всех способов сбора.
|
||||
|
||||
## Level 1 - Pilot
|
||||
|
||||
Назначение: быстрое обследование инфраструктуры и демонстрация управленческой,
|
||||
эксплуатационной и ИБ-ценности без длительного проекта внедрения.
|
||||
|
||||
Целевые источники:
|
||||
|
||||
- PowerShell;
|
||||
- SSH;
|
||||
- Syslog;
|
||||
- existing logs.
|
||||
|
||||
Статус: архитектурное направление.
|
||||
|
||||
Ключевое сообщение: пилот может быть проведен без массовой установки агентов
|
||||
после реализации соответствующих providers и проверки их контрактов на
|
||||
конкретной инфраструктуре.
|
||||
|
||||
Что уже есть:
|
||||
|
||||
- Windows/RDP toolkit и legacy/fallback PowerShell assets;
|
||||
- Rust-first Windows runtime для части текущих путей;
|
||||
- серверные Rust helpers;
|
||||
- portal/API/report layer;
|
||||
- install-kit и Ansible-оркестрация.
|
||||
|
||||
Что не заявляется как готовое:
|
||||
|
||||
- универсальный PowerShell Provider для любых Windows hosts;
|
||||
- универсальный SSH Provider для любых Linux/network hosts;
|
||||
- универсальный inbound Syslog Provider;
|
||||
- agentless-пилот без предварительной адаптации источников.
|
||||
|
||||
## Level 2 - Enterprise
|
||||
|
||||
Назначение: регулярный промышленный мониторинг рабочих мест, RDP-сессий,
|
||||
серверных контуров и качества данных.
|
||||
|
||||
Основной источник:
|
||||
|
||||
- Rust Agent.
|
||||
|
||||
Статус: основная целевая архитектура.
|
||||
|
||||
Текущая опора:
|
||||
|
||||
- `awatch-agent-rs` как единая модель `TelemetryRecord`;
|
||||
- `aw-windows-telemetry.exe` для Windows runtime paths;
|
||||
- server-side Rust services/helpers;
|
||||
- API contracts и portal/report layer;
|
||||
- spool/retry/backoff подход для устойчивой доставки там, где он реализован.
|
||||
|
||||
Граница заявления:
|
||||
|
||||
- глубина сбора зависит от платформы и реализованного collector path;
|
||||
- legacy PowerShell assets могут оставаться rollback/reference слоем до полной
|
||||
parity;
|
||||
- массовая эксплуатация требует проверки свежести buckets, agent health,
|
||||
ClickHouse/API status и smoke-тестов в конкретной инфраструктуре.
|
||||
|
||||
## Level 3 - Enterprise+
|
||||
|
||||
Назначение: корпоративная аналитическая платформа, которая связывает Workforce
|
||||
Analytics, Security Analytics и Forensics с внешними корпоративными системами.
|
||||
|
||||
Потенциальные интеграции:
|
||||
|
||||
- AD;
|
||||
- LDAP;
|
||||
- 1C;
|
||||
- SIEM;
|
||||
- pfSense;
|
||||
- VPN;
|
||||
- SCUD.
|
||||
|
||||
Статус: частично реализовано / частично roadmap.
|
||||
|
||||
Матрица статусов:
|
||||
|
||||
| Интеграция | Статус | Комментарий |
|
||||
|---|---:|---|
|
||||
| AD | `planned` | Может использоваться для организационного контекста и ролей, но готовый универсальный AD provider здесь не заявляется. |
|
||||
| LDAP | `planned` | Архитектурное направление для directory context; production provider требует отдельной реализации и тестов. |
|
||||
| 1C | `implemented` | Есть file-based 1C analytics/ingest сценарий; не является универсальным коннектором ко всем 1C-конфигурациям. |
|
||||
| SIEM | `future` | AWatch-rus не является SIEM. Возможна будущая интеграция как источник/потребитель событий через контракты. |
|
||||
| pfSense | `contract_only` | Есть readiness contracts/fixture/API-заготовка; реальный ingestion не заявляется. |
|
||||
| VPN | `future` | Может обогащать расследования и сетевой контекст, но отдельный provider не реализован. |
|
||||
| SCUD | `future` | Возможное сопоставление с физическим доступом; готовый collector отсутствует. |
|
||||
|
||||
## Правила внедрения
|
||||
|
||||
1. Не включать новый источник в коммерческое описание как готовый, пока нет
|
||||
кода, контракта, тестов и документации.
|
||||
2. Для пилота фиксировать список реально подключенных источников в acceptance
|
||||
checklist.
|
||||
3. Для production использовать обратную совместимость API и миграции без
|
||||
потери данных.
|
||||
4. Для внешних интеграций сначала готовить read-only режим, fixture и smoke,
|
||||
затем ingestion.
|
||||
|
||||
@@ -0,0 +1,145 @@
|
||||
# AWatch-rus Platform Strategy
|
||||
|
||||
Документ фиксирует стратегию поддержки Windows и российских операционных
|
||||
систем. Он не заявляет сертификацию, vendor-specific поддержку или готовые
|
||||
дистрибутивные пакеты там, где их нет.
|
||||
|
||||
## Общая модель
|
||||
|
||||
AWatch-rus разделяет два способа сбора:
|
||||
|
||||
- Agent Model - установленный Rust agent/runtime на хосте.
|
||||
- Agentless Model - сбор через внешние providers: PowerShell/WinRM, SSH,
|
||||
Syslog, existing logs или API.
|
||||
|
||||
Текущая реализация сильнее всего развита для Windows/RDP и серверного Rust
|
||||
runtime. Для Linux-подобных платформ есть generic Linux collector foundation,
|
||||
но отдельная поддержка конкретных российских ОС должна подтверждаться
|
||||
тестированием на этих дистрибутивах.
|
||||
|
||||
## Windows
|
||||
|
||||
Current Support: `implemented`.
|
||||
|
||||
- Windows/RDP deployment toolkit присутствует в `windows/` и `ansible/`.
|
||||
- `aw-windows-telemetry.exe` используется как Rust-first runtime для части
|
||||
Windows paths.
|
||||
- Legacy PowerShell scripts остаются rollback/reference слоем до полной parity.
|
||||
|
||||
Agent Model: `implemented`.
|
||||
|
||||
- Rust Windows runtime поставляется в install-kit.
|
||||
- Agent/service/task модель требует проверки на целевом host и acceptance gates.
|
||||
|
||||
Agentless Model: `planned`.
|
||||
|
||||
- PowerShell/WinRM assets существуют, но универсальный agentless provider для
|
||||
всех Windows hosts не заявляется как готовый продуктовый режим.
|
||||
|
||||
Future Expansion:
|
||||
|
||||
- расширение WinAPI/ETW/Event Log/WMI parity в Rust;
|
||||
- сокращение PowerShell fallback после успешных parity gates;
|
||||
- более строгая упаковка service/task definitions без runtime `.ps1`.
|
||||
|
||||
## Astra Linux
|
||||
|
||||
Current Support: `planned`.
|
||||
|
||||
- Отдельная Astra Linux-сертификация, пакет или distro-specific smoke в
|
||||
публичном репозитории не заявлены.
|
||||
- Generic Linux collector foundation в `awatch-agent-rs` может быть базой для
|
||||
проверки совместимости.
|
||||
|
||||
Agent Model: `planned`.
|
||||
|
||||
- Целевая модель - Rust agent как systemd-friendly service с read-only probes.
|
||||
- Перед коммерческим заявлением нужны установка, smoke, health check и rollback
|
||||
на конкретной версии Astra Linux.
|
||||
|
||||
Agentless Model: `planned`.
|
||||
|
||||
- Возможен SSH/Syslog/existing logs подход после реализации соответствующих
|
||||
providers.
|
||||
|
||||
Future Expansion:
|
||||
|
||||
- compatibility matrix по версиям Astra Linux;
|
||||
- systemd unit/package profile;
|
||||
- проверка сетевых, process и session probes без привилегий сверх необходимого.
|
||||
|
||||
## РЕД ОС
|
||||
|
||||
Current Support: `planned`.
|
||||
|
||||
- Отдельная поддержка РЕД ОС не подтверждена тестами в публичном репозитории.
|
||||
- Generic Linux collector foundation не равен готовой поддержке РЕД ОС.
|
||||
|
||||
Agent Model: `planned`.
|
||||
|
||||
- Целевая модель - Rust agent с конфигурацией, spool/retry и systemd unit.
|
||||
|
||||
Agentless Model: `planned`.
|
||||
|
||||
- Потенциальные источники: SSH, Syslog, existing logs после появления providers.
|
||||
|
||||
Future Expansion:
|
||||
|
||||
- проверка совместимости пакетов и системных путей;
|
||||
- smoke на поддерживаемых версиях РЕД ОС;
|
||||
- документированный install/rollback сценарий.
|
||||
|
||||
## Альт
|
||||
|
||||
Current Support: `planned`.
|
||||
|
||||
- Отдельная поддержка Альт не заявлена как реализованная.
|
||||
- Нужна distro-specific проверка, даже если generic Linux collector собирается
|
||||
и запускается.
|
||||
|
||||
Agent Model: `planned`.
|
||||
|
||||
- Целевая модель - Rust agent/service без зависимости от пользовательских shell
|
||||
profiles и локального состояния оператора.
|
||||
|
||||
Agentless Model: `planned`.
|
||||
|
||||
- Возможен SSH/Syslog/existing logs сценарий после реализации providers и
|
||||
нормализации событий.
|
||||
|
||||
Future Expansion:
|
||||
|
||||
- compatibility matrix по редакциям Альт;
|
||||
- package/service profile;
|
||||
- проверка read-only probes и прав доступа.
|
||||
|
||||
## РОСА
|
||||
|
||||
Current Support: `planned`.
|
||||
|
||||
- Отдельная поддержка РОСА не подтверждена готовым install profile или smoke.
|
||||
- Generic Linux foundation может быть использован как техническая база.
|
||||
|
||||
Agent Model: `planned`.
|
||||
|
||||
- Целевая модель - Rust agent с systemd service, bounded timeouts и безопасным
|
||||
retry/spool.
|
||||
|
||||
Agentless Model: `planned`.
|
||||
|
||||
- Возможен после появления SSH/Syslog/API providers и проверки источников.
|
||||
|
||||
Future Expansion:
|
||||
|
||||
- smoke на выбранных версиях РОСА;
|
||||
- документирование зависимостей;
|
||||
- тесты свежести данных и отказоустойчивости agent/service.
|
||||
|
||||
## Что нельзя заявлять без отдельной реализации
|
||||
|
||||
- сертифицированную поддержку российских ОС;
|
||||
- готовые пакеты для Astra Linux, РЕД ОС, Альт или РОСА;
|
||||
- agentless-пилот без реализации providers;
|
||||
- SIEM/DLP/EDR/XDR-замену;
|
||||
- сбор данных из AD/LDAP/VPN/SCUD без проверенного provider и contracts.
|
||||
|
||||
Reference in New Issue
Block a user