Cisco路由器安全配置必用10条命令


  当谈到配置一台新的Cisco路由器,多数配置依赖于路由器的类型以及它将服务的用途。然而,每位管理员都有其自己的正确配置每台路由器的命令列表。  
  当谈到配置一台新的Cisco路由器,多数配置依赖于路由器的类型以及它将服务的用途。然而,有一些东西是你在每台新的Cisco路由器上都应该配置的。
  
  有哪个命令的标准是你希望思科在每台路由器上都使用的吗?每位管理员都其自己的正确配置每台路由器的命令。
  
  这是我认为你应该在每台路由器上都配置的十条命令的列表(没有特别的顺序)
  
  在路由器上配置一个登录帐户
  
  我强烈建议在路由器和交换机上配置一个真实的用户名和口令帐号。这样做,意味着你需要用户和口令来获得访问权。
  
  除此之外,我建议为用户名使用一个秘密口令,而不仅有一个常规口令。它用MD5加密方法来加密口令,并且大大提高了安全性。举例如下:
  
  Router(config)# username root secret My$Password
  
  在配置了用户名后,你必须启用使用该用户名的端口。举例如下: Router(config)# line con 0
  
  Router(config-line)# login local
  
  Router(config)# line aux 0
  
  Router(config-line)# login local
  
  Router(config)# line vty 0 4
  
  Router(config-line)# login local
  
  在路由器上设置一个主机名
  
  我猜测路由器上缺省的主机名是router。你可以保留这个缺省值,路由器同样可以正常运行。然而,对路由器重新命名并唯一地标识它才有意 义。举例如下:
  
  Router(config)# hostname Router-Branch-23
  
  除此之外,你可以在路由器上配置一个域名,这样它就知道所处哪个DNS域中。举例如下:
  
  Router-Branch-23(config)# ip domain name TechRepublic.com
  
  为进入特权模式设置口令
  
  当谈到设置进入特权模式的口令时,许多人想到使用enable password命令。然而,代替使用这个命令,我强烈推荐使用enable secret命令。
  
  这个命令用MD5加密方法加密口令,所以提示符不以明文显示。举例如下:
  
  Router(config)# enable secret My$Password
  
  加密路由器口令
  
  Cisco路由器缺省情况下在配置中不加密口令。然而,你可以很容易地改变这一点。举例如下:
  
  Router(config)# service password-encryption
  
  禁用Web服务
  
  Cisco路由器还在缺省情况下启用了Web服务,它是一个安全风险。如果你不打算使用它,最好将它关闭。举例如下:
  
  Router(config)# no ip http server
  
  配置DNS,或禁用DNS查找
  
  让我们讨论Cisco路由器中我个人认为的一个小毛病:缺省情况下,如果在特权模式下误输入了一个命令,路由器认为你试图Telnet到一个远程 主机。然而它对你输入的内容却执行DNS查找。
  
  如果你没有在路由器上配置DNS,命令提示符将挂起直到DNS查找失败。由于这个原因,我建议使用下面两个方法中的一个。
  
  一个选择是禁用DNS。做法是:
  
  Router(config)# no ip domain-lookup
  
  或者,你可以正确地配置DNS指向一台真实的DNS服务器
  
  Router(config)# ip name-server
  
  配置命令别名
  
  许多网络管理员都知道在路由器上配置命令的缩写(也就是别名)。举例如下:
  
  Router(config)# alias exec s sh run
  
  这就是说你现在可以输入s,而不必输入完整的show running-configuration命令。
  
  设置路由器时钟,或配置NTP服务器
  
  多数Cisco设备没有内部时钟。当它们启动时,它们不知道时间是多少。即使你设置时间,如果你将路由器关闭或重启,它不会保留该信息。
  
  首先设置你的时区和夏令时。例子如下:
  
  Router(config)# clock timezone CST -6
  
  Router(config)# clock summer-time CDT recurring
  
  然后,为了确保路由器的事件消息显示正确的时间,设置路由器的时钟,或者配置一个NTP服务器。设置时钟的例子如下:
  
  Router# clock set 10:54:00 Oct 5 2005
  
  如果你已经在网络中有了一个NTP服务器(或可以访问Internet的路由器),你可以命令路由器将之作为时间源。这是你最好的选择,当路由器启动时,它将通过NTP服务器设置时钟。举例如下:
  
  Router(config)# ntp server 132.163.4.101
  
  不让日志消息打扰你的配置过程
  
  Cisco IOS中另一个我认为的小毛病就是在我配置路由器时,控制台界面就不断弹出日志消息(可能是控制台端口,AUX端口或VTY端口)。要预 防这一点,你可以这样做。
  
  所以在每一条端口线路上,我使用日志同步命令。举例如下:
  
  Router(config)# line con 0
  
  Router(config-line)# logging synchronous
  
  Router(config)# line aux 0
  
  Router(config-line)# logging synchronous
  
  Router(config)# line vty 0 4
  
  Router(config-line)# logging synchronous
  
  除此之外,你可以在端口上修改这些端口的执行超时时间。例如,我们假设你想禁用VTY线路上默认的十分钟超时时间。在线路配置模式下使用 exec-timeout 0 0命令,使路由器永不退出。
  
  在路由器缓冲区或系统日志服务器中记录系统消息
  
  捕获路由器的错误和事件以及监视控制台是解决问题的关键。默认情况下,路由器不会将缓冲的事件记录发送到路由器内存中。
  
  然而,你可以配置路由器将缓冲的事件记录发送到内存。举例如下:
  
  Router(config)# logging buffered 16384
  
  你还可以将路由器事件发送到一个系统日志服务器。由于该服务器处在路由器外部,就有一个附加的优点:即使路由器断电也会保留事件记录