SNMP制定之初并没有过多地考虑其安全性,这使其早期版本存在安全隐患。
随着网络安全的日趋重要,在SNMP的发展过程中也出现了一些安全方面的增强方案。这些方案虽然没有形成统一的标准,也没有得到广泛应用,但是对后来SNMPv3的形成具有借鉴意义。
1、SNMP早期版本的安全机制及其缺陷
SNMPv1存在一些明显的缺陷,其中之一就是忽视了安全问题。SNMPv1只提出了基于团体(community)的安全机制。一个SNMP团体是一个SNMP代理和任意一组SNMP管理站之间的一种关系,它定义了认证和访问控制的特性。
团体是定义在代理上的一个本地概念。代理为每一个必要的认证和访问控制的联合建立一个团体,每个团体拥有唯一一个名字。团体之中的管理站必须使用该团体的团体名进行Get和Set操作。
(1)认证服务
认证服务用于保证通信是可信的。在SNMP消息中,认证服务将向消息接收者保证该消息的确是从它所声明的来源出发的。SNMP仅提供了一种很简单的认证方式:从管理站发往代理的每个消息都包括一个团体名,起口令的作用。如果该团体名存在于代理已知的团体名列表中,则该消息被认为是可信的,接收该消息;否则,消息不可信,丢弃该消息。
(2)访问控制策略
通过定义团体,代理可以限制它的MIB只能被选定的一组管理站访问。而通过定义多于一个的团体,代理能够为不同的管理站提供不同的MIB访问权限。