MRTG(多路由器流量图示器)Windows 2000部署指南

发表于:2007-06-07来源:作者:点击数: 标签:
MRTG(多路由器流量图示器)Windows 2000部署指南 简介 Mrtg (Multi Router Traffic Grapher,MRTG) 是一个监控网络链路流量负载的工具软件,它可以从所有运行SNMP协议的设备上(包括 服务器 、路由器、交换机等)抓取到信息,并自动生成包含PNG格式的图形以H
MRTG(多路由器流量图示器)Windows 2000部署指南

简介
  Mrtg (Multi Router Traffic Grapher,MRTG) 是一个监控网络链路流量负载的工具软件,它可以从所有运行SNMP协议的设备上(包括服务器、路由器、交换机等)抓取到信息,并自动生成包含PNG格式的图形以HTML文档方式显示给用户,如图:
[center]
Click to Open in New Window
[/center]
准备工作
硬件环境
 IP       系统版本           用途
10.0.0.1  Windows 2000 Professional   MRTG管理工作站
10.0.0.2  Windows 2000 Server      被监控的服务器
软件环境
软件名称  版本    下载地址
            安装路径
MRTG   2.9.25    http://people.ee.ethz.ch/~oetiker/webtools/mrtg/
            C:\Program Files\mrtg\
Active  5.8.0.805   http://www.activestate.com/Products/ActivePerl/
State          C:\Perl\
Perl
SNMP文件 2000光盘自带 http://www.ph4nt0m.net/down/snmp.rar
IPSecPol 2000资源包  http://www.ph4nt0m.net/down/ipsecpol.rar
            C:\Program Files\Resource Kit\
Services 2000资源包  http://www.ph4nt0m.net/down/services.rar
            C:\Program Files\mrtg\bin\
Windows 2000 上SNMP的启用
  Windows 2000 Server中内含了SNMP网络管理协议,如果你想通过MRTG来监控一台Windows 2000服务器的相关信息,就需要启用该Windows 2000 Server的SNMP协议。
  在Windows 2000 Server的 控制面板 中,选择 添加或删除程序 ,点击 添加/删除Windows组件
[center]
Click to Open in New Window
[/center]
双击 管理和监视工具 ,选中 简单网络管理协议确定 后,选择 下一步 ,完成安装:
[center]
Click to Open in New Window
[/center]
注:如果安装中提示插入系统光盘,而你有没有,请下载
SNMP所需系统文件
  这样,我们就完成了SNMP协议在Windows 2000中的安装。但是系统默认的Community是通用的Public,虽然只有只读权限,但是出于安全性的考虑,最好修改一下。
  打开 控制面板 \ 管理工具 \ 服务 ,选择 SNMP服务 ,双击进入其 属性对话框 ,点击 安全选项卡 ,就可以看到:
[center]
Click to Open in New Window
[/center]
  在这里,可以修改SNMP的Community,大大提高SNMP的安全性。同时,Windows 2000还提供了IP的筛选,可以指定特别的IP来访问本机的SNMP。这里就不再详细说明。
注:在这里设定IP筛选,虽然只接受指定IP的SNMP查询,但是所有的人都可以看到本地的UDP 161/162端口是开放的,如果对安全性要求较高,建议使用IPSec过滤UDP 161/162端口。
通过IPSec保护SNMP
  如果对安全性要求不是太高,就用SNMP的IP筛选功能即可,可以跳过本节。
  由于图形界面的IPSec配置比较麻烦,不便于叙述,故本文使用Windows 2000 Resource Kit中的一个工具ipsecpol.exe,从命令行对IPSec进行配置:
  下载压缩文件后,将压缩包的文件解压到一个目录,本例中为C:\Program Files\Resource Kit\,运行 命令提示行 ,进入该目录:
1.添加默认拒绝策略:
ipsecpol -w REG -p SNMP策略 -r 默认拒绝 -f *+10.0.0.2:161:UDP -f *+10.0.0.2:162:UDP -n BLOCK
2.允许指定主机访问:
ipsecpol -w REG -p SNMP策略 -r 允许管理工作站访问 -f 10.0.0.1+10.0.0.2:161:UDP -n PASS
3.指派策略:
ipsecpol -w REG -p SNMP策略 -x
这样你就会发现,在 本地安全设置IP安全策略 中,新增了一条已指派的策略 SNMP策略
[center]
Click to Open in New Window
[/center]
Windows 2000上MRTG管理工作站的建立
  前面的文章中已经讲述了如何在Windows 2000 Server上开启SNMP协议,下面我们将详细讨论如何在Windows 2000平台下建立MRTG的管理工作站。
  MRTG管理工作站并不要求建立在Windows 2000 Server的平台上,Professional也可以,只要有IIS的Web服务(或者其他的Web服务)来发布监控结果就可以了。
  首先,要在IIS中配置一个Web站点,用于发布MRTG的监控信息,本文假设该站点的根目录为C:\WWWroot\MRTG\。
  然后,获取MRTG的Win32版本和ActiveState Perl,分别安装到C:\Program Files\mrtg\和C:\Perl\,为了将MRTG作为系统服务一开机就自动运行,我们还将Windows 2000 Resource Kit中的instsrv.exe和srvany.exe复制到C:\Program Files\mrtg\bin\。
下面我们进行MRTG的配置:
1.进入C:\Program Files\mrtg\bin目录:
  cd c:\Program Files\mrtg\bin
  执行CFGMaker,生成cfg文件:
  perl cfgmaker phantom@10.0.0.2 --global "WorkDir: C:\WWWroot\MRTG" --output phantom.cfg
  这里的phantom是10.0.0.2的Community,MRTG的监控文件保存在C:\WWWroot\MRTG\,输出的配置文件为phantom.cfg,如果你有多台主机要监控,可以在这里分别填入,如:
  perl cfgmaker phantom@10.0.0.2 phantom@10.0.04 --global "WorkDir: C:\WWWroot\MRTG" --output phantom.cfg
  perl cfgmaker phantom@10.0.0.* --global "WorkDir: C:\WWWroot\MRTG" --output phantom.cfg
  具体细节,参看MRTG的说明。
2.为了让MRTG全天24小时监控,我们在phantom.cfg中加入以下参数,使MRTG每隔5分钟采集一次信息:
  RunAsDaemon: yes
  Interval: 5
  可以使用命令:
  echo RunAsDaemon: yes >>phantom.cfg
  echo Interval:5 >>phantom.cfg
3.使用IndexMaker生成报表首页:
  perl indexmaker phantom.cfg >C:\WWWroot\MRTG\index.htm
4.运行MRTG:
  perl mrtg --logging=phantom.log phantom.cfg
  访问http://127.0.0.1/MRTG/index.htm看MRTG是否可以正常工作,生成统计图形。如果正常,终止程序,将其配置为系统服务。
将MRTG配置为系统服务:
  由于MRTG需要由perl来编译执行,不能直接添加为系统服务,所以,我们使用Windows 2000 Resource Kit中的instsrv.exe和srvany.exe这两个程序来帮助我们把MRTG添加为系统服务:
1.添加srvany.exe为服务:
  instsrv MRTG "C:\Program Files\mrtg\bin\srvany.exe"
2.配置srvany:
  在注册表HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MRTG中,添加一个parameters项。再在parameters项中添加以下项目:
  Application的字串值,内容为C:\Perl\bin\perl.exe
  AppDirectory的字串值,内容为C:\Program Files\mrtg\bin\
  AppParameters的字串值,内容为mrtg --logging=phantom.log phantom.cfg
3.在 控制面板 \ 管理工具 \ 服务 中,找到MRTG服务,启用 服务,MRTG即可全天监视指定主机的网络信息了。
[center]
Click to Open in New Window
[/center]
  至此,MRTG已经可以正常运作,即时监控服务器网卡流量了,当然MRTG的功能远不止这些,它可以监控任何一个支持SNMP协议的服务器/路由器的网络流量,CPU占用信息等等。如果你有兴趣可以继续参看 利用MRTG监控Windows 2000服务器高级指导

原文转自:http://www.ltesting.net