Nagios简介:监控网络并排除网络故障的工具:nagios,Ntop,OpenVAS,OCS,OSSIM等开源监控工具。
Nagios:监控主机和服务
Ntop:监控网络流量,流量采集技术有以下几个:
1.sniffer:采集的信息最全面,可完全复制网络的数据报文。
2.SNMP:是一种主动的采集方式,取得的数据只包含端口层数据, 对于伪造端口地址的蠕虫病毒无能为力。
3.Netflow :统计所有网络报文,对网络设备性能影响较大。
4.sFlow:采用采样的方式,通过设定一定的采样率,进行数据捕获,对网络设备影响很小。
Nagios 是一个运行于 Linux 系统上的开源网络管理监测系统。它强大的功能可以实现对网络上的服务器进行全面的监控,包括服务(apache、mysql、ntp、ftp、disk、qmail和http等)的状态,服务器的状态等。
Nagios原理:可能大家对nagios具有这么强大的功能而赞叹,又好强。在此,咱们一块就 探讨探讨nagios它到底是怎样工作的,怎样实现它强大的功能的。
Nagios的功能是监控主机和服务,但是它本身并不具备这部分功能,所有检测,监控功能都是通过各种插件来完成的。启动nagios后,它会周期性的自动调用插件去检测服务器的状态,同时nagios会维持一个队列,所有插件返回来的状态信息都进入队列,nagios每次从队首开始读取信息,并进行处理,将处理结果通过web界面显示出来。Nagios的插件在目录/libexec下,如check_disk 是检查磁盘空间的插件,check_load是检查CPU负载的等。每一个插件可以通过运行"./check_xxx -h"来查看其使用方法和功能。
一.Nagios系统特点:
1.监控主机资源和网络服务;
2.允许用户通过设计实现简单的插件来监控自己特定的服务;
3.当被监控对象出现问题时,会及时通知管理人员;
4.事先定义事件处理程序,当对象出现问题时自动调用对应的处理程序;
5.通过web页面来监视对象状态,警告提示和日志文件。
二.Nagios的管理模式:
分布-集中的管理模式,在nagios服务器上安装主程序,在被监控主机上安装nagios代理程序,通过nagios主程序nagios代理程序之间的通信,监控对象的状态。
三.Nagios 的官方网站http://www.nagios.org
四.准备并安装:
1.Ngios工作在Linux或Unix操作系统之上,安装之前,请确保您的系统支持TCP/IP 协议,并且有c语言编辑器(gcc);
2.因我们通过web页面来监控nagios,故若您的体统没有安装apache,建议您安装。
3.安装nagios可以用yum安装,也可以选择源码安装。(源码安装操作步骤:)
一般我们将nagios安装在/usr/local/目录下,当然读者也可以根据自己的习惯,定义自己的安装目录。安装成功后,配置nagios,检查nagios的配置是否正确:
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg 若没有错误,就可以启动nagios了。启动的方式有两种:
l /usr/local/nagios/bin/nagios -d /usr/local/nagios/etc/nagios.cfg
l /etc/init.d/nagios start
4.启动成功后,启动浏览器,输入:http://主机ip/nagios,如果配置正确,就会进入nagios的监控页面。
五.配置
nagios及其插件的安装
nagios主机:192.168.0.34
关闭:iptables,selinux
下载软件包
nagios-cn-3.2.3.tar.bz2
nagios-plugins-1.5.tar.gz
[root@server34 ~]# tar jxf nagios-cn-3.2.3.tar.bz2
编译
[root@server34 nagios-cn-3.2.3]# ./configure
错误:*** GD, PNG, and/or JPEG libraries could not be located... *********
解决:需要安装gd-devel:
rhel6.3:lftp 192.168.0.251:/pub/update> get gd-devel-2.0.35-10.el6.x86_64.rpm
rhel6.4:lftp 192.168.0.251:/pub/update> get gd-devel-2.0.35-11.el6.x86_64.rpm
[root@server34 ~]# yum localinstall gd-devel-2.0.35-10.el6.x86_64.rpm -y
继续编译
[root@server34 nagios-cn-3.2.3]# ./configure
创建nagios用户,并指定nagios的用户家目录为/usr/local/nagios,该用户是运行 nagios 服务的用户
[root@server34 nagios-cn-3.2.3]# useradd -M -d /usr/local/nagios nagios
[root@server34 nagios-cn-3.2.3]# make all
[root@server34 nagios-cn-3.2.3]# make install
编译安装nagios的启动脚本
[root@server34 nagios-cn-3.2.3]# make install-init
[root@server34 nagios-cn-3.2.3]# make install-commandmode
apache通过webconf发布nagios文件
[root@server34 nagios-cn-3.2.3]# make install-webconf
编译naigos的配置文件
[root@server34 nagios-cn-3.2.3]# make install-config
将apache用户加到nagios组里,使 apache 用户对 nagios 目录具有写权限,不然 web 页面操作失败
[root@server34 nagios-cn-3.2.3]# usermod -G nagios apache
nagios本身设置的访问控制
[root@server34 nagios-cn-3.2.3]# cat /usr/local/nagios/etc/htpasswd.users
nagiosadmin:gCWSDnqEHR45c
更改nagiosadmin用户的密码(因为nagios自带的密码我们无法知道,所以需重置密码)
重置密码:
[root@server34 ~]# htpasswd /usr/local/nagios/etc/htpasswd.users nagiosadmin
New password:
Re-type new password:
Updating password for user nagiosadmin
检测nagios的配置是否正确:
[root@server34 ~]# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
测试:http://192.168.0.34/nagios(用户命:nagiosadmin ,密码:westos)
看到主机所有服务都处于不可达状态,这属于正常情况,因为nagios的插件都没有安装
安装nagios插件:
停掉nagios
[root@server34 ~]# /etc/init.d/nagios stop
[root@server34 ~]# tar zxf nagios-plugins-1.5.tar.gz
编译nagios-plugins,其中--with-nagios-user=nagios --with-nagios-group=nagios指定运行nagios-plugins的用户和组
[root@server34 nagios-plugins-1.5]# ./configure --with-nagios-user=nagios --with-nagios-group=nagios
[root@server34 nagios-plugins-1.5]# make
[root@server34 nagios-plugins-1.5]# make install
[root@server34 nagios-plugins-1.5]# /etc/init.d/nagios start
Starting nagios: done.
http://192.168.0.34/nagios
看到以下主机组的主机状态为运行即可(注:不用管RADIUS)
六.检查
登录页面若显示:"Internal Server Error",可能是:
l 本机安装并正在运行Redhat linux,需用命令setenforce 0,将selinux模式改为permission状态。
l 启动apache
l 刷掉火墙