К основному содержанию

GUJ на своём сервере

Серверы мониторинга сайтов

Как установить сервер мониторинга и разрешить доступ только панели

Для чего нужен сервер мониторинга

Установите сервер мониторинга, чтобы проверять сайты и хранить историю проверок.

В админке такой сервер называется нодой мониторинга. Можно добавить несколько серверов: для нового сайта GUJ выберет менее загруженный.

Панель сама берёт IP добавленных серверов. Отдельный список IP для мониторинга не нужен.

Установка

Запустите команду на отдельном сервере мониторинга

GUJ_INSTALLER="$(mktemp)"
curl -fL --proto '=https' --tlsv1.2 https://files.guj.ru/site-monitor/install.sh -o "$GUJ_INSTALLER"
less "$GUJ_INSTALLER"
sudo sh "$GUJ_INSTALLER"
rm -f "$GUJ_INSTALLER"

Установщик покажет название, IP и состояние History API. Токен намеренно не выводится в терминал и журналы.

До добавления ноды настройте HTTPS reverse proxy к 127.0.0.1:8088, действующий сертификат и firewall allowlist только для IP панели. Сам порт 8088 не публикуйте.

Токен получите локально на ноде из защищённого файла /opt/guj-site-monitor/.env. Не отправляйте его в чат, тикеты или параметры командной строки.

Добавление в админке

  1. Откройте Админка → Ноды мониторинга
  2. Нажмите Добавить
  3. Укажите название и публичный IP сервера
  4. Укажите HTTPS URL reverse proxy, например https://monitor-1.example.com
  5. Вставьте токен из локального файла /opt/guj-site-monitor/.env
  6. Оставьте включённым пункт Участвует в новых проверках, если сервер должен получать новые сайты

Проверка доступности

Панель раз в минуту проверяет каждый сервер мониторинга через History API.

Если сервер перестал отвечать, в админке появится статус Недоступна. Администратор получит уведомление.

Когда сервер снова отвечает, статус меняется на Доступна.

Закрыть лишние порты

History API должен слушать только 127.0.0.1:8088. Наружу откройте HTTPS-порт 443 reverse proxy только для IP панели GUJ. SSH оставьте только для своего IP.

sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow from IP_ПАНЕЛИ_GUJ to any port 443 proto tcp
sudo ufw allow from ВАШ_IP to any port 22 proto tcp
sudo ufw enable
sudo ufw status verbose

Если у панели несколько IP, добавьте каждую строку отдельно

Помогла ли эта статья?

Ваш ответ поможет сделать документацию понятнее