>作用:
检测指定主机上的http服务,可以是http或者https,可以重定向,查找字符串,正则表达式,检测链接次数,证书过期时间。
用法:
check_http-H|-I[-u][-p]
[-w][-c][-t][-L][-aauth]
[-bproxy_auth][-f]|warning|critcal|follow|sticky|stickyport>
[-e][-sstring][-l][-r|-R]
[-Pstring][-m:][-4|-6][-N][-M]
[-Astring][-kstring][-S][--sni][-C][-T]
[-jmethod]
选项:
-H和-I必须指定一个或者两个都写
-h,--help
显示帮助信息
-V,--version
打印版本信息
-H,--hostname=ADDRESS
主机名,支持虚拟主机,也可以添加端口。
-I,--IP-address=ADDRESS
使用IP地址或者名字(直接使用数字的IP可以不适用dns解析)
-p,--port=INTEGER
Portnumber(default:80)
检测端口,默认是80
-4,--use-ipv4
-6,--use-ipv6
使用ipv4或者ipv6连接
-S,--ssl
通过ssl链接
--sni
启用SSL/TLS支持主机名扩展
-C,--certificate=INTEGER
证书有效地时间
-e,--expect=STRING
用“,”分割的字符串列表,预期至少有一个出现在服务响应的第一列。
服务器响应的第一行:是状态行,由协议版本,数字状态码,和相关的原因文本短语组成。
-s,--string=STRING
在返回的页面中出现的字符串
-u,--url=\'#\'"/span>
访问资源的路径,默认是/
-P,--post=STRING
URLencodedhttpPOSTdata
URL编码的httppost数据
-j,--method=STRING(forexample:HEAD,OPTIONS,TRACE,PUT,DELETE)
设置http方法,例如:OPTIONS,GET,HEAD,POST,PUT,DELETE,TRACE,CONNECT.
-N,--no-body
只读取文件头部
-M,--max-age=SECONDS
文档过期时间
-T,--content-type=STRING
指定POST数据的内容类型的头部媒体类型
Content-Type指定了下层数据的媒体类型
-l,--linespan
允许正则表达式跨行必须在-R或者-r前面
-r,--regex,--ereg=STRING
对正则表达式字符串搜索页面
-R,--eregi=STRING
对于不区分大小写的搜索页面的正则表达式的字符串
--invert-regex
如果搜索到就返回critical,如果没有就返回OK,和-r/-R结合。不可以和-s结合使用。
-a,--authorization=AUTH_PAIR
用户名密码基于网站的基本认证
-b,--proxy-authorization=AUTH_PAIR
代理服务器的用户名密码
-A,--useragent=STRING
在http头部发送的字符串,“用户代理”
-k,--header=STRING
Anyothertagstobesentinhttpheader.Usemultipletimesforadditionalheaders
任何其他标记中被发送http头
-L,--link
包装输出html连接
-f,--onredirect=|warning|critical|follow|sticky|stickyport>
如何处理重定向页面
-m,--pagesize=INTEGER<:INTEGER>
页面大小需要最小:最大(单位:bytes)
-w,--warning=DOUBLE
告警响应时间
-c,--critical=DOUBLE
发送危险警告的响应时间
-t,--timeout=INTEGER
连接超时时间
-v,--verbose
显示命令行调试的细节,默认被nagios截断。
注意:
这个插件将试图打开一个HTTP连接的主机,成功连接则返回state_ok;拒绝或者连接超时,则返回STATE_CRITICAL,其他错误则返回STATE_UNKNOWN.成功连接,但是返回信息不正确则发送STATE_WARNING.如果访问一个虚拟主机服务,则需要在主机头使用全域名作为【host_name】。
实例:
1、-u测试页面是否可以到开可以用相对路径和绝对路径
-H-I有一个就可以
相对路径
#./check_http-Hwww.****.com-u/url1/url2/index.html
绝对路径
#./check_http-Hwww.****.com-uhttp://www.****.com/url1/url2/index.html
端口,默认就是80
#./check_http-Hwww.****.com-p80-uhttp://www.****.com/url1/url2/index.html
使用数字IP
#./check_http-Ixxx.xxx.xxx-u/url1/url2/index.html
2、加密传输-S
#./check_http-H"log.gw.com.cn"-S
Connectionrefused
HTTPCRITICAL-UnabletoopenTCPsocket
3、测试服务器的http版本协议或者状态返回码-e
#./check_http-I114.80.136.138-k"HOST:log.gw.com.cn"-e"HTTP/1.1"
HTTPOK:Statuslineoutputmatched"HTTP/1.1"-3088bytesin0.206secondresponsetime|time=0.205964s;;;0.000000size=3088B;;;0
#./check_http-I114.80.136.138-k"HOST:log.gw.com.cn"-e"HTTP/1.0"
HTTPCRITICAL-InvalidHTTPresponsereceivedfromhost:HTTP/1.1200OK
4、搜索返回的页面中的内容-s
#./check_http-I114.80.136.138-k"HOST:log.gw.com.cn"-s"Piwik"
HTTPOK:HTTP/1.1200OK-3088bytesin0.196secondresponsetime|time=0.196134s;;;0.000000size=3088B;;;0
$curl114.80.136.138-H"host:log.gw.com.cn"显示的页面中出现的“Piwik”
5、以用户名密码访问一个需认证的页面-a;
#./check_http-I10.15.62.38-u/nagios/
HTTPWARNING:HTTP/1.1401AuthorizationRequired-726bytesin0.019secondresponsetime|time=0.019393s;;;0.000000size=726B;;;0
#./check_http-I10.15.62.38-u/nagios/-anagiosadmin:nagios
HTTPOK:HTTP/1.1200OK-917bytesin0.066secondresponsetime|time=0.066009s;;;0.000000size=917B;;;0
6、连接超时的时间-t;
#./check_http-I10.15.62.38-t1
HTTPOK:HTTP/1.1200OK-38056bytesin0.017secondresponsetime|time=0.017460s;;;0.000000size=38056B;;;0
7、定义warning和critical的告警阀值:-w和-c;
8、检测返回的页面大小-m;
#./check_http-H"log.gw.com.cn"-I114.80.136.151-m10:400
HTTPWARNING:HTTP/1.1200OK-pagesize3128toolarge-3128bytesin0.223secondresponsetime|time=0.223207s;;;0.000000size=3128B;10;0;0
返回的页面是3128bytes,超过了最大限制400,发出了报警。
9、检测证书是否过期-C
#check_http-Hwww.verisign.com-C14
证书过期时间大于14天返回OK状态;证书还有0-14天过期,返回警告信息;证书已经过期,返回紧急状态。
10、设置返回的http的头部信息-A
#./check_http-H"log.gw.com.cn"-v
GET/HTTP/1.1
User-Agent:check_http/v1.4.16(nagios-plugins1.4.16)
Connection:close
Host:log.gw.com.cn
#./check_http-H"log.gw.com.cn"-v-A"check_http"
GET/HTTP/1.1
User-Agent:check_http
Connection:close
Host:log.gw.com.cn
11、只显示头部信息,不显示页面信息。-N
#./check_http-H"log.gw.com.cn"-I114.80.136.151-N
HTTPOK:HTTP/1.1200OK-1460bytesin0.219secondresponsetime|time=0.218590s;;;0.000000size=1460B;;;0
#./check_http-H"log.gw.com.cn"-I114.80.136.151
HTTPOK:HTTP/1.1200OK-3128bytesin0.220secondresponsetime|time=0.220288s;;;0.000000size=3128B;;;0
12、检测文档修改时间-M
#./check_http-I114.80.136.138-k"HOST:log.gw.com.cn"-M1
HTTPCRITICAL:HTTP/1.1200OK-Documentmodificationdateunknown-3088bytesin0.197secondresponsetime|time=0.196606s;;;0.000000size=3088B;;;0文档修改时间未知