科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网网络频道构建网络安全长城之安全设备的管理

构建网络安全长城之安全设备的管理

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

随着网络建设的扩大,或许我们的网络内部已经有了几个路由器、一个核心交换机、四五个汇聚层交换机、数十个接入交换机,那么 我们怎么样来及时检测它们的工作情况呢?

作者:中国IT实验室 2007年8月14日

关键字:

  • 评论
  • 分享微博
  • 分享邮件

在本页阅读全文(共4页)

  

好了,休息一下,去忙忙别的,等你回来的时候,是不是发现漂亮的走线图(图三)已经形成了?

图 三

如上图所示,笔者这里的的star(实达)交换机的资料、流量、持续工作时间、最大流量等等都以中文的方式显示出来,可以方便地查询与分析了。

这里笔者只以一台获取交换机为例,简单介绍了mrtg的使用方法,其实mrtg更可以监视router、打印机、服务器、甚至ups电源等设备。当您使用mrtg来查看网络中大量设备的流量和负载情况的时候,您才会真正体会到它的方便之处。

5、本机信息的监管

或许您跟笔者一样,您的这台NMS同时也担任着内网中其他的服务,您也想将该机的CPU、内存和网卡流量都记录下来,方便监视,利用mrtg和snmp服务,我们自己再配合写两个小的shell脚本,就能完成上面的功能了。

A.获取本机网卡流量

在前面,我们已经安装snmp包,现在让我们来配置/etc/snmp/snmpd.conf文件,使其能配合mrtg很好地工作了。

首先,编辑/etc/snmp/snmpd.conf文件:

[root@ netserver bin]#vi /etc/snmp/snmpd.conf

把下面一行前面的#号去掉:

#view mib2 included .iso.org.dod.internet.mgmt.mib-2 fc

把以下语句的语句:

access notConfigGroup "" any noauth exact systemview none none

改成:

access notConfigGroup "" any noauth exact mib2 none none

接下来我们启动snmpd服务

[root@ netserver bin]#snmpd

如果想要每次开机的时候就自动执行snmpd,请

[root@ netserver bin]#setup

然后将System services下面的snmpd服务打开

接下来,我们用与刚才设置交换机相似的步骤来进行。

新建立一个目录来存放net相关信息:

[root@ netserver bin]#mkdir –p /var/www/html/mrtg/local/net

[root@ netserver bin]# ./cfgmaker public@你本机的ip > /var/www/html/mrtg/local/net /mrtg.cfg

修改自动生成的mrtg.cfg文件(因为和上面的交换机的设置类似,就不解释了)

[root@ netserver bin]#vi /var/www/html/mrtg/local/net/mrtg.cfg

修改以下几行为(没有的请添加)

WorkDir: /var/www/html/mrtg/local/net

Options[_]:growright,bits

Language:Chinese

Refresh: 300

WriteExpires: Yes

运行mrtg:

执行以下命令3次(前两次会提示一些警告信息,不用理会)

[root@ netserver bin]#./mrtg /var/www/html/mrtg/local/net/mrtg.cfg

这里我们就不生成index.html页面了,等一下自己手工编写一个,将cpu和内存的放在一起,方便查看一些。

B.获取本机CPU使用情况

新建立一个目录来存放net相关信息:

[root@ netserver bin]#mkdir –p /var/www/html/mrtg/local/cpu

手工编辑一个mrtg.cfg文件:

[root@ netserver bin]#vi /var/www/html/mrtg/local/cpu/mrtg.cfg

输入以下内容:

#/var/www/html/mrtg/local/cpu/mrtg.cfg

WorkDir: /var/www/html/mrtg/local/cpu

Language:chinese

EnableIPv6: no

Refresh: 300

WriteExpires: Yes

Target[CPU]: `/var/www/html/mrtg/local/cpu/cpu.sh` #调用的外部脚本命令的地址,等一下我会给出cpu.sh的代码

MaxBytes[CPU]: 100 #限制绘图的最大值,CPU Loading 的最高值就是100%

Title[CPU]: CPU Watch #生成的HTML 网页的窗口标题

PageTop[CPU]: <H1> CPU Watch</H1> #生成的HTML 网页的主标题

Options[CPU]: gauge,nopercent,growright

Ylegend[CPU]: CPU Loading (%) #图表的Y轴的名称

YSize[CPU]: 100 #Y轴的最大值

ShortLegend[CPU]: % #定义的标准單位(此处为%)

LegendI[CPU]: CPU USER # CPU USER表示用户负载,CPU SYSTEM表示系统负载

LegendO[CPU]: CPU SYSTEM #注意,Legend后面是字母I和O,不是数字,mrtg中它们本来是表示Input 和 Output的,这里被我借用了过来的

好,接下来让我们写一个获取我们所需要值的脚本文件cpu.sh

[root@ netserver bin]#vi /var/www/html/mrtg/local/cpu/cpu.sh

脚本内容如下:

#!/bin/bash

tmp=`sar -u 1 5 | tail -n 1`

#上面一句的sar –u 1 5 表示以1秒为单位,连续取5次cpu的负载,这样得到的平均值更加准确一些:

cpuuser=`echo $tmp | awk ' {print $3}' `

cpusystem=`echo $tmp | awk ' {print $5}' `

echo $cpuuser

echo $cpusystem

echo 0

echo 0#因为我没有取当前时间和系统已运行的时间,所以这里取两个0,读者朋友可以试一下取消他们输出的html会变成怎样

然后改变cpu.sh的权限为755:

[root@ netserver bin]#chmod 755 /var/www/html/mrtg/local/cpu/cpu.sh

运行mrtg,执行以下命令3次(前两次会提示一些警告信息,不用理会)

[root@ netserver bin]#./mrtg /var/www/html/mrtg/local/cpu/mrtg.cfg

C.获取本机内存/Swap使用情况

与上面一个例子很类似,我给出操作,只解释不同的地方:

[root@ netserver bin]#mkdir –p /var/www/html/mrtg/local/memory

手工编辑一个mrtg.cfg文件:

[root@ netserver bin]#vi /var/www/html/mrtg/local/memorty/mrtg.cfg

输入以下内容:

WorkDir: /var/www/html/mrtg/local/memory

Language:chinese

EnableIPv6: no

Refresh: 300

WriteExpires: Yes

Target[MEMORY]: `/var/www/html/mrtg/local/memory/memory.sh`

MaxBytes[MEMORY]: 100

Title[MEMORY]: Memory &Swap Watch

PageTop[MEMORY]: <H1> Memory &Swap Watch</H1>

Options[MEMORY]: gauge,growright

Ylegend[MEMORY]: Used (%)

YSize[MEMORY]: 100

ShortLegend[MEMORY]: %

LegendI[MEMORY]: Used Memory

LegendO[MEMORY]: Used Swap


接下来是一个小脚本程序memory.sh:

[root@ netserver bin]#vi /var/www/html/mrtg/local/memory/memory.sh

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章