Документация

Своя точка мониторинга

Агент notifar.io — небольшой сервис на Node.js, который забирает задания у хаба по HTTPS, выполняет проверки и отправляет результаты. Ему не нужны входящие порты, база данных или root-доступ.

Требования

  • Linux x64 или arm64 (Debian, Ubuntu, CentOS, AlmaLinux), 512 МБ RAM
  • Исходящий HTTPS до https://notifar.io
  • Токен агента — получается в кабинете, см. ниже

Где взять токен

  1. Зарегистрируйтесь или войдите в кабинет и откройте раздел Партнёрская точка (в меню слева, пункт «Партнёрская точка»).
  2. В блоке «Новая точка» укажите публичный IP сервера, на который поставите агент. Город, страну, координаты и провайдера (имя сети по ASN) мы определим по этому адресу сами — так точку увидят другие пользователи; если агент потом выйдет на связь с другого IP, данные обновятся по нему. Режим начисления (деньги за проверку или скидка на свои мониторы) можно поменять позже.
  3. Нажмите «Создать точку и получить токен». Токен вида nfa_… показывается один раз — скопируйте его сразу. Если потеряли, там же можно отозвать старый и выпустить новый.
  4. Вставьте токен в команду установки ниже вместо nfa_ВАШ_ТОКЕН. Через минуту после запуска точка станет «на связи» в этом же разделе.

Условия партнёрской программы и что получает точка — на странице Партнёрская программа.

Установка одной командой

curl -fsSL https://notifar.io/agent/install.sh | sudo bash -s -- --token nfa_ВАШ_ТОКЕН

Скрипт создаёт пользователя notifar, скачивает автономный Node.js и агент в /opt/notifar-agent, включает права на ICMP для ping и запускает systemd-сервис notifar-agent.

Управление

systemctl status notifar-agent
journalctl -u notifar-agent -f
nano /etc/notifar-agent.env   # NOTIFAR_HUB, NOTIFAR_TOKEN, NOTIFAR_CONCURRENCY
systemctl restart notifar-agent

Обновление

Агент обновляется сам: хаб сообщает о новой версии, агент скачивает архив, проверяет sha256, переключает симлинк current и перезапускается. Откат — вручную: ln -sfn /opt/notifar-agent/releases/<версия> /opt/notifar-agent/current && systemctl restart notifar-agent.

Docker

docker run -d --name notifar-agent --restart=always \
  -e NOTIFAR_HUB=https://notifar.io -e NOTIFAR_TOKEN=nfa_ВАШ_ТОКЕН \
  node:22-alpine sh -c "apk add --no-cache iputils tar && wget -qO- https://notifar.io/agent/notifar-agent-\$(wget -qO- https://notifar.io/agent/latest.txt).tgz | tar xz -C /opt && cd /opt/notifar-agent-* && node src/index.js"

Безопасность

Агент не принимает соединений, хранит только токен и не пишет данные на диск. Приватные адреса (10.x, 192.168.x, 127.x) для проверок запрещены, чтобы точку нельзя было использовать для сканирования внутренней сети. Партнёрские точки не получают задания с учётными данными (логины, пароли, заголовки, ключи): такие мониторы выполняются только с точек notifar.io. Хаб принимает от агента результаты только по заданиям его точки.

См. также