Назад | Перейти на главную страницу

check_ssh, выполняемый с сервера Nagios, возвращает «Ответ сервера:», больше ничего

Команда работает на хосте, который мне нужно отслеживать (его IP обозначается здесь как $ HOSTADDRESS $):

[root@host ~]# /usr/local/nagios/libexec/check_ssh localhost
SSH OK - OpenSSH_4.3 (protocol 2.0)

Однако на сервере Nagios это не так:

root@server:~# /usr/lib/nagios/plugins/check_ssh -H $HOSTADDRESS$
Server answer: 

Я вижу, что порт открыт:

root@server:~# /usr/lib/nagios/plugins/check_tcp -H $HOSTADDRESS$ -p 22
TCP OK - 0.123 second response time on port 22|time=0.123277s;;;0.000000;10.000000

И я могу проверить с помощью telnet:

root@server:/etc/nagios3/conf.d# telnet $HOSTADDRESS$ 22
Trying $HOSTADDRESS$...
Connected to $HOSTADDRESS$.
Escape character is '^]'.

После двухчасового поиска в Интернете и пробования разных предложений у меня закончились идеи. У меня есть несколько других хостов с аналогичной настройкой, и у них нет этой проблемы. Я сравнил конфиги и они выглядят одинаково (думаю).

Мне здесь явно чего-то не хватает.

У меня была такая же проблема с проверкой сервера OpenSSH, установленного в Windows (KpyM Telnet / SSH Server), и я проверяю порт с помощью check_ssh с моего сервера Nagios linux.

С участием "check_ssh", Я получил ответ" Ответ сервера "С"check_tcp"в порту 22: SSH OK

В логах SSH-сервера в Windows ip сервера nagios был в запрещенных IP-адресах.

Я удалил IP из запрещенных IP-адресов, и теперь check_ssh в порядке:

check_ssh ответ сейчас: SSH OK - cryptlib (protocol 2.0)

Может это поможет. Возможно, не то же программное обеспечение, но, возможно, такое же поведение.

Вы установили SSH без пароля между сервером Nagios и сервером, который вы пытаетесь проверить?

Это необходимо настроить, так как не может быть предложено ввести пароль. Вы можете проверить это, установив соединение с сервером nagios и попытавшись подключиться к серверу, который вы пытаетесь проверить как пользователь nagios, и посмотреть, запрашивает ли он пароль.

К тому же telnet - это не ssh, это совершенно другой протокол!