Как подключить сервер к мониторингу без входящих портов
Установка агента одной командой, что он присылает, откуда берутся инциденты и почему платформе не нужны ни ключи от сервера, ни открытые порты.

Сервер подключается одной командой, выполненной по SSH вами, — платформе для этого не нужны ни ключи, ни пароль от машины.
Что понадобится
- сервер с Linux и Docker, от 2 ГБ оперативной памяти;
- доступ к нему по SSH — свой собственный, чтобы выполнить одну команду;
- ничего больше: ни открытых входящих портов, ни белого списка адресов.
Шаг 1. Добавьте сервер
Проект → Мониторинг → Серверы → Подключить сервер. Введите понятное название — «Продакшн», «Песочница», имя клиента.
Дальше два пути:
- Вручную — команда на сервере. Платформа покажет команду установки с одноразовым ключом. Копируете, выполняете у себя по SSH.
- По SSH — автоматически. Агента ставит платформа: она подключается к серверу по SSH с вашим паролем. Пароль используется один раз при установке и не сохраняется.
Ключ показывается один раз и живёт 60 минут. Восстановить его нельзя: если потеряли — подключайте сервер заново.
Шаг 2. Выполните команду на сервере
Установщик создаёт на сервере пару ключей, регистрирует его и запускает фоновую службу. Закрытая часть ключа остаётся на вашем сервере и не передаётся никуда, включая нас.
Через минуту сервер в интерфейсе станет активным. Первые метрики приходят следующим тактом.
Шаг 3. Укажите, что проверять
Кроме метрик хоста агент опрашивает адреса проверок здоровья ваших приложений — с самого сервера, изнутри. Это отличается от внешней проверки доступности: внешняя отвечает на вопрос «видно ли снаружи», внутренняя — «жив ли процесс». Обе нужны, и они ловят разные отказы.
Что показывает мониторинг
- процессор, память, диск;
- контейнеры Docker и их состояние;
- задержку на проверках здоровья;
- историю по каждому показателю.
Откуда берутся инциденты
Инцидент открывается сам, без вашего участия, в трёх случаях: пропал сигнал от агента, кончается диск, упал контейнер. Участникам проекта уходит письмо со ссылкой на карточку.
«Пропал сигнал» здесь — полноценное событие, а не пробел в графике. Сервер, который перестал отвечать, и сервер, о котором нет данных, для дежурного одно и то же.
Почему агент не требует входящих портов
Агент работает по pull-модели: он сам обращается наружу за заданием и присылает результат. Поэтому входящие порты ему не нужны — хватает исходящего соединения.
Только не путайте это с отсутствием доступа. Задания присылает платформа, агент их выполняет, так что доступ к серверу у платформы есть — и мы его сужаем: агент развёртывания ходит к Docker через белый список вызовов, а всё, что платформа ему отправила, видно вам в журнале на странице сервера. Подробно, с механизмом за каждым пунктом, — на странице Безопасность.
Отсюда же второе: у нас нет ваших SSH-ключей. Их негде взять — при установке ключи создаёт сам сервер, а секреты развёртывания оператор платформы не читает по устройству хранилища, а не по регламенту.
Что дальше
- Проверки снаружи — HTTP, TCP, TLS и остаток срока сертификата: Мониторинг доступности.
- Подбор паролей и сканы портов графиком: Аналитика угроз.
- Выкат приложений на тот же сервер: Деплой из Git.
Полное описание раздела — Мониторинг серверов и Docker.
Автор
Александр ЦапковОснователь Скоупворк
Веду платформу и её боевой контур сам: разработка, выкат, дежурство. Пишу о том, на чём мы обожглись, — с датами, замерами и ссылками на решения в репозитории.