Files
pet-project-server/docs/backlog/harden-monitoring-stack.md

26 lines
1.8 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Захардить мониторинг-стек (netdata / dozzle / goaccess)
**Приоритет:** средний
Мониторинг-контейнеры — самые привилегированные на хосте и при этом торчат в общую
`web_proxy_network` рядом с приложениями:
- **netdata** (`files/netdata/docker-compose.template.yml`) — `SYS_ADMIN` +
`SYS_PTRACE` + `apparmor:unconfined`, плюс весь `/` и docker.sock: фактически
root-контейнер. Для метрик обычно хватает `SYS_PTRACE`; `SYS_ADMIN` и
`apparmor:unconfined` попробовать убрать (netdata деградирует мягко).
- **dozzle** (`files/dozzle/docker-compose.template.yml`) — RW docker.sock +
`DOZZLE_AUTH_PROVIDER: forward-proxy` (верит заголовку `Remote-User` от кого
угодно). Любой контейнер в `web_proxy_network` может напрямую сходить на
`dozzle_app:8080` с поддельным `Remote-User` и читать логи всех контейнеров (в
логах бывают токены/ссылки).
- docker.sock обоим пустить через `tecnativa/docker-socket-proxy` (только нужные
GET), напрямую не монтировать.
- перенести netdata/dozzle/goaccess в существующую `monitoring_network`
(`playbook-docker.yml`), а Caddy подключить к обеим сетям — уводит их из общей
сети с приложениями и устраняет lateral movement.
Из sec-ревью (fable, 2026-07-13).
Связано: files/netdata, files/dozzle, files/goaccess, files/caddyproxy, playbook-docker.yml.