Cisco网络设备访问安全基础
为了保护他们的Cisco 网络,许多管理员开始忙于什么样的流量可以被允许通过网络设备,怎样限制邮件路由升级和其他路由器交换的唯一信息。访问控制列表(ACLs)通常可以相当简单地解决这些问题。网络设备的安全对任何联网的环境都很重要,为解决这个问题,Cisco提供了许多可供选择的方法。
在本文中,我将介绍登录安全的基本配置。还将介绍怎样使用基于用户的登录配置来使得基本配置更加安全,证明怎样监视配置活动和对你的路由器的连接。一旦你明白了这些基本的配置,你可以在其上建立更多的Cisco高级特性。
基本登录安全配置
Cisco提供的最基本的安全考虑是在设备访问和配置过程中使用本地口令。不同的口令可以应用于不同的行或者访问指针。Cisco设备中典型的访问指针是终端行(也称为虚拟终端行, 或VTYs),控制台端口,和辅助端口(AUX)。
而且,不同的端口可以建立不同的认证方法。下面是一个非常简单的认证配置的例子。
IOS 版本 下面的例子假设有一个标准的,使用IOS 12.x版本的类访问Cisco路由器。 Router (config)# line con 0 Router (config-line)# password conpword1 Router (config-line)# login Router (config-line)# exit Router (config)# enable password 12345
在此,我已经设置了一个控制台端口口令并且产生我在配置路由器时需要的口令。首先我进入控制台端口的行配置模式,设置口令并用login来完成。然后我为路由器配置的访问权限创建口令。当需要保护本地控制台对路由器的访问时,应该从这里开始。
口令加密
需要注意的是在这个配置过程中,口令是纯文本的。从安全的角度看这不是一个好思想。然而,你可以把这些口令加密,这样访问路由器的其他人就不能看到这些口令。执行下面的命令: Router (config)# service password-encryption
口令加密服务将加密所有现存的和在以后配置的口令。我强烈推荐在你的Cisco网络设备配置中使用这项服务。
口令种类
有效口令包括两个种类:标准有效口令和有效密码(enable secret)。由于使用了强加密手段,所以有效密码比有效口令更安全。
配置有效密码之后,它将替代有效口令。下面的例子说明了有效密码的设置: Router (config)# enable secret abc123
如果你在执行了这一步后查看路由器配置,你将看到有效密码口令自动被加密了,无论是否开启了口令加密服务。
设置通话超时时间
另一件有关访问的事就是考虑通话超时。作为一个更高层的安全性,你可以设置在一段静止状态后断开对话连接。如果你离开终端一段时间,需要关闭一个配置对话,这是个便利的工具。默认的超时时间是十分钟。如果想设置通话超时,试一下下面的命令: Router (config)# line console 0 Router (config-line)# exec-timeout 6 30
如果在六分三十秒钟内没有输入,将关闭这个控制台对话。
保护终端行
在保护控制台端口的同时,你也希望保护在网络中用来进行Telnet访问的终端行。考虑下面关于Telnet安全的例子: Router (config)# line vty 0 4 Router (config-line)# password termpword1 Router (config-line)# login
需要注意的是这和控制台的配置非常相似。一个区别是由于路由器访问有不止一个VTY行,所以在VTY关键字后面有两个数字。在许多Cisco路由器上默认的行数为五行。在这里,我们为所有终端(VTY)行设置一个口令。我可以在某个范围指定实际的终端或VTY行号。你经常看到的语法是vty 0 4,这样可以包括所有五个终端访问行。从理论上来说,你可以对不同的VTY行或范围建立不同的口令。如果需要的话,你可以扩展可用的VTY行数以容纳更多的用户。但这个方法也有限制。首先,一般建议限制对典型的网络设备同时进行访问。所以在这个例子中,扩展VTY的输入行数并不是很好的选择。如果只是限制Telnet协议对VTY的访问,可以使用下列命令: Router (config) # line vty 0 4 Router (config-line) # transport input telnet
在这里,我已经指定所有终端行都可以使用Telnet。为了进一步限制源地址的路由器访问,我可以在行配置模式配合类访问命令使用一个访问列表。
要保护可以在网络中进行路由器访问的虚拟终端行,还有好多事情要做。
SSH vs. Telnet SSH对比Telnet 如果你非常偏爱使用Telnet来登录你的路由器,可以选择使用SSH。为了使你的路由器能够使用SSH,运行下列命令: Router (config) # line vty 0 3 Router (config-line) # transport input ssh
而且,我们对基本网络设备登录有一个相当可靠的基础。我们将考虑的下一个安全登录形式是基于用户的登录。
基于用户的登录
一个基于特定用户信任关系的登录进程有助于保证配置改变的责任,这在那些拥有许多需要手工操作的路由器和交换机的大型网络环境中显得尤为重要。一旦你执行了这个类型的认证,路由器将记录是谁在何时访问路由器并修改了配置。作为一个网络管理员,你将真切地体会到记录路由器配置变化的好处。为了使其工作,你可以使用认证,授权,和记录(AAA)特性来设定本地用户名认证。下面例子中的命令是激活本地用户名登录所必须的: Router (config) # aaa new-model Router (config) # aaa authentication login default local Router (config) # line vty 0 3 Router (config-line) # login authentication default Router (config-line) # exit Router (config)# username rmcintire password rmcinpword1 Router (config)# username rhumphrey password rhpword1 Router (config)# username jberry password jbpword1
尽管对AAA设置进行全面讨论超出了本文的范围,但我还是要介绍更多的高级技巧以说明其有用的性能。在此,我为登录创建了三个不同的用户名和口令并在VTY 1至3行应用这一登录方法。此外,如果加密服务启动了,口令将在实际路由器配置文件中被加密。
授权
随同访问而来的问题是访问等级,或者说是授权等级。这个问题是指你希望访问你的用户拥有多大的权限。Cisco的功能允许设置不同访问等级。权限等级的范围是从0到15;15拥有最高级别的访问权限。默认的级别是0和15。级别15提供完全的访问权限,而级别0能使用的命令和配置非常有限。你可以设置权限等级并通过命令或类型赋予这些等级一定的功能。例如,你可以创建一个级别,允许访问界面和命令行配置模式,另一个级别只允许访问某些通用命令配置模式。为了指定权限等级,你可以使用下列通用配置命令: Router (config) # Privilege configure level 5 ntp
你可以通过改变配置等级来赋予多种命令访问方式。这里,我创建等级5并允许在通用配置模式下使用NTP命令。
作为网络管理员,你将承担维护每一个用户的访问等级。为了使这些访问设置更有效,一定要限制所有用户使用访问命令的能力,因为这将允许他们改变自己的权限等级。在下面的例子中,我指定自己的等级为5: Router (config) # username rmcintire privilege 5 Another option to consider is assigning privilege by terminal line. To restrict privilege level by input line, enter config mode on that line and set the level as follows: Router (config) # line console 0 Router (config-line) # privilege level 7 Router (config) # line vty 0 4 Router (config-line) # privilege level 4
这就在VTY(终端)行中实现了一个比控制台更低的权限等级。这可能更适合需要限制用户通过虚拟终端对话在网络上进行等级较高的修改的环境。主要是,当需要进行重大修改时,这将迫使对控制台端口拥有较高级别访问权限的维护部门派人去手工改动交换机。
监控访问安全
你不仅可以追踪路由器的配置活动,还可以实时地知道何人连接了特定的路由器。像下面例子那样使用显示用户命令: Router # show users
这个命令的输出了一个表格,包括的行条目显示了每一个在使用的终端行,用户名,位置(地址),等。这个位置或IP地址可以用来从终端对话的位置查找实际的系统。如果用户名登录启动,你可以轻松地看到哪些用户登录了路由器。这就是我为什么推荐在不止有一个人进行网络维护的网络环境中使用某些基于用户的访问形式的原因。你也可以使用下面的命令断开受到怀疑或者没有授权许可的用户的对话: Router # disconnect ip-address
在任何时候查看权限信息,使用下面的命令: Router # show privilege
结论
在只有很少的几个人员需要访问网络设备的简单环境中,你通常可以只实现很基本的安全功能,以VTY形式和控制台口令来控制用户对路由器输入行的访问。增加一个有效密码,以及用户对配置网络进行访问是相当安全的。如果你有一个更大的网络,更多的人员需要进行访问,或者只是对责任要求更高,请浏览基于用户的访问技巧。
尽管在这个Daily Drill Down中,安全设置和补充远没有结束,但考虑完善的安全措施几乎总是我在保护我的Cisco路由器时做的第一件事情。由于有一个更高级,更丰富的性能集,你将享受到AAA带来的好处。我的下一篇文章,“用AAA提高访问控制技巧”将对这个话题提供更多的信息。
文章录入:csh 责任编辑:csh