如何使用Nagios检查安全网站的HTTP响应代码?

我想创build我的安全网站的纳吉奥斯检查。 所有的检查需要做的是login到我的脚本通过login细节的网站。

有谁知道插件或脚本,将允许我这样做?

我已经尝试使用check_http ,但即使网站被redirect到错误页面,我也会获得成功。

我已经尝试使用check_http,但即使网站被redirect到错误页面,我也会获得成功

这可以用check_http --expect来解决。 这是来自check_http的文档–help :

-e,–expect = STRING以逗号分隔的string列表,至less有一个string在服务器响应的第一行(状态)中预期(默认值:HTTP / 1)。如果指定跳过所有其他状态行逻辑例如:3xx,4xx,5xx处理)

以下示例将为200 OK HTTP响应代码返回“OK”,但会为302redirect提供严重错误。

 host % check_http --expect=200 HTTP CRITICAL - Invalid HTTP response received from host: HTTP/1.0 301 OK 

对于一个安全的网站(通过SSL)和身份validation,也检查出check_http --ssl--authorization标志。

-S,–ssl通过SSL连接。 端口默认为443

-a,–authorization = AUTH_PAIR用户名:具有基本authentication的网站上的密码

或者,也许你实际上不想login系统,但只是想确保页面需要用户名/密码,因为该用户名/密码可能成为一个安全问题。 在这种情况下,请尝试如下所示/ 401是“未授权”或“需要授权”的HTTP响应代码 – 401是强制性的,之后的文本string是可选的,可以说是几个不同的东西之一,所以我只是告诉Nagios预计401

 check_http --expect="401" 

您可以使用Cucumber-Nagios创build更复杂的检查(本着行为驱动开发/监控的精神)。