web-dev-qa-db-ja.com

NagiosNRPEは引数を許可しません

NagiosNRPEプラグインを使用してサーバーと通信しようとしています。 /etc/nagios/nrpe_local.cfgに使用するコマンド定義があります。

command[check_service]=/usr/lib/nagios/plugins/check_service -s $ARG1$

ターミナルでコマンドを手動で実行すると、成功します。

# /usr/lib/nagios/plugins/check_service -s bind9
OK: Service bind9 is running!

Nagiosサーバーから実行しようとすると、コマンドが定義されていないと文句が表示されます。

# /usr/lib/nagios/plugins/check_nrpe -H 10.32.10.3 -c check_service -a bind9
NRPE: Command 'check_service!bind9' not defined

他のcheck_nrpeコマンドは機能するので、サーバーのcommands.cfgに問題はないと思いますが、とにかく定義は次のとおりです。

define command {
    command_name        check_nrpe
    command_line        /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -t 30 -c $ARG1$
}

サーバー上でのチェックは次のようになります。

define service {
    use                 local-service
    Host_name           dc1,dc2
    service_description BIND Service
    check_command       check_nrpe!check_service!bind9
}

Webインターフェースでは、重要:サービスが実行されていません!を返しますが、実際にはそうではありません。

check_nrpeを取得して、1つの追加引数を許可するにはどうすればよいですか? dont_blame_nrpeを有効にしようとしましたが、それでもうまくいきませんでした。

編集-デバッグをオンにしてチェックを再実行すると、syslogに次のように表示されます。

Dec 19 09:01:56 dc1 nrpe[5586]: CONN_CHECK_PEER: checking if Host is allowed: 10.32.10.12 port 33962
Dec 19 09:01:56 dc1 nrpe[5586]: Connection from 10.32.10.12 port 33962
Dec 19 09:01:56 dc1 nrpe[5586]: is_an_allowed_Host (AF_INET): is Host >10.32.10.12< an allowed Host >10.32.10.12<
Dec 19 09:01:56 dc1 nrpe[5586]: is_an_allowed_Host (AF_INET): is Host >10.32.10.12< an allowed Host >10.32.10.12<
Dec 19 09:01:56 dc1 nrpe[5586]: is_an_allowed_Host (AF_INET): Host is in allowed Host list!
Dec 19 09:01:56 dc1 nrpe[5586]: Host address is in allowed_hosts
Dec 19 09:01:56 dc1 nrpe[5586]: Host 10.32.10.12 is asking for command 'check_service' to be run...
Dec 19 09:01:56 dc1 nrpe[5586]: Running command: /usr/lib/nagios/plugins/check_service -s
Dec 19 09:01:56 dc1 nrpe[5587]: WARNING: my_system() seteuid(0): Operation not permitted
Dec 19 09:01:56 dc1 nrpe[5586]: Command completed with return code 2 and output: CRITICAL: Service  is not running!
Dec 19 09:01:56 dc1 nrpe[5586]: Return Code: 2, Output: CRITICAL: Service  is not running!
Dec 19 09:01:56 dc1 nrpe[5586]: Connection from 10.32.10.12 closed.

/etc/systemd/system/multi-user.target.wants/nagios-nrpe-server.serviceのグループがnrpe_group/etc/nagios/nrpe.cfgパラメーターと一致することを確認しました。同じユーザーが/etc/group/etc/passwdに存在します。

1
Canadian Luke

問題は、--enable-command-argsを使用するために必要なnagios-nrpe-serverパッケージをビルドするときに、Debianパッケージがdont_blame_nrpeを設定しないことです。

2
Canadian Luke
  1. dont_blame_nrpeを有効にした後、nrpeデーモンを再起動したことを確認してください
  2. Nrpe.cfgのdebugディレクティブを1に変更し、デーモンを再起動します。その後、ログに有用なデバッグ情報が表示されます。
2
fukawi2