首页 理论教育 SNMPv2协议在计算机网络中的应用

SNMPv2协议在计算机网络中的应用

时间:2023-11-05 理论教育 版权反馈
【摘要】:SNMP的简单性是该标准成功的主因。SNMPv2标准中虽有访问控制能力,但这主要是从报文发送者判断的。针对上述安全性问题,SNMPv2中增加验证、加密、及时间同步机制来保证通信安全。每条SNMPv2报文都由一些域构成。SNMPv2可对通信报文进行加密,以防止监听者窃取报文内容。

SNMPv2协议在计算机网络中的应用

SNMP的简单性是该标准成功的主因。因在大型的由多厂商产品构成的复杂网络中,管理协议的明晰至关重要,但同时这又是SNMP缺陷所在,为使协议简单易行,就缺少一些功能,如:

●没有提供成批存取机制,对大块数据存取效率很低。

●没有提供足够的安全机制,安全性很差。

●只能在TCP/IP协议上运行,不支持别的网络协议。

●没有提供manager与manager间通信机制,只适合集中式管理,而不利于分布式管理。

●只适于监测网络设备,不适于监测网络本身。

针对这些问题,改进工作一直在进行。RMON(Remote Network Monitoring)MIB,加强SNMP对网络本身的管理能力。这使SNMP不仅可管理网络设备,还能收集局域网和互联网上的数据流量等信息。针对SNMP缺乏安全性的弱项,公布了S-SNMP(Secure SNMP)草案。推出的SNMPv2,包容以前对SNMP所做各项改进,并保持SNMP清晰性和易于实现的特点,功能更强,安全性更好。具体体现在:提供了验证机制、加密机制、时间同步机制等,安全性提高;提供了一次取回大量数据的能力,效率提高;增加了网管和网管之间的信息交换机制,支持分布式管理结构。由中间网管分担主网管任务,增加远地站点的局部自主性;可在多种网络协议上运行,适用多协议网络环境(默认网络协议仍为UDP);SNMPv2处理能力大约是SNMPv1的15倍。SNMPv2由12份协议文本组成(RFC1441~RFC1452),已被互联网推荐为标准。

下面对SNMPv2标准详细说明,包括该标准中的安全机制、Party实体,以及从通信协议操作、SMI、MIB三方面分析SNMPv2标准。

1.SNMPv2标准中的安全机制

增强了安全机制。通常造成对管理系统安全威胁的主要有以下几种:

●信息篡改(modification)。SNMPv2标准中,允许管理站(manager)修改agent上的一些被管理对象的值。网络攻击者可能会将传输中的报文加以改变,改成非法值进行破坏。因此,协议应能验证收到的报文是否在传输过程中被修改过。(www.xing528.com)

●冒充(masquerade)。SNMPv2标准中虽有访问控制能力,但这主要是从报文发送者判断的。没有访问权的用户可能会冒充别的合法用户进行破坏活动。因此,协议应能验证报文发送者的真实性,判断是否有人冒充。

●报文流的改变(message stream modification)。由于SNMPv2标准是基于无连接传输服务的,报文的延迟、重发以及报文流顺序的改变都可能发生。某些破坏者可能会故意将报文延迟、重发,或改变报文流的顺序,以达到破坏的目的。因此协议应能防止报文的传输时间过长,给破坏者留下机会。

●报文内容的窃取(disclosure)。破坏者可能会截获传输中的报文,窃取内容。特别在创建新的SNMPv2 Party时,必须保证其内容不被窃取,因为以后关于Party的所有操作都依赖于它。因此协议应能对报文内容进行加密,保证其不被窃听者获取。针对上述安全性问题,SNMPv2中增加验证、加密、及时间同步机制来保证通信安全。

2.SNMPv2 Party

SNMPv2标准中增加了称为Party的实体。Party是具有网络管理功能的最小实体,功能是SNMPv2 entity(管理实体)所能完成的全部功能的一个子集。每个manager和agent上都分别有多个Party,每个站点上的各个Party彼此平等,各自完成自己功能。实际的信息交换都发生在Party与Party之间(在每个发送的报文里,都要指定发送方和接收方的Party)。每个Party都有一个唯一标识符(party identity)、一个验证算法和参数,以及一个加密算法和参数。Party引入增加系统灵活性和安全性,可赋予不同的人员以不同的管理权限。SNMPv2中有3种安全性机制:验证(authentication)机制、加密(privacy)机制和访问控制(access control)机制。这些机制都工作在Party一级,而非manager/agent一级。

3.SNMPv2协议操作

SNMPv2标准的核心是通信协议,它是一个请求/应答式的协议。这个协议提供了在manager与agent、manager与manager之间交换管理信息的直观、基本的方法。

每条SNMPv2报文都由一些域构成。如发送方、接收方的两个Party都采用了验证(authentication)机制,它包含与验证有关信息;否则它为空(NULL)。验证过程是发送方和接收方的Party都分别有一个验证用的密钥(secret key)和一个验证用的算法。报文发送前,发送方先将密钥值填入图中digest域,作为报文的前缀。然后根据验证算法,对报文中digest域以后(包括digest域)的报文数据进行计算,计算出一摘要值(digest),再用摘要值取代密钥,填入报文中的digest域。接收方收到报文后,先将报文中的摘要值取出来,暂存一位置,然后用发送方的密钥放入报文中的digest。将这两个摘要值进行比较,如一样,就证明发送方确实是srcParty域中所指明的那个Party,报文合法;如不一样,接收方断定发送方非法。验证机制可防止非法用户“冒充”某个合法Party进行破坏。

authInfo域还包含两个时间戳,用于发送方与接收方间的同步,以防止报文被截获和重发。

SNMPv2可对通信报文进行加密,以防止监听者窃取报文内容。除了privDst域外,报文其余部分可被加密。发送方与接收方采用同样的加密算法(如DES)。通信报文可不加任何安全保护,或只进行验证,也可以二者同时进行。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈