思科边界路由器安全配置方案
【IT168 专稿】英特网和网络互联技术的迅速发展和普及,总体上人们对信息安全有了更高的要求。尽管当计算机网络和远程通信出现后,网络安全就已经开始考虑了,但当今的互联网环境需要一种新的方法来保障网络的安全。前几年,网络还是一个相对封闭的、可控制的环境,访问是有限的,访问点也很容易识别,而因特网没有这两个前提条件,它本质上是一个开放的环境,访问是实际的、随意的、无限制的,访问点数目众多且无法预测。许多具有丰富信息系统知识的专业人员都意识到风险和威胁的存在,而这些风险和威胁的性质和可用的防御工具及技术常常不为人所知。与许多正在发展中的技术一样,有很多提供防御工具的信息也可利用,但这些信息常常分散在许多地方,而且要求对新词汇有彻底的了解。
同时,信息不会总是以真正可用的形势出现,而且这些信息对那些需要采取预防措施的人来说常常太抽象和太理论化或是过于简化,以至于我们在需要完全彻底地运用这些工具时没有足够的信心。于是便造成了这样一种情况:不管专业技术人员所获得的信息多或是少,都要对网络安全的解决方案的选择和应用作出专业的判断。
基本网络安全
在这里我们应该回顾一下当前可用的安全工具的范围。本文将不涉及那些特定于主机的工具以及那些属于主机或服务器操作系统特性集的组建,也不涉及那些建立在管理策略和规程的工具。本文将主要介绍那些基于协议或网络的工具。因为重点是基于Cisco的网络安全,所以要确认能够提供各种安全保护的Cisco可用产品或所支持的特性。
防范第一步 边界路由器
IP路由器是保护任何网络与因特网或任何其他非私有或互联网络连接的一个关键设备。它一般出现于局域网连接到广域网的地方,这种连接可以是通过专线、帧中继、ATM(异步传输方式)或其他广域网技术实现的。图1、
![]() |
边界路由器
从图中我们可以看到,边界路由器是第一道防线,在这里私有网络一般通过因特网服务商(ISP)连接到公共网络。因为一般在企业公司网路中它是传入的数据所经过的第一台设备,有些会使用防火墙(如图1),有些不会使用防火墙。在这种情况下,边界路由器独自负责保护DMZ中的服务器。因此边界路由器所提供的功能是至关重要的。可以使用的主要工具就是配置在路由器上的访问控制列表(ACL)。Cisco也提供了其他一些网络安全功能作为因特网操作系统的重要部分,此外也可使用另外的可选软件。
图2、
![]() |
MZ拓展图
Cisco路由器上的ACL是一种数据包过滤器。他们可被定义为基本的标准访问列表,或者是更高级的扩展访问列表。两者之间的基本区别在于所定义的范围和详细程度不同。扩展访问列表是标准访问列表的超集,它允许定义额外的标准进行检查。图3、
![]() |
网络设备构建图
另一种更佳的设计方案是将DMZ移到防火墙的后面。这种方案允许使用更多的防火墙功能来提供更大程度的访问。Ciscoz在PIX产品上对这种方案的支持已经有好几年了,除了使用在典型设计中所采用的2个接口之外,它还允许在PIX上安装第三个接口。今年来的PIX操作系统已经扩展到了支持多达6个接口,实际接口数根据接口类型和PIX平台的不同而具体化。
这里需要注意一点,虽然使用只带访问列表的路由器作为唯一防线的方法是可能的,但它存在明显的局限性,如果预算或者其他因素导致不能再设计方案中考虑防火墙,则退而求其次的代替方案应当实现被称作“防火墙功能集”的产品,这是一种可选和附加的IOS软件产品,为Cisci路由器提供了PIX的大部分功能。
设置安全密码
使用密码来控制对Cisco交换机、路由器以及PIX防火墙进行管理性访问的方法有很多,在此就不一一做介绍了,除此之外,还有很多其他的方法可以实现Cisco产品所使用或支持的密码保护。利用密码进行认证的方法属于“身份技术”的一种形式。总体来说,身份技术需要依赖于下面的一项或多项内容:1、 用户所知的内容;2、 用户所拥有的某种标记;3、 用户独有的特征。
对不同密码保护的一种方法是,要求密码必须定期更改。通过这种让密码过期的方法,可以限制密码的有效时间。这样即使密码可能被他人知道或发现,也只是在有限的时间段内才是有效的。进一步改进的方法是使用一次性密码(One-time Password,OTP)这是密码过期的极端情况。使用这种方法,密码只使用一次,然后就被抛弃掉。虽然密码可能被他人知道或发现,但在被使用一次之后,就不能再用了,因为下一次尝试的时候需要输入新的密码。
使用一次性密码有利有弊,如果在每次使用之后都必须手动更改密码,将会给管理员带来很大的负担,因此必须寻找一种可以动态更新密码数据库的方法。有AT&T开发的S/Key就是这样一种方法。使用S/Key,客户端可以请求S/Key服务器产生一个密码列表供该用户端使用。服务器产生了密码列表后,将它交给客户端,并且自己保留一份副本。客户端按照密码排列的顺序依次使用。如果一个密码被使用过,那么它就会被客户端和服务器“从列表中删除”。一旦密码列表使用完,客户端就必须向S/Key服务器重新请求另一批密码。
禁用Finger服务及定向广播
用于禁用Finger服务的命令为:Router(config)#no service finger一般来说,TCP/IP实现包括被成为finger的服务(TCP端口79)。此服务可以通过命令finger x.x.x.x启用,其中x.x.x.x是主机的IP地址或名字。如果人们能够用TELNET连接到端口79,那么可以实现与finger服务相同的目的。该服务最初的目的就是检查当前登录到已知主机的用户的有关信息,并且返回诸如登陆名和电子邮件地址这样的信息。通常该服务在主机上都被禁用。因为大部分的系统管理员都认为该服务所提供的信息属于私人性质。在Cisco路由器上,该服务流出了当前登陆的用户。即使它没有给入侵者提供什么有用信息也仍然应当把它禁用。图4、
![]() |
finger邮箱信息
所谓的IP定向广播数据包就是发往特定网络或子网广播地址的信息。源站点位于其他网络或是子网。定向广播数据包像其他任何单播数据包一样穿过网络。当它到达目的网络或子网的时候,最后一个路由器识别出地址的主机部分是发往所有主机的广播地址。然后它将数据包“扩展成”MAC层的广播帧,在该网段上的所有主机都能收到此广播帧。事实上,定向广播是用于smurf攻击的一种机制,这种攻击是著名的拒绝服务(DoS)攻击的一种。在smurf攻击中,攻击者利用某个被攻击主机的源地址产生发往定向广播地址的数据包(ICMP Echo Request),然后该主机会接收到大量的应答数据包(ICMP Echo Reply)。网络子网中的所有主机都会向被攻击主机发送ICMP Echo Reply,从而增强了攻击效果。
在此攻击中有两个受害者:一个就是定向广播的目的主机,另一个是接受到大量应答数据包的被攻击主机。再考虑一下攻击的后果,如果个攻击者继续地向一个拥有100台主机的网络发送定向广播流,那么实际产生的流量将是初始流量的100倍。如果攻击者以500Kbps的部分T1速率产生数据流,那么受攻击主机将遭受到50Mbps的流量的打击。这对于站点会产生很大的影响。值得注意的是,应当在所有的路由器而不只是边界路由器上禁用此项特性。这是因为只有在最后一级网络或子网中的最后一个路由器上会检查地址的主机部分。而所有的上游路由器都只是注意网络或子网前缀。因此只有最后一个路由器识别出数据包是广播数据包,并且产生MAC层广播帧。如果对于该特性的支持在接口上被禁用,那么路由器只需要丢弃定向广播数据包即可。用于禁用该特性的命令语法为:Router(config-if)#no ip directed-broadcast,而且要注意此命令也是接口特定的,因此,可以应用到所有路由器的各个接口。在Cisco IOS 11.3版本之前的所有版本默认情况下都启用了这个特性。而从IOS 12.0版本开始,默认情况下在所有接口都禁用该特性。
禁用ICMP不可达消息
如果对因特网控制消息协议(ICMP)使用得当的话,可以提供丰富的信息。当然同样的,也有无数的情况下会讲此协议滥用于其他错误的目的。对于各种形势的监视、入侵、拒绝服务以及其他形式的攻击而言,ICMP可能是最受欢迎的工具之一。它是一种相对独立的协议,而且不可能从组织网络中将他完全清除掉。因为它不仅是很多有用工具(如Ping 和Traceroute)的基础,而且它能够提供丰富的错误信息,而这些错误信息对于网络故障诊断而言是必不可少的。但在另一方面,它也是很多攻击的基础,如Ping of Death攻击、Loki攻击、分片攻击等。图5、
![]() |
XP下的ICMP对话框
尽管ICMP信息可以很清楚的向组织提供有关其网络和主机的状态信息,但是这些信息对于外部人员来说,也是同样可用的。任何高明的入侵者的工具箱中都会有能够扫描和映射IP地址范围、端口范围以及类似内容的工具。通过分析这些扫描的响应(或没有响应),入侵者能够了解到有关组织网络的各种信息,其中包括:存在哪些地址的范围、存在哪些主机、正在运行哪些服务以及哪些端口提供服务等内容。
能够被用来限制对入侵者和其他外部人员可用信息程度的办法之一就是限制ICMP所能提供的有用信息的级别。可以命令路由器停止发送一些ICMP的“网络不可达”消息以避免提供那么多有用的信息。Cisco提供了具体的命令,用于禁止发送这两个特有的ICMP消息类型。只要将下面的命令应用到边界路由器的外部接口,路由器就会拒绝发送这些ICMP消息类型命令为:Router(config-if)# no ip unreachables,此命令可以用在所有思科路由器的所有接口上。然而,之前的消息类型仍然是有用的,只要他们保留在组织的内部即可。有一个好办法可用于防止那些来自更多内部路由器的ICMP“目的地不可达”消息类型,就是在网络的出口使用访问列表对这些ICMP消息进行过滤。
总结及建议:本文已经了解到,在边界路由器上可以采取很多的预防措施。这些措施包括对边界路由器之后网络的保护,以及对边界路由器本身的保护。因为网络保护的重要职责很多是由防火墙来承担的(假设存在防火墙),所以能做的主要任务就是保护和加强路由器。思科以前版本的产品中,在默认情况下启用了很多特性和服务。不过在最近的一些版本中,这种情况开始有所改变,曾提到的一些内容在默认情况下都已禁用了。对于正在使用的版本而言,可能必须试验一下这些命令,以确认当前的默认设置情况如果特性已经被禁用,那么就让它继续保持禁用的状态。
