Мониторинг TCP-портов и служб
Мониторинг TCP-портов с нескольких точек: открыт ли порт, поднимается ли TLS и отвечает ли служба ожидаемым баннером — SSH, RDP, VPN, Redis, RabbitMQ, игровые серверы. Порт закрылся — уведомление через минуты, а не после жалобы.
Зачем нужен мониторинг открытых портов сервера
Не всё, что важно, отвечает по HTTP. SSH, RDP, VPN, Redis, RabbitMQ, игровой сервер, SIP-АТС, принтер в сети — у всех есть TCP-порт, по которому можно понять, жива ли служба. Порт закрылся — значит, упал процесс, сработал фаервол или сервер перезагрузился и служба не поднялась.
Мониторинг TCP-портов подключается к порту с нескольких точек и, если нужно, обменивается с службой первыми байтами: отправляет команду и проверяет ответ. Так видно не только «порт открыт», но и «служба отвечает правильно».
Что проверяем
- TCP и TLS
- Отправка команды после соединения и проверка ответа регуляркой
- Проверка с нескольких точек
Типичные причины сбоев
- Служба упала или не поднялась после перезагрузки (Redis, RabbitMQ, SSH-демон).
- Фаервол или fail2ban заблокировали порт после обновления правил.
- Сменился IP или порт после переезда, а конфиг клиентов остался старым.
- Исчерпан лимит соединений — порт открыт, но служба не отвечает баннером.
Как работает проверка порта с нескольких точек и уведомление
Точка устанавливает TCP-соединение (при необходимости в TLS) и измеряет время подключения. Если задана команда и регулярное выражение для баннера, после соединения отправляется команда и первая строка ответа сравнивается с шаблоном: например, «SSH-2.0» для SSH, «+PONG» для Redis после «PING».
Отказ в соединении, таймаут, обрыв или неподходящий баннер — ошибка с указанием причины. Сбой подтверждается с нескольких точек. Интервал от 1 минуты, стоимость 0,01 ₽ за проверку.
Что приходит в уведомлении
🔴 Redis prod — не работает redis.example.ru:6379 Причина: Соединение отклонено (ECONNREFUSED) Начало: 14.09.2026 09:41 (МСК) Точки: Москва, Хельсинки Открыть монитор →
Так выглядит сообщение о сбое; о восстановлении придёт отдельное — с длительностью простоя. Каналы: Telegram, MAX, email, SMS, звонок, webhook.
Параметры проверки
| Параметр | Описание |
|---|---|
| Хост или IP | |
| Порт | |
| TLS | Да / нет |
| IP-версия | Авто, Только IPv4, Только IPv6 (по умолчанию: 0) |
| Отправить после соединения | PING\r\n |
| Ожидаемый ответ (регулярка) | ^\+PONG |
Интервал — от 1 минута до 1 суток (рекомендуем 5 минут). Проверка выполняется с выбранных точек мониторинга, сбой подтверждается заданным числом точек.
Мониторинг SSH, RDP, VPN и игрового сервера: чем лучше nc в cron
- Проверка баннера отличает открытый порт от работающей службы.
- TLS-соединение для портов с шифрованием без отдельной настройки.
- Несколько точек: закрытый только для одной сети порт — это блокировка на маршруте, а не сбой службы.