Самостоятельно размещаемая система оповещений для метрик, логов и SQL-источников с маршрутизацией уведомлений, встроенным AI-агентом и MCP-сервером.
quyxishi/whitebox
Prometheus exporter проверяет доступность внешних VPN-сервисов по VMESS, VLESS, Trojan, WireGuard, AmneziaWG, Shadowsocks и Hysteria2.
- Звёзды
- 162
- Форки
- 14
- Открытые issues
- 1
- Последний коммит
- 6 дней назад
Что это?
whitebox — это Prometheus exporter для проверки доступности внешних VPN-сервисов. Ему передают URI VPN-подключения и целевой URL; он поднимает через VPN туннель, запрашивает целевой адрес и возвращает результат в виде метрик Prometheus: успешность запроса, HTTP-статус, время на каждом этапе и размер ответа.
Поддерживаются протоколы VMESS, VLESS, Trojan, WireGuard, AmneziaWG, Shadowsocks и Hysteria2. Проверки можно запускать по запросу через REST endpoint, планировать в Prometheus по схеме multi-target exporter или вызывать из cron с помощью curl. В YAML-файле конфигурации можно задать именованные области проверки, таймауты, тела запросов, пользовательские заголовки и правила валидации fail_if; конфигурация перезагружается по SIGHUP.
Exporter повторно использует запущенные экземпляры xray для разных проверок, чтобы ограничить потребление памяти, и публикует статистику собственного кеша на /metrics. Он поставляется в виде Docker-образа и включает пример стека с Prometheus, blackbox_exporter и Grafana.
Ключевые возможности
- 01Проверяет туннели по протоколам VMESS, VLESS, Trojan, WireGuard, AmneziaWG, Shadowsocks и Hysteria2.
- 02Публикует результаты проверок в виде метрик Prometheus, включая успешность, код статуса и время на каждом этапе.
- 03Предоставляет REST endpoint /probe для проверок по запросу или расписанию.
- 04Поддерживает области проверки в YAML с таймаутами, телами запросов, заголовками и правилами валидации ответов.
- 05Перезагружает конфигурацию по SIGHUP без перезапуска.
- 06Повторно использует экземпляры xray для разных проверок и публикует метрики кеша.
Сценарии использования
- Мониторинг доступности собственных или сторонних VPN-узлов в Prometheus и Grafana.
- Запуск регулярных проверок доступности для набора URI VPN-подключений.
- Разовая быстрая проверка, может ли VPN-подключение открыть заданный URL.
Быстрый старт
- 1
Запустите предварительно собранный образ Docker
docker run --rm -d --name whitebox -p 9116:9116 rxyvea/whitebox:latest - 2
Проверьте цель через URI VPN-подключения
curl -sG http://localhost:9116/probe --data-urlencode 'ctx=vless://c9f5228c-8870-47bd-a92f-9b38c7c02b08@1.2.3.4:443?type=tcp&encryption=none&security=reality&pbk=DF-3KL2W4RuNB2HgsEDmLqHLvvTTN4_QfwUCUn8Uhy0&fp=firefox&sni=ce-cdn.icloud-content.com&sid=620352b7&spx=%2F&flow=xtls-rprx-vision' --data-urlencode 'target=https://google.com'
Что важно знать
- Для проверки каждой цели требуется действующий URI VPN-подключения, поэтому данные собственного VPN-сервера нужно предоставить самостоятельно.
- Использование памяти может неограниченно расти, если не включить кэш экземпляров xray или не установить ограничение памяти для контейнера.
Темы
Частые вопросы
- Что такое whitebox?
- Prometheus exporter проверяет доступность внешних VPN-сервисов по VMESS, VLESS, Trojan, WireGuard, AmneziaWG, Shadowsocks и Hysteria2. whitebox — это Prometheus exporter для проверки доступности внешних VPN-сервисов. Ему передают URI VPN-подключения и целевой URL; он поднимает через VPN туннель, запрашивает целевой адрес и возвращает результат в виде метрик Prometheus: успешность запроса, HTTP-статус, время на каждом этапе и размер ответа.
- whitebox можно использовать бесплатно? Какая у него лицензия?
- whitebox распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- whitebox всё ещё поддерживается?
- Активно поддерживается. Последний коммит в whitebox — 14 окт. 2026 г..
- Для чего можно использовать whitebox?
- Мониторинг доступности собственных или сторонних VPN-узлов в Prometheus и Grafana. Запуск регулярных проверок доступности для набора URI VPN-подключений. Разовая быстрая проверка, может ли VPN-подключение открыть заданный URL.
- Как установить whitebox?
- Запустите предварительно собранный образ Docker: docker run --rm -d --name whitebox -p 9116:9116 rxyvea/whitebox:latest Проверьте цель через URI VPN-подключения: curl -sG http://localhost:9116/probe --data-urlencode 'ctx=vless://c9f5228c-8870-47bd-a92f-9b38c7c02b08@1.2.3.4:443?type=tcp&encryption=none&security=reality&pbk=DF-3KL2W4RuNB2HgsEDmLqHLvvTTN4_QfwUCUn8Uhy0&fp=firefox&sni=ce-cdn.icloud-content.com&sid=620352b7&spx=%2F&flow=xtls-rprx-vision' --data-urlencode 'target=https://google.com'
- Где скачать whitebox?
- Исходный код и инструкции по установке — на GitHub: https://github.com/quyxishi/whitebox
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Самостоятельно размещаемое ПО, которое запускает тесты скорости интернета по расписанию и хранит результаты в течение заданного срока.
CLI-инструмент для мониторинга доступности сайтов, времени ответа и срока действия SSL-сертификатов с оповещениями через уведомления на рабочем столе и вебхуки.
Создаёт панели Grafana и настраивает готовые оповещения для распространённых сервисов и инфраструктуры — без ручного написания запросов.
Платформа для самостоятельного развертывания безопасного удаленного доступа: WireGuard VPN, управление идентификацией, MFA и контроль сетевого доступа.
Реализация SSH-ловушки endlessh на Go с экспортом метрик Prometheus и дашбордом Grafana для статистики атакующих.