これは非常に一般的なエラーであり、RTFMが通常は正解ですが、すべての明らかなポイントをカバーしたと思います。
NRPEはユーザーnagiosとして実行されています
Sudo su - nagios
を使用してnagiosユーザーになり、/ etc/nagios/nrpe.confからコマンドをコピーして貼り付けると、完全に機能し、期待どおりの出力が生成されます。
デバッグをオンにすると、NRPEプラグインのロード後に何もログに記録されません(サービスの再起動中にログに記録されるエントリがあります)。
何が起こっているのでしょうか?確かに何かがデバッグログに記録されるべきですか?より詳細なログを強制する方法はありますか(構成ファイルのコメントはそうではないことを示唆しています)。
SELinuxは問題をログに記録していません。
一般に、スクリプトは非常に正常ですが、1つの例外を除いて、Sudoを使用してコマンドを実行します。 nagiosユーザーには、シェルアウトされているコマンドへのパスワードなしのアクセス権が付与されており、nagiosユーザーにsuすると機能します。
更新:Sudoを再構成した後、ttyを要求しないように、 SSH経由でチェックが正常に機能し、期待どおりの結果が返されます。ただし、NRPEでは機能しません。
問題はSELinuxで、少なくともRHELでは、NRPEサービスがほとんど何でも実行できなくなりました。
最も簡単な解決策はSELinuxをオフにすることですが、もちろんそれは理想的ではありません。他の唯一の解決策は、NRPEの独自のカスタムポリシーを作成することであるようです。これは、私の能力ATMを超えています。