Я получаю эту ошибку 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