2009-06-24 10:54:29| 分类: CentOS | 标签: |字号大中小 订阅
其它软件包的检查:
[root@mail doc]# rpm -qa|grep gd
gd-1.8.4-4
gd-devel-1.8.4-4
[root@mail doc]# rpm -qa|grep perl
perl-5.6.0-17
mod_perl-1.24_01-3
[root@mail doc]# rpm -qa|grep libp
libpng-1.0.12-2
libpng-devel-1.0.12-2
[root@mail doc]# rpm -qa|grep zlib
zlib-1.1.3-24
zlib-devel-1.1.3-24
[root@mail doc]# rpm -qa|grep gcc
gcc-2.96-98
gcc-g77-2.96-98
gcc-c++-2.96-98
目前mrtg的最新版本为mrtg-2.16.1:
wget ftp:///mirrors/mrtg/mrtg-2.16.
[root@mail src]# tar xvfz mrtg-2.16.
[root@mail src]# cd mrtg-2.16.1
[root@mail mrtg-2.16.1]# ./configure --prefix=/data/mrtg
[root@mail mrtg-2.16.1]# make
[root@mail mrtg-2.16.1]# make install
到现在我们就已经正确地安装了MRTG系统。
配置SNMP服务
对于不同的设备,配置SNMP支持的方法是不一致的,具体请参考设备的随机文档,一般
里 面都有详细的介绍。这里我们讨论在Linux环境下配置SNMP服务器,以实现对本机流出流入数据的分析和报表(我的应用环境是使用Linux带动一个小型局域网上网,监控本机进出 流量)。 在linux环境下安装snmp软件包是很容易的,只需要安装相应的软件包即可: [root@mail doc]# rpm -qa|grep snmp net-snmp-libs-5.3.1-14.el5 net-snmp-libs-5.3.1-14.el5 net-snmp-5.3.1-14.el5 [root@mail doc]# /etc/rc.d/init.d/snmpd start Starting snmpd: [ OK ] 如果命令输出如上所示,就表示snmp优化训练服务器启动正常。 为了配合mrtg使用,还要修改snmpd的配置,以使其允许mrtg读取其interface(网络接口) 流量数据。 vi /etc/f 装下面这个的#注 view mib2 included .ib-2 fc
然后将
access notConfigGroup "" any noauth exact systemview none none
修改为:
access notConfigGroup "" any noauth exact mib2 none none
在55行左右加入:
view systemview included .1.3.6.1.2.1.2
然后再重新启动snmpd:
/etc/rc.d/init.d/snmpd restart
生成MRTG配置文件
# mkdir /data/mrtg/cfg/
配置文件:/data/mrtg/cfg/mrtg.cfg
# cd /data/mrtg/bin
# ./cfgmaker --global 'WorkDir: /data/apache2/htdocs/mrtg' --global 'Options[_]: bits,growright' --output /data/mrtg/cfg/mrtg.cfg public@192.168.3.9
更新信息.
env LANG=C /data/mrtg/bin/mrtg /data/mrtg/cfg/mrtg.cfg
# mkdir /data/apache2/htdocs/mrtg
生成mrtg的index文件
# ./indexmaker --output /data/apache2/htdocs/mrtg/index.html /data/mrtg/cfg/mrtg.cfg
<>
documentroot /data/apache2/htdocs/mrtg
customlog common
</VirtualHost>
<directory "/data/apache2/htdocs/mrtg/">
options followsymlinks includes
allowoverride none
order allow,deny
allow from all
authname "MRTG流量察看"
authtype basic
authuserfile /data/apache2/passdir/mrtgpass
require user 4ujk
</directory>
生成密码:
mkdir /data/apache2/passdir/
/data/apache2/bin/htpasswd -bc /data/apache2/passdir/mrtgpass username userpass
拉链鞋让系统每隔5分钟执行一次mrtg,生成新的MRTG流量图
# crontab –e
*/5 * * * * env LANG=C /data/mrtg/bin/mrtg /data/mrtg/cfg/mrtg.cfg
=============================================
本章要点
◆ 安装配置MRTG监控Linux网络
◆ 安装配置NTOP监控Linux网络
◆ NTOP的安全策略
17.1 安装配置MRTG监控Linux网络
17.1.1 SNMP简介和MRTG监控过程
1.SNMP简介
SNMP是专门设计用于在 IP 网络管理网络节点(服务器、工作站、路由器、交换机及HUBS等)的一种标准协议,它是一种应用层协议。SNMP可以提高网络管理员管理网络的效率,发现并解决网络问题,以及规划网络增长。通过SNMP接收随机消息(及事件报告)网络管理系统获知网络出现问题。简单网络管理协议(SNMP)首先是由Internet工程任务组织(Internet Engineering Task Force)(IETF)的研究小组为了解决Internet上的路由器管理问题而提出的。许多人认为SNMP在IP上运行的原因是Internet运行的是TCP/IP,然而事实并不是这样的。SNMP被设计成与协议无关,所以它可以在IP, IPX, AppleTalk, OSI,以及其他用到的传输协议上被使用。
SNMP运行在UDP之上,它利用的是UDP的161/162端口。其中161端口被设备代理监听,等待接受管理者进程发送的管理信息——查询请求消息;162端口由管理者进程监听等待设备代理进程发送的异常事件报告——陷阱消息,如Trap等。SNMP提供三类操作,分别为Get、Set和气动加油泵Trap。
2.MRTG监控过程
服务器的操作系统多种多样,使用较多的一般是UNIX类或Windows类操作系统,它们都支持SNMP。例如,对于Windows系统而言,只要增加“管理和监控工具”中的Windows组件,就有了对SNMP的支持。
服务器启动SNMP后,就会开放161/162端口。管理员如果要监控这台机器,就要在自己的机器上安装MRTG,然后通过MRTG向服务器的161/162端口发出查询等请求,取得数据后会生成图形及HTML文档的流量报告。这就是MRTG简单的监控过程。
17.1.2 Linux下MRTG的安装与配置
MRTG通过SNMP从设备中得到使用设备(如交换机)的网络流量信息,并把PNG格式图
形以HTML方式显示出来,便于网络管理员对所监控设备(交换机)进行管理。目前市场上可网管型(智能)的交换机都支持SNMP,可以通过MRTG进行网络流量监控。
下面以Red Hat Linux 9.0为例介绍MRTG的安装与配置。
1.安装基础软件包
要安装MRTG软件包必须首先安装gcc, perl, gd, libpng, zlib, freetype等软件包。
2.安装配置net-snmp
光盘里有net-snmp的安装RPM包,安装完以后,配置/etc/f文件,使其能配合MRTG工作。
把下面的语句:
改成:
修改以后可以启动snmpd服务:
3.安装配置MRTG
② 生成配置文件
③ 设置MRTG定期执行方式
/usr/local/mrtg/cfg/xxx.cfg
④ 建立索引页面
执行以下命令还可以生成一个索引页面:
到此为止,配置完毕,重新启动snmp和httpd服务,访问ip/mrtg/,就能看到网络流量图了。如图17-1所示。
图17-1 MRTG监控的网络流量图
17.1.3 建立MRTG监控中心
在实际应用中,企业可能有多台服务器,通常需要管理员24小时不间断地对服务器的流量
进行监控。如果这时还是简单地在管理员的机器上使用MRTG就不适用了。最好的方法是建立一个MRTG监控中心。
MRTG监控中心可以是一台专用的服务器,也可以由其他服务器兼作MRTG监控中心。用于监控中心的机器和其他服务器都位于防火墙背后,由于SNMP也很容易成为攻击的目标,所以在防火墙的规则中,要禁止外界对服务器161/162端口的访问。这样便保证了MRTG监控中心担负起监控其他所有服务器的责任。MRTG监控中心将不断产生流量报告,以Web页面的形式发送给管理员。当然,该Web页面是带有身份认证功能的,以确保只有拥有账号的管理员才能查看相应的流量报告。
使用这样的MRTG监控中心,可以带来以下好处:
① 24小时不间断地工作,能保证产生详细、全面的流量报告;
② 提供带身份认证的Web浏览界面,管理员凭账号可以随时随地通过互联网查看流量报告;
③ 免去管理员安装MRTG的烦恼,只需通过浏览器就能查看流量报告;
④ 只允许MRTG监控中心机器访问服务器161/162端口,安全性更高。
通过三步,已经完成了对一台服务器的监控设定,如果还有其他服务器需要流量监控,重复第三步(安装配置MRTG)即可。如果这些服务器都是位于防火墙后面,还要修改一个防火墙的规则,即开放MRTG监控中心对外的80端口,同时过滤掉所有外界对SNMP服务端口的访问。以上安装配置完成,用户可以通过浏览器访问MRTG监控中心。MRTG监控中心会要求输入用户名、密码才能进入,而Apache的日志会记录相关的事件,以备日后对登录情况进行审查。到此为止,已经可以应用一个简单的MRTG监控中心实现集中管理,并且拥有身份认证。管理员还可以通过编写CGI程序来实现更多的功能。比如详细记录访问情况、提供更直观的监控报告等。此外,还可以使用SSL加密页面来传输数据。
17.1.4 MRTG软件的不足和RRDTool的对比
1.MRTG软件的不足
MRTG监测网络流量很方便,但是如果需要监测其他的系统性能,比如CPU负载、系统负载、网络连接数等,就不是那么简单了。即使实现了这些功能,但管理起来非常麻烦。比
如公司有一两千个被监测点,分布在不同的机房,为了管理方便需要将这些服务器和网络设备分类,这样的话就需要将这些被监测点放在不同的MRTG配置文件中,运行多个crontab,甚至还要自己写HTML页面对其进行管理。
MRTG毕竟是一套很老的软件,而且存在许多不足的地方,其作者Tobias Oetiker在1999年就已经开始开发另一套开源软件RRDTool来代替MRTG。现在RRDTool已经发展得很成熟,在功能上MRTG难以与其相提并论。
2.RRDTool与MRTG对比
与MRTG一样,RRDTool也是由Tobias Oetiker撰写的开源软件,但RRDTool并非MRTG的升级版本,两者有非常大的区别,也可以说RRDTool是将用来取代MRTG的产品。下面是两个软件的一些优缺点的对比。
(1)MRTG
优点:
简单、易上手,基本安装完了之后只要修改一下配置文件即可使用。
缺点:
— 使用文本式的数据库,数据不能重复使用。
— 只能按日、周、月、年来查看数据。
— 由于MRTG本来只是用来监测网络的流量,所以只能存储两个DS(Data Source),即存储流量的输入和输出。
— 每取一次数据即需要绘图一次,浪费系统资源。
— 图像比较模糊。
— 无用户、图像管理功能。
— 没有详细日志系统。
— 无法详细了解各流量的构成。
— 只能用于TCP/IP网络,对于SAN网络流量无能为力。
— 不能在命令行下工作。
(2嫁接刀)RRDTool
优点:
— 使用RRD(Round Robin Database)存储格式,数据等于放在数据库中,可以方便地调用。比如,将一个RRD文件中的数据与另一个RRD文件中的数据相加。
— 可以定义任意时间段画图,可以用半年数据画一张图,也可以用半小时内的数据画一张图。
— 能画任意个DS,多种图形显示方式。
— 数据存储与绘图分开,减轻系统负载。
— 能任意处理RRD文件中的数据,比如,在浏览监测中我们需要将数据由Bytes转化为bits,可以将原始数据乘8。
缺点:
— RRDTool的作用只是存储数据和画图,它没有MRTG中集成的数据采集功能。
— 在命令行下的使用非常复杂,参数极多。
— 无用户、图像管理功能。
============================
一、SNMP简介
SNMP 是专门设计用于在 IP 网络管理网络节点(服务器、工作站、路由器、交换机及 HUBS 等)的一种标准协议,它是一种应用层协议。电子蜡烛灯 SNMP 使网络管理员能够管理网络效能,发现并解决网络问题以及规划网络增长。通过 SNMP 接收随机消息(及事件报告)网络管理系统获知网络出现问题。简单网络管理协议(SNMP)首先是由Internet工程任务组织(Internet Engineering Task Force)(IETF)的研究小组为了解决Internet上的路由器管理问题而提出的。许多人认为 SNMP在IP上运行的原因是碳油Internet运行的是TCP/IP协议,然而事实并不是这样。 SNMP被设计成与协议无关,所以它可以在IP,IPX,AppleTalk,OSI以及其他用到的传输协议上被使用。询时顺序不对,那么关于一些大的灾难性的事件的通知
又会太馒。这就违背了积极主动的网络管理目的。