Контролюйте 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 pluging config /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 добре написано для останньої версії нагіосів (наразі)
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.