SSH проверки с помощью Proto Observability

Обновлено 15.10.2026
Отслеживание подключения по SSH к удаленным узлам и время отклика SFTP.

Описание

SSH-проверка подключается к узлу по SSH, проходит аутентификацию и, по желанию, проверяет работу SFTP. Проверка подходит для контроля доступности серверов, на которые нельзя установить Агент (сетевое оборудование, СХД, внешние SFTP-серверы обмена файлами), и для контроля работоспособности SFTP-сервисов.

Установка

Проверка входит в поставку Агента Proto Observability. Отдельная установка не требуется.

Для проверки нужна учётная запись на проверяемом узле. Создайте отдельную учётную запись с минимальными правами: для SSH-проверки достаточно права на вход, для SFTP-проверки — доступа на чтение к домашнему каталогу.

Конфигурация

Создайте файл ssh_check.d/conf.yaml в каталоге conf.d/ директории конфигурации Агента (за основу можно взять conf.yaml.example в том же каталоге).

Пример с аутентификацией по ключу:

init_config:

instances:
  - host: sftp.corp.local
    port: 22
    username: monitoring
    private_key_file: /etc/protoobp-agent/ssh/monitoring_ecdsa
    private_key_type: ecdsa
    sftp_check: true
    tags:
      - service:file_exchange

Пример с аутентификацией по паролю без SFTP-проверки:

init_config:

instances:
  - host: 10.20.0.15
    username: monitoring
    password: ENC[ssh_monitoring_password]
    sftp_check: false

Пароль в примере задан через управление секретами и не хранится в файле в открытом виде.

Настройки и их описание

НастройкаОписание
hostОбязательный. Имя или IP-адрес узла.
portПорт SSH (по умолчанию 22).
usernameОбязательный. Учётная запись для подключения.
passwordПароль учётной записи. Если задан private_key_file, используется как парольная фраза ключа.
private_key_fileПуть к закрытому ключу. Файл должен быть доступен на чтение пользователю Агента (pobp-agent).
private_key_typeТип ключа: rsa (по умолчанию) или ecdsa. Другие типы ключей не поддерживаются.
sftp_checkПо умолчанию true. Проверять работу SFTP: открыть сессию и прочитать список файлов домашнего каталога.
add_missing_keysПо умолчанию false. Если true, неизвестный ключ узла принимается автоматически. Если false, ключ узла должен быть заранее добавлен в known_hosts пользователя Агента.
force_sha1По умолчанию false. Использовать устаревшую подпись ssh-rsa (SHA-1) — только для старых SSH-серверов, которые не поддерживают rsa-sha2-256/512.
tagsСписок пользовательских тегов.

Агент добавляет к данным проверки тег instance:<host>-<port>. Общие параметры (min_collection_interval, service) описаны на странице Общие параметры интеграций.

Поддерживается аутентификация по паролю и по ключу с необязательной парольной фразой. Многофакторная аутентификация не поддерживается.

Метрики

  • sftp_response_time — время чтения списка файлов по SFTP (секунды). Отправляется, если sftp_check: true и SFTP-сессия открылась.

Сервисные проверки

Сервисные проверки сохраняются как метрики со значением статуса: 0 — ok, 2 — critical.

ssh.can_connect

Метрика ssh_can_connect.

  • ok — подключение и аутентификация выполнены;
  • critical — узел недоступен, ключ узла не принят или аутентификация не прошла.

sftp.can_connect

Метрика sftp_can_connect. Отправляется, если sftp_check: true.

  • ok — SFTP-сессия открыта, список файлов прочитан;
  • critical — SSH-подключение не удалось или SFTP недоступен.

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

Запустите команду статуса Агента и убедитесь, что в разделе Collector есть ssh_check без ошибок.

Пример для Linux:

sudo protoobp-agent status
sudo -u pobp-agent protoobp-agent check ssh_check

Команды для других платформ — на странице Команды и проверка работы.

Устранение неполадок

  • Ключ узла не известен (Server '...' not found in known_hosts). Добавьте ключ узла в known_hosts в домашнем каталоге пользователя Агента (при установке пакетом на Linux — /opt/protoobp-agent):

    sudo mkdir -p /opt/protoobp-agent/.ssh
    ssh-keyscan -p 22 sftp.corp.local | sudo tee -a /opt/protoobp-agent/.ssh/known_hosts
    sudo chown -R pobp-agent:pobp-agent /opt/protoobp-agent/.ssh
    sudo chmod 700 /opt/protoobp-agent/.ssh
    

    Либо включите add_missing_keys: true, если проверка подлинности ключа узла не требуется.

  • Аутентификация не проходит. Проверьте логин и пароль вручную: ssh monitoring@sftp.corp.local. Для ключей типа ed25519 используйте вместо них ключ RSA или ECDSA — другие типы проверка не поддерживает.

  • Ошибка чтения ключа (Unable to find private key file, Private key file is invalid). Проверьте путь к файлу и права: файл должен читаться пользователем pobp-agent.

  • Старый SSH-сервер отклоняет подпись. Включите force_sha1: true.

  • sftp.can_connect в статусе critical при успешном ssh.can_connect. На узле не включена подсистема SFTP или учётной записи запрещён доступ к ней. Если SFTP не нужен, установите sftp_check: false.