我们都知道SNMP服务已经在很多系统中都默认安装了。但是,它的安全问题也是一直令我们担忧。就算它再如何好用,我们也会考虑关闭这个服务。所以我们接下来就讲解一下如何关闭SNMP服务。虽然SNMP很好用,但我们要避免SNMP服务带来的安全风险,最彻底的办法是关闭SNMP服务。如果你没有用SNMP服务来管理网络,那就没有必要运行它;如果你不清楚是否有必要运行SNMP,很可能实际上不需要。
即使你打算以后使用SNMP服务,只要现在没有用,也应该先禁用SNMP,直到确实需要使用SNMP服务时才启用它。
下面列出了如何在常见的平台上关闭SNMP服务。
◆Windows XP和Windows 2000
在XP和Win 2K中,右击“我的电脑”,选择“管理”。展开“服务和应用程序”、“服务”,从服务的清单中选择SNMP服务,停止该服务。然后打开服务的“属性”对话框,将启动类型该为“禁用”(按照微软的默认设置,Win 2K/XP默认不安装SNMP服务,但许多软件会自动安装该服务)。
◆Windows NT 4.0
选择“开始”→“设置”,打开服务设置程序,在服务清单中选择SNMP服务,停止该服务,然后将它的启动类型该为禁用。
◆Windows 9x
打开控制面板的网络设置程序,在“配置”页中,从已安装的组件清单中选择“Microsoft SNMP代理”,点击“删除”。检查HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServices和HKEY_LOCAL_MACHINE\ SOFTWARE\Microsoft\Windows\CurrentVersion\Run注册键,确认不存在snmp.exe。
◆Cisco Systems硬件
对于Cisco的网络硬件,执行“no SNMP-server”命令关闭SNMP服务。如果要检查SNMP服务是否关闭,可执行“show SNMP”命令。这些命令只适用于运行Cisco IOS的平台;对于非IOS的Cisco设备,请参考随机文档。
◆HP硬件
对于所有使用JetDirect卡(绝大部分HP网络打印机都使用它)的HP网络设备,用telnet连接到JetDirect卡的IP地址,然后执行下面的命令:
SNMP-config: 0
quit
这些命令将关闭设备的SNMP服务。但必须注意的是,关闭SNMP服务会影响服务的发现操作以及利用SNMP获取设备状态的端口监视机制。
◆Red Hat Linux
对于Red Hat Linux,可以用Linuxconf工具从自动启动的服务清单中删除SNMP服务,或者直接从/etc/services文件删除启动SNMP服务的行。对于其他Linux系统,操作方法应该也相似。