今天就惆怅了新加这个服务监控就莫名奇妙出现了这个错误:

 

说实话这个监控不是我加了,这个不是重点,为什么出现这种情况了。当然我这是被监控端出现了这个情况,其他监控项目没问题,说明不是监控端的问题,要是监控段的问题就是配置文件可以写错了,我检测了没问题。

 nagios 远程监控我原理我就不说了采用了 nrpe 安全加密来实现了监控权限,直接奔向被监控服务器找问题。

 

 

被监控: 156.206 服务器找问题。

 那么 400错误 是HTTP 请求的状态码。

直接执行检测 :

 /usr/local/nagios/libexec/check_http -I  *。*。156.206

HTTP WARNING: HTTP/1.1 403 Forbidden

出现的结果为什么是403呢? 当时我就纳闷了。

详细的HTTP状态码解释

http://hzcsky.blog.51cto.com/1560073/585138

400是服务器不理解 403是权限拒绝

我看了下面文档 我400不是这个问题

http://www.mhaller.de/archives/145-Nagios,-mod_security-and-check_http.html

我就去服务器上查问题,先解释下环境:因为我这台是广告和图片引用服务器 没有直接的域名访问。nginx+phpcgi500个进程的。

这个是什么意思呢?

直接访问这个域名是没有东西 错误的 http://img(gg).xywy.com/ ,访问www.xywy.com 程序为调用这个img.xywy.com 的广告。

如图:

 

 

 

 就这么个意思。

然后我就去查看nginx 配置文件去,果然我之前做了安全访控的限制。如图: 

 只能请求这个域名下面的这些格式的文件。(因为之前有人探测我们这个域名下面有没有RAR 之类的文件,占用我们的带宽啥)

 

 

那怎么解决呢因为那个啥 直接访问域名是没有用的,所以导致的403 错误。想

然后我就去查找check_http 有没有监控的时候指定URL . (但是必须是上面这些格式的 随便写个测试文件的)

/usr/local/nagios/libexec/check_http --help  果然有 -u 就是 。

然后我就去 修改配置文件vi /usr/local/nagios/etc/nrpe.cfg

 

我一直没去看配置文件,结果该的时候发现IP 错了,我就分别改了下测试了下,NND 400错误原来出现在IP这, 当时我郁闷了,徒弟干活太。。。所以这个地方我建议用127.0.0.1因这个监控插件是监控本机的 ,监控端来联系这个被监控上的插件而不是监控端的插件,这就是上面原理图自己看。

 

重新 nrpe 服务!

最终403 和400 一起的问题全部解决,

403 是nginx访控造成的,400 是 IP 写错了 错的iP没授权。