web-dev-qa-db-ja.com

Nagiosでデフォルト以外のポートのsshを監視する

NagiosをGentooサーバーにデプロイしたところ、sshを除いてすべて正常に動作しました。sshは接続を拒否しているため、「CRITICAL」とマークされています。ただし、デフォルトの22とは異なるポートで実行されているためです。正しいポートを監視するように変更するにはどうすればよいですか?

10
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>

これはあなたの質問に答えますか? -pパラメータを使用すると、ポートを指定し、/ etc/nagios/nrpe.cfgでカスタムチェックを行ってそこに配置できます。

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

Sshプラグイン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
}
15
Ali Mezgani

上記の解決策はどれもうまくいかなかったので、この小さなバリエーションを投稿します。

この定義はデフォルトです(例:localhost.cfg)-pオプションとその間のスペースのみを追加します。

これは、与えられた2つのソリューションのハイブリッドバージョンだと思います。

Nagiosプラグイン2.1.1を搭載したNagios Core 4で動作します

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
        }
6
cortopy

次のように、Host_nameパラメータで2番目のパラメータ「server」を定義することもできます。

    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
}

したがって、ホストのアドレスが変更された場合、このホストに定義されているすべてのサービスについて、このパラメーターを1回変更するだけで済みます。

3
aneolf
define service{
        use                     generic-service
        Host_name               localhost
        service_description     SSH
        check_command           check_ssh!-p 9898
        }

適切に機能している場合は、それを試すことができます。

0
Rajib khan