Перейти к содержимому
Перейти к основному содержимому

Egress-only модель

Agent Flaree работает только через исходящие HTTPS-соединения: он сам опрашивает бэкенд, сам отправляет результаты и не принимает ни одного входящего подключения из сети. Эта страница объясняет, что даёт такая модель и как настроить firewall под неё.

Как это работает

Весь обмен инициирует агент: регистрация, синхронизация конфигурации, отправка результатов проверок, heartbeat. Всё идёт исходящим HTTPS на порт 443. Конфигурация проверок приходит как ответ на периодический опрос — бэкенду не нужно «достучаться» до агента, чтобы изменить его задания.

Список исходящих назначений короткий:

НазначениеЗачем
api.flaree.ru:443 (или ваш server)Регистрация, конфиг, результаты, heartbeat
get.flaree.ru:443Манифест и бинарники автообновления (отключается)
Ваши цели проверокHTTP/TCP/БД-проверки, которые вы настроили

Что это даёт

  • Простой периметр — не нужно открывать входящие порты и пробрасывать трафик через NAT.
  • Меньше поверхность атаки — из сети до агента нельзя дотянуться: снаружи у него нет ни одного слушающего сокета.
  • Работа за firewall — агент мониторит сервисы в приватных сетях, куда извне доступа нет вовсе.

Loopback-исключения

Три локальных сокета агент всё же открывает — но только на 127.0.0.1, доступ к ним есть лишь с самого хоста:

ПортНазначение
9090Prometheus-метрики агента
9091Локальный heartbeat-приёмник
4318OTLP receiver, если включён

Валидация конфигурации не позволяет привязать эти сокеты к внешнему адресу: агент откажется стартовать при host: 0.0.0.0 или любом не-loopback адресе.

Настройка firewall

Достаточно разрешить исходящий HTTPS к API и запретить входящие подключения. Пример для iptables:

# Разрешить исходящий HTTPS к Flaree API
iptables -A OUTPUT -p tcp -d api.flaree.ru --dport 443 -j ACCEPT
# Разрешить автообновление (опционально)
iptables -A OUTPUT -p tcp -d get.flaree.ru --dport 443 -j ACCEPT

Входящих правил для агента не нужно. В Kubernetes аналогичный контракт выражается через NetworkPolicy: ingress запрещён, egress — DNS и HTTPS к нужным хостам.

Cert-pinning

Для строгой проверки транспорта агент поддерживает пиннинг сертификата: задайте SHA-256 отпечаток SPKI, и агент будет принимать только сертификат с этим отпечатком.

FLAREE_AGENT_CERT_PIN=<sha256-spki-hex>
подсказка

Пиннинг защищает от подмены сертификата корпоративным TLS-прокси или скомпрометированным CA, но требует обновлять отпечаток при ротации ключа сервера. Включайте его, если ваша политика ИБ этого требует.

Дальше