docs(wiki): add GitHub wiki pages for documentation
- Home page with navigation and quick start - Architecture overview with layers and data flows - Components documentation for all system parts - Interactive map guide with usage instructions - DLP Endpoint Monitoring detailed guide - Browser Domains Monitoring guide - WebUI Russian Patches documentation - Windows Installation guide - Server Setup guide - Monitoring Setup with Prometheus/Grafana Generated with [Devin](https://cli.devin.ai/docs) Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
This commit is contained in:
co-authored by
Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
parent
7a89f33e3b
commit
eb83a8b08f
@@ -0,0 +1,71 @@
|
||||
# Архитектура системы
|
||||
|
||||
## Обзор
|
||||
|
||||
ActivityWatch-Russian состоит из нескольких слоев:
|
||||
|
||||
```
|
||||
Windows Clients (сбор данных)
|
||||
↓ HTTP API
|
||||
Linux Server (хранение и обработка)
|
||||
↓ TCP
|
||||
Integration Layer (интеграции)
|
||||
↓ HTTP/TCP
|
||||
Monitoring Stack (визуализация)
|
||||
```
|
||||
|
||||
## Слои архитектуры
|
||||
|
||||
### 1. Windows Clients - Сбор данных
|
||||
- **DLP Endpoint Collector** - мониторинг clipboard, печати, USB
|
||||
- **Browser Domains Collector** - мониторинг браузеров
|
||||
- **Email Outbound Collector** - мониторинг почты
|
||||
- **Worktime Session Collector** - учет рабочего времени
|
||||
|
||||
### 2. Linux Server - Хранение и обработка
|
||||
- **ActivityWatch Server** - основной сервер (Rust)
|
||||
- **PostgreSQL Database** - хранилище данных
|
||||
- **WebUI with RU Patches** - веб-интерфейс с русификацией
|
||||
|
||||
### 3. Integration Layer - Интеграции
|
||||
- **pfSense Poller** - сбор логов firewall
|
||||
- **DLP Aggregation Scripts** - агрегация DLP событий
|
||||
- **Prometheus Exporter** - экспорт метрик
|
||||
|
||||
### 4. Monitoring Stack - Мониторинг
|
||||
- **Prometheus** - сбор метрик
|
||||
- **Grafana** - визуализация
|
||||
- **SQL Exporter** - прямые SQL запросы
|
||||
|
||||
## Потоки данных
|
||||
|
||||
### DLP инцидент
|
||||
```
|
||||
User → DLP Collector → Проверка правил → AW Server → PostgreSQL → Grafana
|
||||
```
|
||||
|
||||
### Браузер мониторинг
|
||||
```
|
||||
Browser → Browser Collector → Категоризация → AW Server → WebUI
|
||||
```
|
||||
|
||||
### Метрики
|
||||
```
|
||||
AW Server → Exporter → Prometheus → Grafana
|
||||
```
|
||||
|
||||
## Порты
|
||||
|
||||
| Компонент | Порт | Протокол |
|
||||
|-----------|------|----------|
|
||||
| ActivityWatch API | 5600 | HTTP |
|
||||
| ActivityWatch WebSocket | 5666 | WebSocket |
|
||||
| PostgreSQL | 5432 | TCP |
|
||||
| Prometheus | 9090 | HTTP |
|
||||
| Grafana | 3000 | HTTP |
|
||||
| Prometheus Exporter | 9398 | HTTP |
|
||||
|
||||
## Подробнее
|
||||
|
||||
- [Компоненты системы](Components) - детальное описание компонентов
|
||||
- [Интерактивная карта](Interactive-Map) - визуальная схема связей
|
||||
@@ -0,0 +1,145 @@
|
||||
# Browser Domains Monitoring
|
||||
|
||||
Мониторинг посещаемых доменов в браузерах с категоризацией и проверкой DLP правил.
|
||||
|
||||
## Обзор
|
||||
|
||||
Browser Domains Collector отслеживает:
|
||||
- Посещаемые веб-сайты
|
||||
- Категоризацию доменов
|
||||
- DLP проверку запрещенных сайтов
|
||||
- Скриншоты при нарушениях
|
||||
|
||||
## Архитектура
|
||||
|
||||
```
|
||||
Browser → Window Detection → URL Extraction → Domain Parsing → Categorization → DLP Check → ActivityWatch
|
||||
```
|
||||
|
||||
## Функции
|
||||
|
||||
### Domain Detection
|
||||
- Определение активного окна браузера
|
||||
- Извлечение URL из заголовка окна
|
||||
- Парсинг домена из URL
|
||||
- Определение корневого домена
|
||||
|
||||
### Categorization
|
||||
- Кастомные правила категорий
|
||||
- Web Category API (опционально)
|
||||
- Кэширование результатов
|
||||
- Автоопределение категорий
|
||||
|
||||
### DLP Checking
|
||||
- Проверка по спискам доменов
|
||||
- DLP правила для доменов
|
||||
- Временные окна
|
||||
- Блокировка нарушений
|
||||
|
||||
## Поддерживаемые браузеры
|
||||
|
||||
- Google Chrome
|
||||
- Mozilla Firefox
|
||||
- Microsoft Edge
|
||||
- Opera
|
||||
- Яндекс.Браузер
|
||||
|
||||
## Конфигурация
|
||||
|
||||
### Custom Category Rules
|
||||
```json
|
||||
{
|
||||
"custom_categories": {
|
||||
"social_media": [
|
||||
"*.facebook.com",
|
||||
"*.twitter.com",
|
||||
"*.instagram.com"
|
||||
],
|
||||
"news": [
|
||||
"*.news.com",
|
||||
"*.media.com"
|
||||
],
|
||||
"blocked": [
|
||||
"*.malware.com",
|
||||
"*.phishing.com"
|
||||
]
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### DLP Domain Rules
|
||||
```json
|
||||
{
|
||||
"domain_rules": [
|
||||
{
|
||||
"pattern": "*gambling*",
|
||||
"category": "gambling",
|
||||
"action": "alert",
|
||||
"severity": "medium"
|
||||
},
|
||||
{
|
||||
"pattern": "*adult*",
|
||||
"category": "adult",
|
||||
"action": "block",
|
||||
"severity": "high"
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
## События
|
||||
|
||||
### Browsing Event
|
||||
```json
|
||||
{
|
||||
"timestamp": "2024-01-01T12:00:00Z",
|
||||
"type": "browsing",
|
||||
"data": {
|
||||
"url": "https://www.example.com/page",
|
||||
"domain": "example.com",
|
||||
"root_domain": "example.com",
|
||||
"category": "technology",
|
||||
"browser": "chrome.exe",
|
||||
"title": "Example Page Title",
|
||||
"user": "user1",
|
||||
"host": "WORKSTATION01"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### DLP Incident Event
|
||||
```json
|
||||
{
|
||||
"timestamp": "2024-01-01T12:00:00Z",
|
||||
"type": "dlp_incident",
|
||||
"source": "browser_domain",
|
||||
"rule_id": "blocked_domains",
|
||||
"severity": "high",
|
||||
"data": {
|
||||
"url": "https://blocked.com",
|
||||
"domain": "blocked.com",
|
||||
"category": "malicious",
|
||||
"screenshot": "path/to/screenshot.png"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
## Производительность
|
||||
|
||||
### Оптимизации
|
||||
- Кэширование категорий (TTL 24h)
|
||||
- Batch запросы к category API
|
||||
- Debouncing быстрых переходов
|
||||
- Асинхронная отправка событий
|
||||
|
||||
## Мониторинг
|
||||
|
||||
- Количество уникальных доменов
|
||||
- Распределение по категориям
|
||||
- Частота DLP инцидентов
|
||||
- Кэш hit rate
|
||||
|
||||
## Подробнее
|
||||
|
||||
- [Детальная диаграмма](https://github.com/igor04091968/AWatch-rus/blob/main/docs/diagrams/browser-domains-monitoring.md)
|
||||
- [Категоризация сайтов](Web-Categorization)
|
||||
@@ -0,0 +1,108 @@
|
||||
# Компоненты системы
|
||||
|
||||
## Windows Collectors
|
||||
|
||||
### DLP Endpoint Collector
|
||||
Мониторинг конечных точек для обнаружения утечек данных.
|
||||
|
||||
**Функции:**
|
||||
- Clipboard мониторинг
|
||||
- Print job мониторинг
|
||||
- USB write блокировка
|
||||
- DLP правило evaluation
|
||||
- Скриншоты при инцидентах
|
||||
|
||||
**Файл:** `windows/dlp-endpoint-signals-collector.ps1`
|
||||
|
||||
### Browser Domains Collector
|
||||
Отслеживание посещаемых доменов с категоризацией.
|
||||
|
||||
**Функции:**
|
||||
- Определение домена из URL
|
||||
- Категоризация сайтов
|
||||
- DLP проверка доменов
|
||||
- Скриншоты при нарушениях
|
||||
|
||||
**Файл:** `windows/browser-domains-native-collector.ps1`
|
||||
|
||||
### Email Outbound Collector
|
||||
Мониторинг исходящей почты.
|
||||
|
||||
**Функции:**
|
||||
- Outlook Sent Items мониторинг
|
||||
- SMTP соединения
|
||||
- Email правило evaluation
|
||||
- Блокировка нарушений
|
||||
|
||||
**Файл:** `windows/email-outbound-collector.ps1`
|
||||
|
||||
### Worktime Session Collector
|
||||
Учет рабочего времени.
|
||||
|
||||
**Функции:**
|
||||
- Определение сессий
|
||||
- Учет перерывов
|
||||
- Агрегация по дням
|
||||
|
||||
**Файл:** `windows/worktime-session-collector.ps1`
|
||||
|
||||
## Server Components
|
||||
|
||||
### ActivityWatch Server
|
||||
Основной сервер для приема и хранения событий.
|
||||
|
||||
**Технологии:** Rust
|
||||
**API:** HTTP на порту 5600
|
||||
|
||||
### PostgreSQL Database
|
||||
Основное хранилище данных.
|
||||
|
||||
**Таблицы:**
|
||||
- `dlp_events` - DLP инциденты
|
||||
- `aggregation_state` - состояние агрегации
|
||||
- `dlp_statistics` - статистика
|
||||
|
||||
### WebUI with RU Patches
|
||||
Веб-интерфейс с русской локализацией.
|
||||
|
||||
**Файлы:** `aw-server/aw-ru-patch.js`, `aw-server/aw-sw-cleanup.js`
|
||||
|
||||
## Integration Components
|
||||
|
||||
### pfSense Poller
|
||||
Сбор логов с pfSense firewall.
|
||||
|
||||
**Файл:** `pfsense/pfsense-aw-poller.py`
|
||||
|
||||
### DLP Aggregation Scripts
|
||||
Агрегация DLP событий в PostgreSQL.
|
||||
|
||||
**Файл:** `scripts/aggregate_dlp_events.py`
|
||||
|
||||
### Prometheus Exporter
|
||||
Экспорт метрик в формате Prometheus.
|
||||
|
||||
**Файл:** `grafana-1c/sql-exporter/collectors/aw_activitywatch.py`
|
||||
|
||||
## Monitoring Components
|
||||
|
||||
### Prometheus
|
||||
Сбор и хранение метрик.
|
||||
|
||||
**Порт:** 9090
|
||||
|
||||
### Grafana
|
||||
Визуализация метрик и дашборды.
|
||||
|
||||
**Порт:** 3000
|
||||
|
||||
### SQL Exporter
|
||||
Прямые SQL запросы к PostgreSQL.
|
||||
|
||||
**Порт:** 9398
|
||||
|
||||
## Подробнее
|
||||
|
||||
- [DLP Endpoint Monitoring](DLP-Endpoint-Monitoring) - детально о DLP коллекторе
|
||||
- [Browser Domains Monitoring](Browser-Domains-Monitoring) - детально о браузерном коллекторе
|
||||
- [WebUI Русификация](WebUI-Russian-Patches) - детально о патчах интерфейса
|
||||
@@ -0,0 +1,124 @@
|
||||
# DLP Endpoint Monitoring
|
||||
|
||||
Мониторинг конечных точек для обнаружения утечек данных через clipboard, печать и USB.
|
||||
|
||||
## Обзор
|
||||
|
||||
DLP Endpoint Collector отслеживает:
|
||||
- **Clipboard** - буфер обмена
|
||||
- **Print** - задания на печать
|
||||
- **USB** - запись на USB накопители
|
||||
|
||||
## Архитектура
|
||||
|
||||
```
|
||||
User Activity → DLP Collector → Rule Evaluation → Enforcement → ActivityWatch
|
||||
```
|
||||
|
||||
## Функции
|
||||
|
||||
### Clipboard Monitoring
|
||||
- Перехват clipboard событий
|
||||
- Проверка по паттернам (credit cards, passport data, etc.)
|
||||
- Блокировка копирования
|
||||
- Скриншот при нарушении
|
||||
|
||||
### Print Monitoring
|
||||
- Перехват print job событий
|
||||
- Проверка принтеров и документов
|
||||
- Блокировка печати
|
||||
- Логирование попыток
|
||||
|
||||
### USB Monitoring
|
||||
- Обнаружение USB устройств
|
||||
- Блокировка записи
|
||||
- Логирование подключений
|
||||
- Политики по device ID
|
||||
|
||||
## Конфигурация
|
||||
|
||||
### DLP Policy
|
||||
```json
|
||||
{
|
||||
"clipboard_rules": [
|
||||
{
|
||||
"pattern": "\\b\\d{4}-\\d{4}-\\d{4}-\\d{4}\\b",
|
||||
"description": "Credit card numbers",
|
||||
"severity": "high",
|
||||
"action": "block"
|
||||
}
|
||||
],
|
||||
"print_rules": [
|
||||
{
|
||||
"printer_match": "*",
|
||||
"document_keywords": ["confidential", "secret"],
|
||||
"action": "block"
|
||||
}
|
||||
],
|
||||
"usb_rules": [
|
||||
{
|
||||
"device_id": "*",
|
||||
"action": "block_write"
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
### Deployment Config
|
||||
```json
|
||||
{
|
||||
"aw_server_url": "http://aw-server:5600",
|
||||
"bucket_prefix": "aw-watcher-dlp-endpoint",
|
||||
"heartbeat_interval": 60,
|
||||
"screenshot_on_incident": true,
|
||||
"enforcement_enabled": true
|
||||
}
|
||||
```
|
||||
|
||||
## Установка
|
||||
|
||||
```powershell
|
||||
# Копирование коллектора
|
||||
Copy-Item windows/dlp-endpoint-signals-collector.ps1 C:\ProgramData\AWatch-rus\
|
||||
|
||||
# Настройка scheduled task
|
||||
Register-ScheduledTask -TaskName "DLP Endpoint Collector" -Trigger $trigger -Action $action
|
||||
```
|
||||
|
||||
## События
|
||||
|
||||
### DLP Incident Event
|
||||
```json
|
||||
{
|
||||
"timestamp": "2024-01-01T12:00:00Z",
|
||||
"type": "dlp_incident",
|
||||
"source": "clipboard",
|
||||
"rule_id": "credit_card_pattern",
|
||||
"severity": "high",
|
||||
"data": {
|
||||
"matched_text": "****-****-****-1234",
|
||||
"user": "user1",
|
||||
"host": "WORKSTATION01",
|
||||
"screenshot": "path/to/screenshot.png"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
## Требования
|
||||
|
||||
- Windows 10/11
|
||||
- PowerShell 5.1+
|
||||
- ActivityWatch installed
|
||||
- Административные права (для enforcement)
|
||||
|
||||
## Мониторинг
|
||||
|
||||
- Количество инцидентов по типам
|
||||
- Частота срабатываний правил
|
||||
- Успешность enforcement действий
|
||||
- Heartbeat статус
|
||||
|
||||
## Подробнее
|
||||
|
||||
- [Детальная диаграмма](https://github.com/igor04091968/AWatch-rus/blob/main/docs/diagrams/dlp-endpoint-monitoring.md)
|
||||
- [DLP Правила](DLP-Rules)
|
||||
@@ -0,0 +1,79 @@
|
||||
# ActivityWatch-Russian Documentation
|
||||
|
||||
Добро пожаловать в документацию ActivityWatch-Russian - корпоративной системы мониторинга активности на базе ActivityWatch с русификацией и DLP функциями.
|
||||
|
||||
## 📚 Содержание
|
||||
|
||||
### Архитектура
|
||||
- [Обзор архитектуры](Architecture) - высокоуровневая архитектура системы
|
||||
- [Компоненты системы](Components) - описание всех компонентов
|
||||
- [Интерактивная карта](Interactive-Map) - визуальная карта связей
|
||||
|
||||
### Компоненты
|
||||
- [DLP Endpoint Monitoring](DLP-Endpoint-Monitoring) - мониторинг clipboard, печати, USB
|
||||
- [Browser Domains Monitoring](Browser-Domains-Monitoring) - мониторинг браузеров
|
||||
- [Email Outbound Monitoring](Email-Outbound-Monitoring) - мониторинг почты
|
||||
- [WebUI Русификация](WebUI-Russian-Patches) - патчи интерфейса
|
||||
- [DLP Агрегация](DLP-Aggregation) - обработка DLP событий
|
||||
- [Prometheus Exporter](Prometheus-Exporter) - метрики для мониторинга
|
||||
|
||||
### Развертывание
|
||||
- [Установка на Windows](Windows-Installation) - установка коллекторов
|
||||
- [Настройка сервера](Server-Setup) - настройка Linux сервера
|
||||
- [Grafana + Prometheus](Monitoring-Setup) - мониторинг стек
|
||||
|
||||
### Конфигурация
|
||||
- [DLP Правила](DLP-Rules) - настройка DLP политик
|
||||
- [Категоризация сайтов](Web-Categorization) - настройка категорий
|
||||
- [Группы хостов](Host-Groups) - управление группами
|
||||
|
||||
## 🚀 Быстрый старт
|
||||
|
||||
### Минимальная конфигурация
|
||||
```bash
|
||||
# 1. Установка на Windows workstation
|
||||
.\windows\deploy-domain-users.ps1
|
||||
|
||||
# 2. Запуск ActivityWatch Server
|
||||
./aw-server/aw-server
|
||||
|
||||
# 3. Применение RU патчей
|
||||
node aw-server/aw-ru-patch.js
|
||||
```
|
||||
|
||||
### Полная конфигурация
|
||||
```bash
|
||||
# 1. Развертывание на Windows
|
||||
.\windows\deploy-domain-users.ps1
|
||||
|
||||
# 2. Настройка сервера
|
||||
cd ansible
|
||||
ansible-playbook server-setup.yml
|
||||
|
||||
# 3. Запуск мониторинга стека
|
||||
cd ../grafana-1c
|
||||
docker-compose up -d
|
||||
|
||||
# 4. Агрегация DLP событий
|
||||
python3 scripts/aggregate_dlp_events.py
|
||||
```
|
||||
|
||||
## 📊 Обзор системы
|
||||
|
||||
ActivityWatch-Russian - это корпоративная система мониторинга активности пользователей с:
|
||||
|
||||
- **DLP мониторинг** - clipboard, печать, USB, браузеры, email
|
||||
- **Русификация** - полный перевод интерфейса на русский
|
||||
- **Аналитика** - агрегация данных и отчеты
|
||||
- **Мониторинг** - Prometheus + Grafana дашборды
|
||||
- **Автоматизация** - Ansible деплой на Windows и Linux
|
||||
|
||||
## 🔗 Ссылки
|
||||
|
||||
- [GitHub Repository](https://github.com/igor04091968/AWatch-rus)
|
||||
- [ActivityWatch Official](https://activitywatch.net/)
|
||||
- [Примеры конфигураций](https://github.com/igor04091968/AWatch-rus/tree/main/grafana-1c)
|
||||
|
||||
## 📝 Поддержка
|
||||
|
||||
Для вопросов и предложений используйте [Issues](https://github.com/igor04091968/AWatch-rus/issues).
|
||||
@@ -0,0 +1,78 @@
|
||||
# Интерактивная карта архитектуры
|
||||
|
||||
Для визуального исследования связей между компонентами используйте интерактивную HTML карту.
|
||||
|
||||
## Как использовать
|
||||
|
||||
### Локально
|
||||
```bash
|
||||
# Открыть в браузере
|
||||
xdg-open docs/diagrams/architecture-map.html
|
||||
|
||||
# Или
|
||||
file:///path/to/AWatch-rus/docs/diagrams/architecture-map.html
|
||||
```
|
||||
|
||||
### С GitHub
|
||||
1. Скачайте файл: [architecture-map.html](https://github.com/igor04091968/AWatch-rus/blob/main/docs/diagrams/architecture-map.html)
|
||||
2. Откройте в браузере
|
||||
|
||||
## Функции карты
|
||||
|
||||
### Визуальные компоненты
|
||||
- **Windows Clients** (красный) - коллекторы данных
|
||||
- **Linux Server** (бирюзовый) - сервер и БД
|
||||
- **Integration** (желтый) - интеграции
|
||||
- **Monitoring** (зеленый) - мониторинг стек
|
||||
- **External** (фиолетовый) - внешние системы
|
||||
|
||||
### Интерактивность
|
||||
- **Клик по компоненту** - показывает детальную информацию
|
||||
- **Подсветка связей** - выделяет связанные компоненты
|
||||
- **Поиск** - быстрый поиск по названию
|
||||
- **Потоки данных** - визуализация процесса
|
||||
|
||||
### Информация о компоненте
|
||||
При клике на компонент показывается:
|
||||
- Описание
|
||||
- Связи с другими компонентами
|
||||
- Потоки данных
|
||||
- Порты и протоколы
|
||||
|
||||
## Слои архитектуры
|
||||
|
||||
### 1. Windows Clients
|
||||
- DLP Endpoint Collector
|
||||
- Browser Domains Collector
|
||||
- Email Outbound Collector
|
||||
- Worktime Session Collector
|
||||
|
||||
### 2. Linux Server
|
||||
- ActivityWatch Server
|
||||
- PostgreSQL Database
|
||||
- WebUI with RU Patches
|
||||
|
||||
### 3. Integration Layer
|
||||
- pfSense Poller
|
||||
- DLP Aggregation Scripts
|
||||
- Prometheus Exporter
|
||||
|
||||
### 4. Monitoring Stack
|
||||
- Prometheus
|
||||
- Grafana
|
||||
- SQL Exporter
|
||||
|
||||
### 5. External Systems
|
||||
- pfSense Firewall
|
||||
- Domain Controller
|
||||
|
||||
## Альтернативные визуализации
|
||||
|
||||
### ASCII схема
|
||||
Для быстрого понимания: [architecture-simple.md](https://github.com/igor04091968/AWatch-rus/blob/main/docs/architecture-simple.md)
|
||||
|
||||
### Mermaid диаграммы
|
||||
Для технических деталей: [architecture-diagram.md](https://github.com/igor04091968/AWatch-rus/blob/main/docs/architecture-diagram.md)
|
||||
|
||||
### Graphify knowledge graph
|
||||
Для анализа кода: [graphify-out/index.html](https://github.com/igor04091968/AWatch-rus/blob/main/graphify-out/index.html)
|
||||
@@ -0,0 +1,292 @@
|
||||
# Monitoring Setup
|
||||
|
||||
Настройка Prometheus + Grafana стека для мониторинга ActivityWatch.
|
||||
|
||||
## Требования
|
||||
|
||||
- Docker & Docker Compose
|
||||
- 2GB+ RAM
|
||||
- 20GB+ disk space
|
||||
|
||||
## Установка через Docker Compose
|
||||
|
||||
```bash
|
||||
cd grafana-1c
|
||||
docker-compose up -d
|
||||
```
|
||||
|
||||
## Компоненты
|
||||
|
||||
### Prometheus
|
||||
Сбор и хранение метрик.
|
||||
|
||||
**Порт:** 9090
|
||||
**Конфиг:** `prometheus/prometheus.yml`
|
||||
|
||||
### Grafana
|
||||
Визуализация метрик и дашборды.
|
||||
|
||||
**Порт:** 3000
|
||||
**Конфиг:** `grafana/provisioning/`
|
||||
|
||||
### SQL Exporter
|
||||
Прямые SQL запросы к PostgreSQL.
|
||||
|
||||
**Порт:** 9398
|
||||
**Конфиг:** `sql-exporter/`
|
||||
|
||||
### AW Exporter
|
||||
Экспорт метрик ActivityWatch.
|
||||
|
||||
**Порт:** 9398
|
||||
**Файл:** `sql-exporter/collectors/aw_activitywatch.py`
|
||||
|
||||
## Конфигурация Prometheus
|
||||
|
||||
```yaml
|
||||
# prometheus/prometheus.yml
|
||||
global:
|
||||
scrape_interval: 15s
|
||||
|
||||
scrape_configs:
|
||||
- job_name: 'activitywatch'
|
||||
static_configs:
|
||||
- targets: ['aw-exporter:9398']
|
||||
scrape_interval: 60s
|
||||
|
||||
- job_name: 'prometheus'
|
||||
static_configs:
|
||||
- targets: ['localhost:9090']
|
||||
```
|
||||
|
||||
## Конфигурация Grafana
|
||||
|
||||
### Datasources
|
||||
|
||||
```yaml
|
||||
# grafana/provisioning/datasources/prometheus.yml
|
||||
apiVersion: 1
|
||||
|
||||
datasources:
|
||||
- name: Prometheus
|
||||
type: prometheus
|
||||
access: proxy
|
||||
url: http://prometheus:9090
|
||||
```
|
||||
|
||||
```yaml
|
||||
# grafana/provisioning/datasources/postgres.yml
|
||||
apiVersion: 1
|
||||
|
||||
datasources:
|
||||
- name: PostgreSQL
|
||||
type: postgres
|
||||
access: proxy
|
||||
url: postgres:5432
|
||||
database: activitywatch
|
||||
user: aw
|
||||
password: aw_password
|
||||
```
|
||||
|
||||
### Dashboards
|
||||
|
||||
```yaml
|
||||
# grafana/provisioning/dashboards/dashboards.yml
|
||||
apiVersion: 1
|
||||
|
||||
providers:
|
||||
- name: 'ActivityWatch'
|
||||
orgId: 1
|
||||
folder: 'ActivityWatch'
|
||||
type: file
|
||||
disableDeletion: false
|
||||
updateIntervalSeconds: 10
|
||||
allowUiUpdates: true
|
||||
options:
|
||||
path: /etc/grafana/provisioning/dashboards
|
||||
```
|
||||
|
||||
## Дашборды
|
||||
|
||||
### ActivityWatch Overview
|
||||
- Активные хосты
|
||||
- События по buckets
|
||||
- Скорость поступления событий
|
||||
- Статус коллекторов
|
||||
|
||||
**Файл:** `grafana/grafana/dashboards/aw_overview.json`
|
||||
|
||||
### DLP Incidents
|
||||
- Количество инцидентов по типам
|
||||
- Инциденты по пользователям
|
||||
- Инциденты по серьезности
|
||||
- Временные тренды
|
||||
|
||||
### Browser Monitoring
|
||||
- Посещаемые домены
|
||||
- Категории сайтов
|
||||
- DLP нарушения
|
||||
|
||||
## Запуск
|
||||
|
||||
```bash
|
||||
# Запуск всех сервисов
|
||||
docker-compose up -d
|
||||
|
||||
# Проверка статуса
|
||||
docker-compose ps
|
||||
|
||||
# Просмотр логов
|
||||
docker-compose logs -f
|
||||
|
||||
# Остановка
|
||||
docker-compose down
|
||||
```
|
||||
|
||||
## Доступ
|
||||
|
||||
- **Grafana:** http://localhost:3000 (admin/admin)
|
||||
- **Prometheus:** http://localhost:9090
|
||||
- **AW Exporter:** http://localhost:9398/metrics
|
||||
|
||||
## Настройка алертов
|
||||
|
||||
### Prometheus Alerting Rules
|
||||
|
||||
```yaml
|
||||
groups:
|
||||
- name: activitywatch_alerts
|
||||
rules:
|
||||
- alert: AWCollectorDown
|
||||
expr: aw_host_active == 0
|
||||
for: 5m
|
||||
labels:
|
||||
severity: warning
|
||||
annotations:
|
||||
summary: "ActivityWatch collector down on {{ $labels.host }}"
|
||||
|
||||
- alert: AWExporterDown
|
||||
expr: aw_exporter_up == 0
|
||||
for: 2m
|
||||
labels:
|
||||
severity: critical
|
||||
annotations:
|
||||
summary: "ActivityWatch exporter is down"
|
||||
```
|
||||
|
||||
### Grafana Notification Channels
|
||||
|
||||
1. Откройте Grafana
|
||||
2. Configuration → Alerting → Notification channels
|
||||
3. Add new channel (Email, Slack, etc.)
|
||||
4. Настройте правила алертов в дашбордах
|
||||
|
||||
## Мониторинг
|
||||
|
||||
### Ключевые метрики
|
||||
|
||||
**ActivityWatch:**
|
||||
- `aw_bucket_events_total` - общее количество событий
|
||||
- `aw_host_active` - активность хостов
|
||||
- `aw_exporter_scrape_duration_seconds` - время scrape
|
||||
|
||||
**Prometheus:**
|
||||
- `up` - статус целей
|
||||
- `scrape_duration_seconds` - время сбора
|
||||
|
||||
**Grafana:**
|
||||
- `grafana_statistic` - статистика Grafana
|
||||
|
||||
### Health Checks
|
||||
|
||||
```bash
|
||||
# Prometheus
|
||||
curl http://localhost:9090/-/healthy
|
||||
|
||||
# Grafana
|
||||
curl http://localhost:3000/api/health
|
||||
|
||||
# AW Exporter
|
||||
curl http://localhost:9398/health
|
||||
```
|
||||
|
||||
## Backup
|
||||
|
||||
```bash
|
||||
# Backup Grafana dashboards
|
||||
docker exec grafana grafana-cli admin export-dashboard > dashboards_backup.json
|
||||
|
||||
# Backup Prometheus data
|
||||
docker exec prometheus tar -czf /tmp/prometheus_data.tar.gz /prometheus
|
||||
docker cp prometheus:/tmp/prometheus_data.tar.gz ./backup/
|
||||
```
|
||||
|
||||
## Устранение проблем
|
||||
|
||||
### Grafana не доступна
|
||||
```bash
|
||||
# Проверьте контейнер
|
||||
docker-compose ps grafana
|
||||
|
||||
# Проверьте логи
|
||||
docker-compose logs grafana
|
||||
|
||||
# Перезапустите
|
||||
docker-compose restart grafana
|
||||
```
|
||||
|
||||
### Prometheus не собирает метрики
|
||||
```bash
|
||||
# Проверьте конфиг
|
||||
docker exec prometheus promtool check config /etc/prometheus/prometheus.yml
|
||||
|
||||
# Проверьте цели
|
||||
curl http://localhost:9090/api/v1/targets
|
||||
|
||||
# Проверьте логи
|
||||
docker-compose logs prometheus
|
||||
```
|
||||
|
||||
### AW Exporter не работает
|
||||
```bash
|
||||
# Проверьте соединение с AW Server
|
||||
docker exec aw-exporter curl http://aw-server:5600/api/0/buckets
|
||||
|
||||
# Проверьте логи
|
||||
docker-compose logs aw-exporter
|
||||
|
||||
# Проверьте метрики
|
||||
curl http://localhost:9398/metrics
|
||||
```
|
||||
|
||||
## Производительность
|
||||
|
||||
### Оптимизация Prometheus
|
||||
|
||||
```yaml
|
||||
# prometheus/prometheus.yml
|
||||
global:
|
||||
scrape_interval: 30s # Увеличьте интервал
|
||||
evaluation_interval: 30s
|
||||
|
||||
storage:
|
||||
tsdb:
|
||||
retention.time: 30d # Уменьшите retention
|
||||
```
|
||||
|
||||
### Оптимизация Grafana
|
||||
|
||||
```bash
|
||||
# Увеличьте память
|
||||
# docker-compose.yml
|
||||
grafana:
|
||||
environment:
|
||||
- GF_INSTALL_PLUGINS=
|
||||
- GF_SERVER_ROOT_URL=http://localhost:3000
|
||||
- GF_ANALYTICS_ENABLED=false
|
||||
```
|
||||
|
||||
## Подробнее
|
||||
|
||||
- [Prometheus Exporter](Prometheus-Exporter)
|
||||
- [Компоненты](Components)
|
||||
@@ -0,0 +1,248 @@
|
||||
# Настройка сервера
|
||||
|
||||
Настройка Linux сервера для ActivityWatch-Russian.
|
||||
|
||||
## Требования
|
||||
|
||||
- Linux (Ubuntu 20.04+, Debian 11+, CentOS 8+)
|
||||
- Python 3.8+
|
||||
- PostgreSQL 12+
|
||||
- 4GB+ RAM
|
||||
- 50GB+ disk space
|
||||
|
||||
## Установка через Ansible
|
||||
|
||||
```bash
|
||||
cd ansible
|
||||
ansible-playbook server-setup.yml
|
||||
```
|
||||
|
||||
## Ручная установка
|
||||
|
||||
### 1. Установка ActivityWatch Server
|
||||
|
||||
```bash
|
||||
# Скачайте binaries
|
||||
wget https://github.com/ActivityWatch/activitywatch/releases/download/v0.13.1/activitywatch-v0.13.1-linux-x86_64.zip
|
||||
|
||||
# Распакуйте
|
||||
unzip activitywatch-v0.13.1-linux-x86_64.zip
|
||||
cd activitywatch-v0.13.1-linux-x86_64
|
||||
|
||||
# Запустите сервер
|
||||
./aw-server
|
||||
```
|
||||
|
||||
### 2. Установка PostgreSQL
|
||||
|
||||
```bash
|
||||
# Ubuntu/Debian
|
||||
sudo apt update
|
||||
sudo apt install postgresql postgresql-contrib
|
||||
|
||||
# CentOS/RHEL
|
||||
sudo yum install postgresql-server postgresql-contrib
|
||||
sudo postgresql-setup initdb
|
||||
sudo systemctl start postgresql
|
||||
sudo systemctl enable postgresql
|
||||
|
||||
# Создайте базу данных
|
||||
sudo -u postgres psql
|
||||
CREATE DATABASE activitywatch;
|
||||
CREATE USER aw WITH PASSWORD 'your_password';
|
||||
GRANT ALL PRIVILEGES ON DATABASE activitywatch TO aw;
|
||||
\q
|
||||
```
|
||||
|
||||
### 3. Применение RU патчей
|
||||
|
||||
```bash
|
||||
# Скопируйте патчи
|
||||
cp aw-server/aw-ru-patch.js /path/to/aw-server/
|
||||
cp aw-server/aw-sw-cleanup.js /path/to/aw-server/
|
||||
|
||||
# Примените патчи
|
||||
cd /path/to/aw-server/
|
||||
node aw-ru-patch.js
|
||||
```
|
||||
|
||||
### 4. Настройка systemd service
|
||||
|
||||
```bash
|
||||
sudo nano /etc/systemd/system/aw-server.service
|
||||
```
|
||||
|
||||
```ini
|
||||
[Unit]
|
||||
Description=ActivityWatch Server
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
User=aw
|
||||
WorkingDirectory=/opt/activitywatch
|
||||
ExecStart=/opt/activitywatch/aw-server
|
||||
Restart=always
|
||||
RestartSec=10
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
```
|
||||
|
||||
```bash
|
||||
sudo systemctl enable aw-server
|
||||
sudo systemctl start aw-server
|
||||
```
|
||||
|
||||
## Конфигурация
|
||||
|
||||
### ActivityWatch Config
|
||||
|
||||
```toml
|
||||
# /opt/activitywatch/server-config.toml
|
||||
[server]
|
||||
host = "0.0.0.0"
|
||||
port = 5600
|
||||
|
||||
[logging]
|
||||
level = "INFO"
|
||||
file = "/var/log/activitywatch/aw-server.log"
|
||||
```
|
||||
|
||||
### PostgreSQL Config
|
||||
|
||||
```bash
|
||||
# /etc/postgresql/12/main/postgresql.conf
|
||||
listen_addresses = '*'
|
||||
max_connections = 100
|
||||
shared_buffers = 256MB
|
||||
```
|
||||
|
||||
## Установка Python зависимостей
|
||||
|
||||
```bash
|
||||
# Создайте virtual environment
|
||||
python3 -m venv /opt/aw-venv
|
||||
source /opt/aw-venv/bin/activate
|
||||
|
||||
# Установите зависимости
|
||||
pip install psycopg2-binary requests prometheus_client
|
||||
```
|
||||
|
||||
## Настройка скриптов агрегации
|
||||
|
||||
```bash
|
||||
# Скопируйте скрипты
|
||||
cp scripts/aggregate_dlp_events.py /opt/activitywatch/
|
||||
|
||||
# Настройте cron job
|
||||
crontab -e
|
||||
```
|
||||
|
||||
```cron
|
||||
*/5 * * * * /opt/aw-venv/bin/python /opt/activitywatch/aggregate_dlp_events.py
|
||||
```
|
||||
|
||||
## Firewall
|
||||
|
||||
```bash
|
||||
# Ubuntu/Debian (ufw)
|
||||
sudo ufw allow 5600/tcp
|
||||
sudo ufw allow 5432/tcp
|
||||
sudo ufw enable
|
||||
|
||||
# CentOS/RHEL (firewalld)
|
||||
sudo firewall-cmd --permanent --add-port=5600/tcp
|
||||
sudo firewall-cmd --permanent --add-port=5432/tcp
|
||||
sudo firewall-cmd --reload
|
||||
```
|
||||
|
||||
## Проверка
|
||||
|
||||
```bash
|
||||
# Проверка ActivityWatch Server
|
||||
curl http://localhost:5600/api/0/buckets
|
||||
|
||||
# Проверка PostgreSQL
|
||||
sudo -u postgres psql -c "SELECT version();"
|
||||
|
||||
# Проверка логов
|
||||
sudo journalctl -u aw-server -f
|
||||
```
|
||||
|
||||
## Мониторинг
|
||||
|
||||
```bash
|
||||
# Проверка статуса
|
||||
sudo systemctl status aw-server
|
||||
|
||||
# Проверка ресурсов
|
||||
htop
|
||||
|
||||
# Проверка диска
|
||||
df -h
|
||||
|
||||
# Проверка PostgreSQL
|
||||
sudo -u postgres psql -c "SELECT pg_stat_database.datname, pg_stat_database.numbackends FROM pg_stat_database;"
|
||||
```
|
||||
|
||||
## Backup
|
||||
|
||||
```bash
|
||||
# Backup PostgreSQL
|
||||
sudo -u postgres pg_dump activitywatch > backup_$(date +%Y%m%d).sql
|
||||
|
||||
# Backup ActivityWatch data
|
||||
sudo tar -czf aw-backup_$(date +%Y%m%d).tar.gz /opt/activitywatch/data
|
||||
|
||||
# Restore
|
||||
sudo -u postgres psql activitywatch < backup_20240101.sql
|
||||
```
|
||||
|
||||
## Обновление
|
||||
|
||||
```bash
|
||||
# Остановите сервер
|
||||
sudo systemctl stop aw-server
|
||||
|
||||
# Backup
|
||||
sudo cp -r /opt/activitywatch /opt/activitywatch.backup
|
||||
|
||||
# Обновите binaries
|
||||
wget https://github.com/ActivityWatch/activitywatch/releases/download/v0.14.0/activitywatch-v0.14.0-linux-x86_64.zip
|
||||
unzip activitywatch-v0.14.0-linux-x86_64.zip -d /opt/activitywatch/
|
||||
|
||||
# Запустите сервер
|
||||
sudo systemctl start aw-server
|
||||
```
|
||||
|
||||
## Устранение проблем
|
||||
|
||||
### Server не запускается
|
||||
```bash
|
||||
# Проверьте логи
|
||||
sudo journalctl -u aw-server -n 50
|
||||
|
||||
# Проверьте порт
|
||||
sudo netstat -tlnp | grep 5600
|
||||
|
||||
# Проверьте права
|
||||
sudo ls -la /opt/activitywatch
|
||||
```
|
||||
|
||||
### PostgreSQL connection refused
|
||||
```bash
|
||||
# Проверьте статус
|
||||
sudo systemctl status postgresql
|
||||
|
||||
# Проверьте конфиг
|
||||
sudo cat /etc/postgresql/12/main/postgresql.conf | grep listen_addresses
|
||||
|
||||
# Проверьте firewall
|
||||
sudo ufw status
|
||||
```
|
||||
|
||||
## Подробнее
|
||||
|
||||
- [Мониторинг стек](Monitoring-Setup)
|
||||
- [DLP Агрегация](DLP-Aggregation)
|
||||
@@ -0,0 +1,131 @@
|
||||
# WebUI Русификация
|
||||
|
||||
Система патчей для русификации и адаптации ActivityWatch WebUI под российские требования.
|
||||
|
||||
## Обзор
|
||||
|
||||
WebUI патчи добавляют:
|
||||
- Полный перевод интерфейса на русский
|
||||
- DLP центр для просмотра инцидентов
|
||||
- Центр управления правилами
|
||||
- Группы хостов
|
||||
- Русские стили и шрифты
|
||||
|
||||
## Архитектура
|
||||
|
||||
```
|
||||
Original WebUI → Patch Loader → DOM Injection → Style Injection → Translation → RU WebUI
|
||||
```
|
||||
|
||||
## Компоненты патчей
|
||||
|
||||
### Navigation Patches
|
||||
- Скрытие лишних пунктов меню
|
||||
- Добавление DLP навигации
|
||||
- Обновление ссылок
|
||||
|
||||
### DLP Center Injection
|
||||
- Центр просмотра инцидентов
|
||||
- Менеджер правил
|
||||
- Центр алертов
|
||||
- Архивирование
|
||||
|
||||
### Host Groups Center
|
||||
- Управление группами хостов
|
||||
- Визуализация по группам
|
||||
- Агрегированная статистика
|
||||
|
||||
### Translation
|
||||
- Перевод всех текстовых элементов
|
||||
- Русские форматы дат/чисел
|
||||
- Кириллические шрифты
|
||||
|
||||
## Установка
|
||||
|
||||
```bash
|
||||
# Применение патчей
|
||||
node aw-server/aw-ru-patch.js
|
||||
|
||||
# Очистка старых патчей
|
||||
node aw-server/aw-sw-cleanup.js
|
||||
```
|
||||
|
||||
## Конфигурация
|
||||
|
||||
### Host Groups Config
|
||||
```json
|
||||
{
|
||||
"host_groups": [
|
||||
{
|
||||
"id": "workstations",
|
||||
"name": "Рабочие станции",
|
||||
"hosts": ["WORKSTATION01", "WORKSTATION02"],
|
||||
"color": "#4ecdc4"
|
||||
},
|
||||
{
|
||||
"id": "servers",
|
||||
"name": "Серверы",
|
||||
"hosts": ["SERVER01", "SERVER02"],
|
||||
"color": "#ff6b6b"
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
### DLP Settings
|
||||
```json
|
||||
{
|
||||
"dlp_enabled": true,
|
||||
"review_center_enabled": true,
|
||||
"alerts_center_enabled": true,
|
||||
"auto_refresh_interval": 30,
|
||||
"default_severity_filter": "all"
|
||||
}
|
||||
```
|
||||
|
||||
## Функции WebUI
|
||||
|
||||
### DLP Review Center
|
||||
- Список инцидентов
|
||||
- Фильтрация по типам
|
||||
- Детальный просмотр
|
||||
- Архивирование
|
||||
- Экспорт
|
||||
|
||||
### DLP Rules Manager
|
||||
- Список правил
|
||||
- Создание/редактирование
|
||||
- Включение/выключение
|
||||
- Тестирование правил
|
||||
|
||||
### Host Groups Center
|
||||
- Управление группами
|
||||
- Визуализация
|
||||
- Статистика по группам
|
||||
|
||||
## Совместимость
|
||||
|
||||
- ActivityWatch v0.12.x - v0.14.x
|
||||
- Chrome 90+, Firefox 88+, Edge 90+, Safari 14+
|
||||
|
||||
## Производительность
|
||||
|
||||
- Lazy loading патчей
|
||||
- Кэширование переводов
|
||||
- Debouncing обновлений DOM
|
||||
- Virtual scrolling
|
||||
|
||||
## Отладка
|
||||
|
||||
```javascript
|
||||
// Режим разработки
|
||||
const DEBUG_MODE = true;
|
||||
|
||||
// Логирование патчей
|
||||
console.log('[AW-RU-Patch] Applying patch:', patchName);
|
||||
```
|
||||
|
||||
## Подробнее
|
||||
|
||||
- [Детальная диаграмма](https://github.com/igor04091968/AWatch-rus/blob/main/docs/diagrams/webui-patches.md)
|
||||
- [Группы хостов](Host-Groups)
|
||||
@@ -0,0 +1,172 @@
|
||||
# Установка на Windows
|
||||
|
||||
Установка ActivityWatch коллекторов на Windows рабочие станции.
|
||||
|
||||
## Требования
|
||||
|
||||
- Windows 10/11
|
||||
- PowerShell 5.1+
|
||||
- Административские права
|
||||
- Доступ к ActivityWatch Server
|
||||
|
||||
## Автоматическая установка
|
||||
|
||||
### Через Domain Controller (GPO)
|
||||
|
||||
```powershell
|
||||
# На Domain Controller
|
||||
.\windows\deploy-domain-users.ps1
|
||||
```
|
||||
|
||||
Этот скрипт:
|
||||
1. Создает GPO для развертывания
|
||||
2. Копирует коллекторы на рабочие станции
|
||||
3. Настраивает scheduled tasks
|
||||
4. Конфигурирует DLP политики
|
||||
|
||||
### Для одиночного пользователя
|
||||
|
||||
```powershell
|
||||
# Локально на workstation
|
||||
.\windows\deploy-single-user.ps1
|
||||
```
|
||||
|
||||
## Ручная установка
|
||||
|
||||
### 1. Установка ActivityWatch
|
||||
|
||||
```powershell
|
||||
# Скачайте installer с сайта ActivityWatch
|
||||
# Запустите installer
|
||||
|
||||
# Или через InnoSetup installer
|
||||
.\install-kit-awindows-*.exe
|
||||
```
|
||||
|
||||
### 2. Копирование коллекторов
|
||||
|
||||
```powershell
|
||||
# Создайте директорию
|
||||
New-Item -ItemType Directory -Path "C:\ProgramData\AWatch-rus" -Force
|
||||
|
||||
# Скопируйте коллекторы
|
||||
Copy-Item windows\dlp-endpoint-signals-collector.ps1 "C:\ProgramData\AWatch-rus\"
|
||||
Copy-Item windows\browser-domains-native-collector.ps1 "C:\ProgramData\AWatch-rus\"
|
||||
Copy-Item windows\email-outbound-collector.ps1 "C:\ProgramData\AWatch-rus\"
|
||||
```
|
||||
|
||||
### 3. Настройка конфигурации
|
||||
|
||||
```powershell
|
||||
# Создайте конфигурационный файл
|
||||
@{
|
||||
aw_server_url = "http://aw-server:5600"
|
||||
bucket_prefix = "aw-watcher-dlp-endpoint"
|
||||
heartbeat_interval = 60
|
||||
} | ConvertTo-Json | Out-File "C:\ProgramData\AWatch-rus\deployment-config.json"
|
||||
```
|
||||
|
||||
### 4. Настройка Scheduled Task
|
||||
|
||||
```powershell
|
||||
$trigger = New-ScheduledTaskTrigger -Once -At (Get-Date) -RepetitionInterval (New-TimeSpan -Minutes 5)
|
||||
$action = New-ScheduledTaskAction -Execute "powershell.exe" -Argument "-File C:\ProgramData\AWatch-rus\dlp-endpoint-signals-collector.ps1"
|
||||
Register-ScheduledTask -TaskName "DLP Endpoint Collector" -Trigger $trigger -Action $action -RunLevel Highest
|
||||
```
|
||||
|
||||
## Конфигурация DLP политик
|
||||
|
||||
### Создание файла политик
|
||||
|
||||
```powershell
|
||||
@{
|
||||
clipboard_rules = @(
|
||||
@{
|
||||
pattern = "\b\d{4}-\d{4}-\d{4}-\d{4}\b"
|
||||
description = "Credit card numbers"
|
||||
severity = "high"
|
||||
action = "block"
|
||||
}
|
||||
)
|
||||
print_rules = @(
|
||||
@{
|
||||
printer_match = "*"
|
||||
document_keywords = @("confidential", "secret")
|
||||
action = "block"
|
||||
}
|
||||
)
|
||||
} | ConvertTo-Json -Depth 10 | Out-File "C:\ProgramData\AWatch-rus\dlp-policy.json"
|
||||
```
|
||||
|
||||
## Проверка установки
|
||||
|
||||
```powershell
|
||||
# Проверка статуса службы
|
||||
Get-ScheduledTask | Where-Object {$_.TaskName -like "*DLP*"}
|
||||
|
||||
# Проверка логов
|
||||
Get-Content "C:\ProgramData\AWatch-rus\logs\*.log" -Tail 50
|
||||
|
||||
# Проверка соединения с сервером
|
||||
Test-NetConnection -ComputerName aw-server -Port 5600
|
||||
```
|
||||
|
||||
## Устранение проблем
|
||||
|
||||
### Коллектор не запускается
|
||||
```powershell
|
||||
# Проверьте execution policy
|
||||
Get-ExecutionPolicy
|
||||
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
|
||||
|
||||
# Проверьте права
|
||||
# Запустите PowerShell от администратора
|
||||
```
|
||||
|
||||
### Нет соединения с сервером
|
||||
```powershell
|
||||
# Проверьте firewall
|
||||
New-NetFirewallRule -DisplayName "Allow AW Server" -Direction Outbound -Protocol TCP -RemotePort 5600 -Action Allow
|
||||
|
||||
# Проверьте URL в конфиге
|
||||
Get-Content "C:\ProgramData\AWatch-rus\deployment-config.json"
|
||||
```
|
||||
|
||||
### DLP не работает
|
||||
```powershell
|
||||
# Проверьте файл политик
|
||||
Test-Path "C:\ProgramData\AWatch-rus\dlp-policy.json"
|
||||
|
||||
# Проверьте формат JSON
|
||||
Get-Content "C:\ProgramData\AWatch-rus\dlp-policy.json" | ConvertFrom-Json
|
||||
```
|
||||
|
||||
## Обновление
|
||||
|
||||
```powershell
|
||||
# Остановите задачи
|
||||
Unregister-ScheduledTask -TaskName "DLP Endpoint Collector" -Confirm:$false
|
||||
|
||||
# Обновите файлы
|
||||
Copy-Item windows\dlp-endpoint-signals-collector.ps1 "C:\ProgramData\AWatch-rus\" -Force
|
||||
|
||||
# Перезапустите задачи
|
||||
Register-ScheduledTask -TaskName "DLP Endpoint Collector" -Trigger $trigger -Action $action
|
||||
```
|
||||
|
||||
## Удаление
|
||||
|
||||
```powershell
|
||||
# Остановите задачи
|
||||
Get-ScheduledTask | Where-Object {$_.TaskName -like "*DLP*"} | Unregister-ScheduledTask -Confirm:$false
|
||||
|
||||
# Удалите файлы
|
||||
Remove-Item "C:\ProgramData\AWatch-rus" -Recurse -Force
|
||||
|
||||
# Удалите ActivityWatch (через Programs and Features)
|
||||
```
|
||||
|
||||
## Подробнее
|
||||
|
||||
- [DLP Правила](DLP-Rules)
|
||||
- [Компоненты](Components)
|
||||
Reference in New Issue
Block a user