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

check_nrpe ssl не смог завершить рукопожатие, как на главном, так и на клиентском сервере он отлично работает индивидуально

Я получаю эту ошибку check_nrpe ssl couldnt complete handshake на главном сервере, когда пытаюсь выполнить приведенную ниже команду.

/usr/local/nagios/libexec/check_nrpe -H 10.192.122.234
10.192.122.234 --> nagios client machine

но когда я использую

/usr/local/nagios/libexec/check_nrpe -H localhost

он дает правильный результат, то есть версию nrpe, даже вместо localhost, если я использую IP-адрес главного сервера, он дает мне версию nrpe в качестве результата.

Когда я выполняю ту же команду с клиентской машины nagios, она снова дает мне версию nrpe. IP-адрес главного сервера находится в файле nrpe.cfg. Для информации и главный IP, и клиентский IP настроены с eth1.

Так в чем же проблема и почему мой главный сервер не может запустить эту команду на клиентских машинах?

Когда вы получите эту ошибку

CHECK_NRPE: Error - Could not complete SSL handshake.

это означает, что сервер nrpe не настроен для разрешения этого запроса.

Вам необходимо разрешить IP-адрес запрашивающей стороны из файла конфигурации nrpe /etc/nagios/nrpe.cfg. Вы должны включить IP в строку:

allowed_hosts=127.0.0.1,your.ip.goes.here

Не забудьте перезагрузить / перезапустить сервер nrpe после изменения конфигурации.

По сути, нет необходимости запускать check_nrpe из клиента Nagios, потому что нет никаких причин для его установки на клиентском компьютере Nagios.

Плагин check_nrpe всегда должен запускаться с сервера Nagios.

В дополнение к ответу Халеда я бы также проверил, настроен ли NRPE как автономный демон или настроен для запуска с помощью Xinetd.

Если он настроен для работы через xinetd (вы можете проверить, есть ли файл с именем nrpe в /etc/xientd.d), это будет выглядеть так:

service nrpe
{
        flags           = REUSE
        type            = UNLISTED
        port            = 5666
        socket_type     = stream
        wait            = no
        user            = nagios
        group           = nagios
        server          = /usr/sbin/nrpe
        server_args     = -c /etc/nagios/nrpe.cfg --inetd
        log_on_failure  += USERID
        disable         = no
        only_from       = 127.0.0.1 nagios01.company.com 10.X.X.30
}

Не забудьте указать IP-адрес или имя хоста вашего Nagios-сервера в строке only_from и убедитесь, что значения разделены пробелами, а не запятыми, как в /etc/nrpe/nrpe.cfg файл.

Еще я хотел бы проверить, что сервер Nagios может подключаться к клиенту Nagios через порт NRPE через Telnet.

Порт по умолчанию - 5666, поэтому вы должны запустить со своего сервера Nagios следующую команду:

telnet nagios_server 5666

Результат должен выглядеть так:

[root@nagios01 ~]# telnet do01.company.com 5666
Trying 10.X.X.30...
Connected to do01.company.com.
Escape character is '^]'.

Если вы не можете подключиться по telnet с сервера Nagios к клиенту Nagios, я бы начал искать там.

Есть официальный документ, который я всегда использую при устранении проблем, связанных с NRPE, ознакомьтесь с ним: Официальная документация Nagios