miniflux: /metrics закрыт снаружи в Caddy
- METRICS_ALLOWED_NETWORKS не помогает: за прокси Miniflux видит IP Caddy, а netdata скрейпит по той же web_proxy_network — по IP их не различить - задача убрана из беклога
This commit is contained in:
@@ -26,7 +26,6 @@ _(sec-ревью)_ — три независимых security-ревью на м
|
||||
## Средний
|
||||
|
||||
- [Захардить мониторинг-стек (netdata / dozzle / goaccess)](harden-monitoring-stack.md) — netdata/dozzle: лишние привилегии + docker.sock + доверие Remote-User в общей сети; socket-proxy + monitoring_network _(sec-ревью)_
|
||||
- [Ограничить эндпоинт `/metrics` Miniflux](miniflux-metrics-restrict.md) — `METRICS_ALLOWED_NETWORKS=0.0.0.0/0` + прокси без ограничения пути отдаёт метрики публично _(sec-ревью)_
|
||||
- [Закрыть calibre-web forward-auth и проверить дефолтные креды](calibre-forward-auth.md) — домен без forward_auth, защита на встроенной авторизации с дефолтом `admin/admin123` _(sec-ревью)_
|
||||
- [Понизить log level Authelia с debug до info](authelia-log-level.md) — `debug` в проде утекает детали аутентификации и OIDC через `docker logs`/dozzle _(sec-ревью)_
|
||||
- [Включить автообновления безопасности](security-autoupdates.md) — патчи openssh/libssl только вручную; окна в недели между CVE и фиксом _(sec-ревью)_
|
||||
|
||||
@@ -1,16 +0,0 @@
|
||||
# Ограничить эндпоинт `/metrics` Miniflux
|
||||
|
||||
**Приоритет:** средний
|
||||
|
||||
В `files/miniflux/docker-compose.template.yml` заданы `METRICS_COLLECTOR=1` и
|
||||
`METRICS_ALLOWED_NETWORKS=0.0.0.0/0`, а Caddy проксирует весь
|
||||
`miniflux.vakhrushev.me` без ограничения пути. За прокси Miniflux видит приватный
|
||||
IP контейнера Caddy (попадает в `0.0.0.0/0`), поэтому
|
||||
`https://miniflux.vakhrushev.me/metrics` отдаётся публично без аутентификации —
|
||||
утечка эксплуатационной статистики. Сузить `METRICS_ALLOWED_NETWORKS` до подсети
|
||||
`monitoring_network` (netdata скрейпит по внутреннему имени) или заблокировать
|
||||
путь `/metrics` в Caddy.
|
||||
|
||||
Из sec-ревью (fable, 2026-07-13).
|
||||
|
||||
Связано: files/miniflux/docker-compose.template.yml, files/caddyproxy/Caddyfile.template.
|
||||
@@ -136,10 +136,19 @@ miniflux.vakhrushev.me {
|
||||
import access_log
|
||||
|
||||
# /metrics наружу не отдаём. METRICS_ALLOWED_NETWORKS тут не помогает: за
|
||||
# прокси Miniflux видит приватный IP контейнера Caddy, а не адрес клиента.
|
||||
# Netdata скрейпит miniflux_app:8080/metrics напрямую по докер-сети, мимо Caddy.
|
||||
handle /metrics {
|
||||
respond 404
|
||||
}
|
||||
|
||||
handle {
|
||||
reverse_proxy {
|
||||
to miniflux_app:8080
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
wakapi.vakhrushev.me {
|
||||
tls anwinged@ya.ru
|
||||
import access_log
|
||||
|
||||
@@ -33,6 +33,9 @@ services:
|
||||
- OAUTH2_PROVIDER=oidc
|
||||
- OAUTH2_REDIRECT_URL=https://miniflux.vakhrushev.me/oauth2/oidc/callback
|
||||
- OAUTH2_USER_CREATION=1
|
||||
# Метрики скрейпит netdata по докер-сети (miniflux_app:8080/metrics).
|
||||
# Сузить METRICS_ALLOWED_NETWORKS нельзя: netdata и Caddy сидят в одной
|
||||
# web_proxy_network, по IP их не различить. Наружу /metrics закрыт в Caddy.
|
||||
- METRICS_COLLECTOR=1
|
||||
- METRICS_ALLOWED_NETWORKS=0.0.0.0/0
|
||||
|
||||
|
||||
Reference in New Issue
Block a user