利用SNMP监控网络运行状况

日期: 2009-02-23 作者:印度阿三 来源:TechTarget中国 英文

  在大型网络管理中,网络管理员比较头痛的问题就是如何实时了解不在身边的网络设备的运行状况。若要一台一台的去查看网络设备的运行现状,那明显不是很现实。笔者在这里为大家介绍一种利用SNMP协议自动帮助管理员收集网络运行状况的方法。通过这种方法,网络管理员只需要坐在自己的位置上,就可以了解全公司的网络设备的运行情况。

  SNMP,其中文名字叫做简单网络管理协议,这是一个应用层协议。有了这个简单网络管理协议,则网络管理员可以很方便的在SNMP代理和管理器之间交换管理信息。它的主要作用就是帮助企业网络管理人员更方便的了解网络性能、发现并解决网络问题、规划网络的未来发展。

  若网络管理员要部署SNMP应用也比较简单。下面笔者通过一个简单的例子,来谈谈在企业网络中如何通过SNMP协议来帮助网络管理员实时了解网络运行状况。

  如上图中,现在网络管理员希望能够在自己的电脑上,实时了解这台路由器的运行状况,前提是不离开自己的位置。此时,该如何处理呢?

  一、SNMP应用的基本组成部分

  在讲解这个解决方案之前,笔者先要谈谈SNMP应用的基本组成部分,这有利于大家了解后续的配置。通常情况下,SNMP应用主要有三部分组成,分别为网络管理系统、SNMP代理以及被管设备。

  SNMP代理是一个驻留在网络设备上的网络管理软件。他的作用就是将网络设备中的本地管理信息,如日志信息等,转换为SNMP兼容的格式。并且隔一段时间,把这个信息发送给SNMP管理系统。其主要作用就是一个,把路由器等网络设备中的日志文件进行转换。以便SNMP管理系统进行读取。

  被管设备就是指我们需要管理的网络设备。在这些设备中,往往就含有SNMP代理。这些SNMP代理会主动收集和存储管理信息,并通过SNMP把这些信息提供给网络管理系统。现在大部分厂家的网络设备,如思科的路由器、交换机等产品,就都带有SNMP代理功能。为此,从SNMP应用解决方案来讲,这些带有SNMP代理的网络设备或者服务器,就被称为被管设备。

  网络管理系统主要与被管理设备上的SNMP代理进行通信,从而完成信息收集、信息统计、异常警报等作用。在实际工作中,网络管理系统往往安装在网络管理员的主机上。从而他可以在不离开自己位置的前提下,收集各个网络设备的运行信息。

  二、SNMP应用的主要命令

  SNMP的命令比较少,但是个个都比较实用。

  第一个命令是读(READ)命令。即网络管理员可以在网络管理系统上,通过Read命令,去见识被管设备的运行状况。如当管理员发现某台路由器设备运行异常,以前设置的访问控制列表不起作用。此时,就可以在自己电脑的网络管理系统中,通过Read命令去了解路由器的当前运行状况,以了解到底是哪里出现了问题。

  第二个命令是写(WRITE)命令。如网络管理员通过读命令了解到路由器的访问控制列表失效了。此时,网络管理员就可以在自己主机上,通过网络管理系统向路由器发布命令,让其重新启用访问控制列表。也就是说,写命令主要就是向路由器等被管设备发送操作指令。

  以上这两个命令主要是在网络管理员这端发送的。即其主动权在管理员这边。

  第三个命令为陷阱(Trap)命令。也就是说,网络管理员先在路由器等被管设备中设立一些指标,如CPU利用率等等。当超过这个指标后,在路由器等被管设备上的SNMP代理就会把这个信息发送给网络管理系统。管理员就可以通过网络管理系统了解到这个信息,从而可以让他们尽快的采取应对的对策。若用专业的语言描述,就是Trap命令用来向SNMP管理器伊布发送事件报告。

  第四个命令为通知(Inform)命令。这个命令跟陷阱命令类似,主要就是用来做SNMP事件通知。不过其跟陷阱命来有一个很大的不同,即陷阱命令是不可靠的,而Inform命令是可靠的。也就是说,陷阱命令发出信息后,就算完工了,其不会关心网络管理系统是否真正的受到了这条信息。而Inform命令在发出信息后,会等待网络管理员的响应。如果SNMP代理没有收到确认消息的话,则就会在一段时间后冲发Inform报文信息。所以,从这个角度讲,Inform命令更加可靠。

  第三、第四个命令主要是路由器等被管设备发生异常情况时,自动向网络管理员报警。如此的话,网络管理员就不用天天盯着网络管理系统看。因为在有异常情况时,路由器等被管设备会自动向网络管理员报警。从而网络管理员不会漏过任何一个警报,为他们处理问题引得了时间。

  三、SNMP引用的注意点

  在使用SNMP解决方案来收集被管设备的运行信息时,最主要的问题就是要注意其安全方面的漏洞。因为非法攻击者可以使用SNMP协议了解被管设备配置以及内部网络拓扑结构。甚至还可以对网络设备的配置进行更改,以满足他们进一步入侵的需要。另外,非法攻击者还可以通过SNMP的一些辅助工具,如SNMP发现工具或者通过捕获SNMP报文,来访问管理信息库,从而掌握一些下一步攻击所需要的基本信息。

  所以,网络管理员在享受SNMP所带来便利的时候,也需要关注其可能会导致的安全漏洞。针对这个安全问题,笔者有如下建议。

  一是利用SNMPv2版本代替SNMPv1版本。现在简单网络管理协议(SNMP)有两个版本。其第一个版本安全性比较差,如通过明文形式传递数据等等。而以明文形式在网络上传递数据的话,则非法攻击者可以利用一些黑客工具,轻易捕获SNMP报文,从而收集一些可用的信息。而第二个版本的网络管理协议,则在这方面有了改进。最重要的变化,就是把明文传输改为了密文传输。如此,非法攻击这若想通过网络侦听等手段非法获取SNMP报文,就变得没有意义。因为他们及时取得这个报文,报文的内容也是加密过的,他们无法读取。所有到手的SNMP报文也就一文不值。另外,第二个版本的网络管理简单协议也增强了一些操作上的内容,如改善了Inform命令的操作方式等等。所以,无论从安全上还是从管理上,第二个版本的简单网络管理协议都比第一个版本的要好的多。为此,在有条件的情况下,网络管理员最好采用第二个版本。

  二是利用独立的身份验证机制,来进行身份验证。因为SNMP协议本身并没有身份鉴别能力,这就在安全威胁面前暴露了严重的脆弱性。所以,一个未经授权的实体可以假借授权管理实体的身份来进行操作。如未经授权的用户可能试图改变由授权的管理员用户所产生的SNMP报文等等。如果未经授权的用户录制、延时或者复制并重放了由授权用户所产生的保温,则报文的序列和时间就会被修改。所以,若没有给SNMP协议配备身份验证机制的话,对于企业网络的安全是一个很大的挑战。笔者认为,无论在何时,管理的便利性与安全性都是同等重要的。

  三是合理选择访问模式。众所周知,思科的路由器提供了两种访问模式,分别为用户级模式与特权级模式。其中用户模式之能够查看路由器的一些基本信息,而不能够更改其配置。而在利用简单网络管理协议收集管理路由器的时候,其也可以选择访问模式。路由器上的SNMP代理能够使得用户未用户访问模式与特权访问模式配置不同的字符串,从而进行访问模式的控制。例如,要SNMP代理以特权模式的方式访问路由器的华,则可以在命令后面加入RW选项;而如果以用户模式进行访问的话,则可以加入RO参数。在一般情况下,建议用户采用用户模式进行访问。而只有在用户模式下不能够完成任务的时候,才使用特权模式。这个访问模式的控制,可以在很大程度上提高SNMP解决方案的安全系数。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

相关推荐

  • 安全合规重压下:如何实现云端可视化?

    企业在向云端迁移的时候,多多少少会有一些犹豫:他们原有的传统数据中心的运作模式已经够稳妥、够安全了,迁移到云上之后,能否在实现经济性的同时保持原有的安全性、合规性,这已经成为技术提供商们必须回答的问题……

  • 被忽略的企业网络中的硬件漏洞

    通常与应用相关的漏洞颇受瞩目,而硬件漏洞经常被众人所忽视。不断涌现的用户需求使得供应商实施相关措施以弥补这一缺陷。不过当硬件漏洞被检测出来时,通常需要供应商为固件编写特殊代码,实际上比为软件打补丁更困难……

  • 保持网络正常运行:防止中断比以往更为重要

    最终用户数量的增长使现代企业面临越来越大的网络中断风险——再加上有越来越多的业务在线上完成,因此这个问题的严峻性达到前所未的高度……

  • 关于自动化网络监控的真相

    大多数公司实现监控的最大障碍并不是用错工具或技能。主要问题是想法错了——他们思维定势地认为监控和自动很复杂、很难,认为这些事情一般人是做不好的……