Überwachen Sie ssh auf einem nicht standardmäßigen Port mit Nagios

10

Ich habe Nagios gerade auf einem Gentoo-Server bereitgestellt und alles ist in Ordnung, außer ssh, das als "KRITISCH" markiert wird, weil es Verbindungen verweigert. Aber das liegt daran, dass es auf einem anderen Port als dem Standardport 22 ausgeführt wird. Wie ändere ich es so, dass es den richtigen Port überwacht?

Helder S Ribeiro
quelle

Antworten:

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>

Beantwortet das deine Frage? Mit dem Parameter -p können Sie den Port angeben, in /etc/nagios/nrpe.cfg eine benutzerdefinierte Prüfung durchführen und dort Folgendes eingeben:

command[check_remote_ssh]= /usr/lib/nagios/plugins/check_ssh -p 1234 some.host
pQd
quelle
1
Es funktionierte! In meinem Fall war es der Einheimische check_sshin /etc/nagios/objects/commands.cfg. Vielen Dank für Ihre Hilfe :)
Helder S Ribeiro
15

In ssh pluging config /etc/nagios-plugins/config/ssh.cfg gibt es einen Alias ​​namens check_ssh_port. Wenn es nicht vorhanden ist, können Sie es wie oben definieren:


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

Definieren Sie in der Servicedatei /etc/nagios3/conf.d/services_nagios2.cfg Ihren zu überwachenden SSH-Service wie folgt:


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
}
Ersetzen Sie 12000 durch Ihren Standard-SSH-Port und den Server durch Ihr Ziel.

Ali Mezgani
quelle
+1 gut geschrieben für die neueste Version von Nagios (zu diesem Zeitpunkt)
CWD
6

Da keine der oben genannten Lösungen für mich funktioniert hat, werde ich diese kleine Variation veröffentlichen.

Diese Definition ist die Standarddefinition (z. B. localhost.cfg:) mit dem einzigen Zusatz der Option -p und dem dazwischen liegenden Leerzeichen.

Ich denke, es ist eine Hybridversion von zwei der angegebenen Lösungen.

Es funktioniert auf Nagios Core 4 mit Nagios-Plugins 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
        }
Cortopy
quelle
Sie kann auch in der Nagios4-Weboberfläche geändert / konfiguriert werden: System -> Konfiguration , und anschließend beispielsweise das Ausrufezeichen und die Befehlszeilenoptionen anhängen check_ssh!-p 123456.
ILMostro_7
3

Sie können auch den zweiten Parameter "Server" im Parameter host_name folgendermaßen definieren:

    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
}

Wenn sich also die Adresse des Hosts ändert, müssen Sie diesen Parameter für alle für diesen Host definierten Dienste nur einmal ändern.

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

Wenn Sie richtig arbeiten, können Sie es versuchen.

Rajib Khan
quelle