安全なウェブサイトのnagiosチェックを作成したい。チェックに必要なのは、スクリプトに渡したログインの詳細でサイトにログインすることだけです。
これを可能にするプラグインまたはスクリプトを知っている人はいますか?
check_http
を使用してみましたが、Webサイトがエラーページにリダイレクトされても成功します。
Check_httpを使用してみましたが、Webサイトがエラーページにリダイレクトされても成功します
これはcheck_http --expect
で解決できます。 check_http --help のドキュメントは次のとおりです。
-e、--expect = STRINGカンマで区切られた文字列のリスト。少なくとも1つはサーバー応答の最初の(ステータス)行にあることが期待されます(デフォルト:HTTP/1。)指定した場合、他のすべてのステータス行ロジックをスキップします(例:3xx、4xx、5xx処理)
次の例は 200 OK HTTP応答コードに対して「OK」を返しますが、302リダイレクトに対して重大なエラーを返します。
Host % check_http --expect=200
HTTP CRITICAL - Invalid HTTP response received from Host: HTTP/1.0 301 OK
セキュアなWebサイト(SSL経由)と認証については、check_http --ssl
フラグと--authorization
フラグも確認してください。
-S、--ssl SSL経由で接続します。ポートのデフォルトは443です
-a、--authorization = AUTH_PAIR Username:password on sites with basic authentication
または、実際にシステムにログインするのではなく、ページにユーザー名/パスワードが必要であることを確認したいだけかもしれません。そのユーザー名/パスワードはセキュリティ上の問題になる可能性があるためです。その場合、次のようなことを試してください/ 401
は、「Unauthorized」または「Authorization Required」のHTTP応答コードです。401
は必須であり、その後のテキスト文字列はオプションであり、 Nagiosに401
を期待するように伝えます。
check_http --expect="401"
Cucumber-Nagios を使用すると、より複雑なチェックを作成できます(ビヘイビア駆動開発/監視の精神に沿ったもの)。