在启用了SNMP 协议
服务 情况下,我们如何来确保这个 协议
的 安全
呢?首先我们要及时更新这个 协议
的补 丁,之后还要对这个协议的流程进行过滤。那么具体的实施情况请从下文我们来了解一下吧。
保障SNMP的安全
如果某些设备确实有必要运行SNMP,则必须保障这些设备的安全?首先要做的是确定哪些设备正在运行SNMP服务?除非定期对整个网络进行端口 扫描,全面掌握各台机器?设备上运行的服务,否则的话,很有可能遗漏一?二个SNMP协议服务?特别需要注意的是,网络 交换机?打印机之类的设备同样也会运行SNMP服务?确定SNMP服务的运行情况后,再采取下面的措施保障服务 安全?
◆加载SNMP服务的补丁
安装SNMP协议服务的补丁,将SNMP服务升级到2.0或更高的版本?联系设备的制造商,了解有关安全漏洞和升级补丁的情况?
◆保护SNMP通信字符串
一个很重要的保护措施是修改所有默认的通信字符串?根据设备文档的说明,逐一检查?修改各个标准的?非标准的通信字符串,不要遗漏任何一项,必 要时可以联系制造商获取详细的说明?
◆过滤SNMP
另一个可以采用的保护措施是在网络边界上过滤SNMP通信和请求,即在 防火墙或 边界 路由器上, 阻塞SNMP请求使用的端口?标准的SNMP服务使用161和162端口,厂商私有的实现一般使用199?391?705和1993端口?禁用这些端口通 信后,外部网络访问内部网络的能力就受到了限制;另外,在内部网络的路由器上,应该编写一个ACL,只允许某个特定的可信任的SNMP管理系统操作 SNMP?例如,下面的ACL只允许来自(或者走向)SNMP管理系统的SNMP通信,限制网络上的所有其他SNMP通信:
1.access-list 100 permit ip host w.x.y any
2.access-list 100 deny udp any any eq snmp
3.access-list 100 deny udp any any eq snmptrap
4.access-list 100 permit ip any any
这个ACL的第一行定义了可信任管理系统(w.x.y)?利用下面的命令可以将上述ACL应用到所有网络接口:
1.interface serial 0
2.ip access-group 100 in
总之,SNMP的发明代表着网络管理的一大进步,现在它仍是高效管理大型网络的有力工具?然而,SNMP的早期版本天生缺乏安全性,即使最新的 版本同样也存在问题?就象网络上运行的其他服务一样,SNMP协议服务的安全性也是不可忽视的?不要盲目地肯定网络上没有运行SNMP服务,也许它就躲藏 在某个设备上?那些必不可少的网络服务已经有太多让人担忧的安全问题,所以最好关闭SNMP之类并非必需的服务--至少尽量设法保障其安全?