Мониторинг SSH на нестандартный порт с Nagios


10

Я только что развернул Nagios на сервере Gentoo, и все в порядке, кроме ssh, который помечается как «КРИТИЧЕСКИЙ», потому что он отказывается от соединений. Но это потому, что он работает на порте, отличном от порта по умолчанию 22. Как мне изменить его, чтобы он отслеживал правильный порт?

Ответы:


6
host:~$ /usr/lib/nagios/plugins/check_ssh --help
check_ssh v1991 (nagios-plugins 1.4.12)
Copyright (c) 1999 Remi Paulmier <remi@sinfomic.fr>
Copyright (c) 2000-2007 Nagios Plugin Development Team
        <nagiosplug-devel@lists.sourceforge.net>

Try to connect to an SSH server at specified server and port


Usage:check_ssh [-46] [-t <timeout>] [-r <remote version>] [-p <port>] <host>

Отвечает ли это на ваш вопрос? Параметр -p позволяет указать порт, выполнить пользовательскую проверку в /etc/nagios/nrpe.cfg и поместить туда:

command[check_remote_ssh]= /usr/lib/nagios/plugins/check_ssh -p 1234 some.host

1
Это сработало! В моем случае это был местный check_sshжитель /etc/nagios/objects/commands.cfg. Спасибо за вашу помощь :)
Helder S Ribeiro

15

В конфигурации подключения SSH /etc/nagios-plugins/config/ssh.cfg есть псевдоним check_ssh_port. если он не существует, вы можете определить его как выше:


$ cat >> /etc/nagios-plugins/config/ssh.cfg
define command{
        command_name    check_ssh_port
        command_line    /usr/lib/nagios/plugins/check_ssh -p '$ARG1$' '$HOSTADDRESS$'
        }

в файле службы /etc/nagios3/conf.d/services_nagios2.cfg определите службу ssh для мониторинга следующим образом:


define service {
        hostgroup_name                  ssh2-servers
        service_description             SSH2
        check_command                   check_ssh_port!12000!server
        use                             generic-service
        notification_interval           240 ; set > 0 if you want to be renotified
}
замените 12000 вашим ssh-портом и сервером по умолчанию вашей целью.


+1 хорошо написано для последней версии nagios (на данный момент)
cwd

6

Поскольку ни одно из приведенных выше решений не помогло мне, я опубликую этот небольшой вариант.

Это определение по умолчанию (например:) localhost.cfgс единственным добавлением опции -p и пробела между ними.

Я предполагаю, что это гибридная версия двух приведенных решений.

Работает на Nagios Core 4 с nagios-плагинами 2.1.1

define service{
        use                             local-service         ; Name of service template to use
        host_name                       localhost
        service_description             SSH
        check_command                   check_ssh!-p 12345
        notifications_enabled           1
        }

Его также можно изменить / настроить в веб-интерфейсе Nagios4: « Система» -> « Конфигурация» , а затем, например, добавить восклицательный знак и параметры командной строки check_ssh!-p 123456.
ILMostro_7

3

Вы также можете определить второй параметр "сервер" в параметре host_name следующим образом:

    define host{
        use                     generic-host            ; Name of host template to use
        host_name               host
        alias                   host
        address                 92.193.170.124
}


# Define a service to check if ssh services are running
define service {
        use                     generic-service         ; Name of service template to use
        host_name               host
        service_description     SSH Port 4959
        check_command           check_ssh_port!4959
        notification_interval   0 ; set > 0 if you want to be renotified
}

Таким образом, если адрес хоста изменяется, вам нужно изменить этот параметр только один раз для всех сервисов, определенных для этого хоста.


0
define service{
        use                     generic-service
        host_name               localhost
        service_description     SSH
        check_command           check_ssh!-p 9898
        }

работая правильно, вы можете попробовать это.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.