Monitoruj ssh na innym niż domyślny porcie za pomocą Nagios

10

Właśnie wdrożyłem Nagios na serwerze Gentoo i wszystko jest w porządku, z wyjątkiem ssh, który oznacza jako „KRYTYCZNY”, ponieważ odmawia połączenia. Ale to dlatego, że działa na innym porcie niż domyślny 22. Jak to zmienić, aby monitorował właściwy port?

Helder S. Ribeiro
źródło

Odpowiedzi:

6
host:~$ /usr/lib/nagios/plugins/check_ssh --help
check_ssh v1991 (nagios-plugins 1.4.12)
Copyright (c) 1999 Remi Paulmier <[email protected]>
Copyright (c) 2000-2007 Nagios Plugin Development Team
        <[email protected]>

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


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

czy to odpowiada na twoje pytanie? Parametr -p pozwala określić port, dokonać niestandardowej odprawy w /etc/nagios/nrpe.cfg i umieścić tam:

command[check_remote_ssh]= /usr/lib/nagios/plugins/check_ssh -p 1234 some.host
pQd
źródło
1
Zadziałało! W moim przypadku był to lokalny check_sshw /etc/nagios/objects/commands.cfg. Dzięki za pomoc :)
Helder S. Ribeiro,
15

W ssh pluging config /etc/nagios-plugins/config/ssh.cfg istnieje alias o nazwie check_ssh_port. jeśli nie istnieje, możesz to zdefiniować jak wyżej:


$ 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$'
        }

w pliku serwisowym /etc/nagios3/conf.d/services_nagios2.cfg zdefiniuj usługę ssh do monitorowania w następujący sposób:


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
}
zastąp 12000 domyślnym portem ssh i serwerem docelowym.

Ali Mezgani
źródło
+1 dobrze napisane dla najnowszej wersji nagios (w tej chwili)
cwd 11.12.11
6

Ponieważ żadne z powyższych rozwiązań nie zadziałało, opublikuję tę małą odmianę.

Ta definicja jest domyślna (np . localhost.cfg:) z jedynym dodatkiem opcji -p i odstępem pomiędzy nimi.

Chyba jest to hybrydowa wersja dwóch podanych rozwiązań.

Działa na Nagios Core 4 z wtyczkami 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
        }
kortykopia
źródło
Można go również zmienić / skonfigurować w interfejsie internetowym Nagios4: System -> Konfiguracja , a następnie na przykład dołączając wykrzyknik i opcje wiersza poleceń check_ssh!-p 123456.
ILMostro_7,
3

Możesz również zdefiniować drugi parametr „serwer” w parametrze nazwa_hosta w następujący sposób:

    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
}

Jeśli więc zmieni się adres hosta, wystarczy zmodyfikować ten parametr tylko raz, dla wszystkich usług zdefiniowanych dla tego hosta.

aneolf
źródło
0
define service{
        use                     generic-service
        host_name               localhost
        service_description     SSH
        check_command           check_ssh!-p 9898
        }

działając poprawnie, możesz spróbować.

Rajib Khan
źródło