,路由器其他安全配置
1, 及时的升级 IOS 软件,并且要迅速的为 IOS 安装补丁。

2, 要严格认真的为 IOS 作安全备份。

3, 要为路由器的配置文件作安全备份。

4, 购买 UPS 设备,或者至少要有冗余电源。

5, 要有完备的路由器的安全访问和维护记录日志。

6, 要严格设置登录 Banner 。必须包含非授权用户禁止登录的字样。

7,IP 欺骗得简单防护。如过滤非公有地址访问内部网络。过滤自己内部网络地址;回环地址 (127.0.0.0/8) RFC1918 私有地 址; DHCP 自定义地址 (169.254.0.0/16) ;科学文档作者测试用地址 (192.0.2.0/24) ;不用的组播地址 (224.0.0.0 /4) SUN 公司的古老的测试地址 (20.20.20.0/24;204.152.64.0/23) ;全网络地址 (0.0.0.0/8)

Router(Config)# access-list 100 deny ip 192.168.0.0 0.0.0.255 any log
Router(Config)# access-list 100 deny ip 127.0.0.0 0.255.255.255 any log 
Router(Config)# access-list 100 deny ip 192.168.0.0 0.0.255.255 any log
Router(Config)# access-list 100 deny ip 172.16.0.0 0.15.255.255 any log
Router(Config)# access-list 100 deny ip 10.0.0.0 0.255.255.255 any log
Router(Config)# access-list 100 deny ip 169.254.0.0 0.0.255.255 any log
Router(Config)# access-list 100 deny ip 192.0.2.0 0.0.0.255 any log
Router(Config)# access-list 100 deny ip 224.0.0.0 15.255.255.255 any 
Router(Config)# access-list 100 deny ip 20.20.20.0 0.0.0.255 any log
Router(Config)# access-list 100 deny ip 204.152.64.0 0.0.2.255 any log
Router(Config)# access-list 100 deny ip 0.0.0.0 0.255.255.255 any log


8,
建议采用访问列表控制流出内部网络的地址必须是属于内部网络的。如:

Router(Config)# no access-list 101
Router(Config)# access-list 101 permit ip 192.168.0.0 0.0.0.255 any
Router(Config)# access-list 101 deny ip any any log
Router(Config)# interface eth 0/1
Router(Config-if)# description “internet Ethernet”
Router(Config-if)# ip address 192.168.0.254 255.255.255.0
Router(Config-if)# ip access-group 101 in

 

9,TCP SYN 的防范。如:

A:  通过访问列表防范。
Router(Config)# no access-list 106 
Router(Config)# access-list 106 permit tcp any 192.168.0.0 0.0.0.255 established
Router(Config)# access-list 106 deny ip any any log
Router(Config)# interface eth 0/2
Router(Config-if)# description “external Ethernet”
Router(Config-if)# ip address 192.168.1.254 255.255.255.0
Router(Config-if)# ip access-group 106 in
B
:通过 TCP 截获防范。 ( 这会给路由器产生一定负载 )
Router(Config)# ip tcp intercept list 107
Router(Config)# access-list 107 permit tcp any 192.168.0.0 0.0.0.255
Router(Config)# access-list 107 deny ip any any log
Router(Config)# interface eth0
Router(Config)# ip access-group 107 in

 

 

10,LAND.C  进攻的防范。

Router(Config)# access-list 107 deny ip host 192.168.1.254 host 192.168.1.254 log
Router(Config)# access-list permit ip any any
Router(Config)# interface eth 0/2
Router(Config-if)# ip address 192.168.1.254 255.255.255.0
Router(Config-if)# ip access-group 107 in

 

 

11,Smurf 进攻的防范。

Router(Config)# access-list 108 deny ip any host 192.168.1.255 log
Router(Config)# access-list 108 deny ip any host 192.168.1.0 log

 

12,ICMP 协议的安全配置。对于进入 ICMP 流,我们要禁止 ICMP 协议的 ECHO Redirect Mask request 。也需要禁 TraceRoute 命令的探测。对于流出的 ICMP 流,我们可以允许 ECHO Parameter Problem Packet too big 还有 TraceRoute 命令的使用。

! outbound ICMP Control
Router(Config)# access-list 110 deny icmp any any echo log
Router(Config)# access-list 110 deny icmp any any redirect log
Router(Config)# access-list 110 deny icmp any any mask-request log
Router(Config)# access-list 110 permit icmp any any 
! Inbound ICMP Control
Router(Config)# access-list 111 permit icmp any any echo
Router(Config)# access-list 111 permit icmp any any Parameter-problem
Router(Config)# access-list 111 permit icmp any any packet-too-big
Router(Config)# access-list 111 permit icmp any any source-quench
Router(Config)# access-list 111 deny icmp any any log
! Outbound TraceRoute Control
Router(Config)# access-list 112 deny udp any any range 33400 34400 
! Inbound TraceRoute Control
Router(Config)# access-list 112 permit udp any any range 33400 34400 


13,DDoS(Distributed Denial of Service)
的防范。

! The TRINOO DDoS system
Router(Config)# access-list 113 deny tcp any any eq 27665 log
Router(Config)# access-list 113 deny udp any any eq 31335 log
Router(Config)# access-list 113 deny udp any any eq 27444 log
! The Stacheldtraht DDoS system 
Router(Config)# access-list 113 deny tcp any any eq 16660 log
Router(Config)# access-list 113 deny tcp any any eq 65000 log
! The TrinityV3 System
Router(Config)# access-list 113 deny tcp any any eq 33270 log
Router(Config)# access-list 113 deny tcp any any eq 39168 log
! The SubSeven DDoS system and some Variants
Router(Config)# access-list 113 deny tcp any any range 6711 6712 log
Router(Config)# access-list 113 deny tcp any any eq 6776 log
Router(Config)# access-list 113 deny tcp any any eq 6669 log
Router(Config)# access-list 113 deny tcp any any eq 2222 log
Router(Config)# access-list 113 deny tcp any any eq 7000 log

 

14, 建议启用 SSH ,废弃掉 Telnet 。但只有支持并带有 IPSec 特征集的 IOS 才支持 SSH 。并且 IOS12.0-IOS12.2 仅支持 SSH-V1 。如下配置 SSH 服务的例子:

Router(Config)# config t
Router(Config)# no access-list 22
Router(Config)# access-list 22 permit 192.168.0.22
Router(Config)# access-list deny any
Router(Config)# username BluShin privilege 10 G00dPa55w0rd
设置 SSH 的超时间隔和尝试登录次数
Router(Config)# ip ssh timeout 90
Router(Config)# ip ssh anthentication-retries 2
Router(Config)# line vty 0 4
Router(Config-line)# access-class 22 in
Router(Config-line)# transport input ssh
Router(Config-line)# login local
Router(Config-line)# exit
!启用 SSH 服务,生成 RSA 密钥对。
Router(Config)# crypto key generate rsa
The name for the keys will be: router.blushin.org
Choose the size of the key modulus in the range of 360 to 2048 for your General Purpose Keys .Choosing a key modulus greater than 512 may take a few minutes. 
How many bits in the modulus[512]: 2048 
Generating RSA Keys... 
[OK] 
Router(Config)#

 

15,. 配置访问控制列表 :

 使用访问控制列表的目的就是为了保护路由器的安全和优化网络的流量 . 访问列表的作用就是在数据包经过路由器某一个端口时 , 该数据包是否允许转发通过 , 必须先在访问控制列表里边查找 , 如果允许 , 则通过 . 所以 , 保护路由器的前提 , 还是先考虑配置访问控制列表吧 .

访问列表有多种形式 , 最常用的有标准访问列表和扩展访问列表 .

1 )创建一个标准访问控制列表的基本配置语法 :

(config)#access-list access-list-number{deny|permit} source [source-wildcard]

  

参数注释 :

access-list-number 是定义访问列表编号的一个值 , 范围从 1--99. 参数

deny permit 指定了允许还是拒绝数据包 .

source 是发送数据包的主机地址 .

source-wildcard 则是发送数据包的主机的通配符 . 在实际应用中 , 如果数据包的源地址在访问列表中未能找到 , 或者是找到了未被允许转发 , 则该包将会被拒绝 .

 

简单访问列表示例 :

   access-list 3 permit 172.30.1.0 0.0.0.255 */ 指明一个列表号为 3 的访问控制列表 , 并允许 172.30.1.0 这个网段的数据通过 .0.0.0.255 是通配符 .

   access-list 3 permit 10.1.1.0 0.0.15.255 */ 允许所有源地址为从 10.1.0.0 10.1.15.255 的数据包通过应用了该访问列表的路由器接口 .

access-list 3 deny 172.31.1.0 0.0.0.255 */ 拒绝源 IP 地址为 172.31.1.0 172.31.1.255 的数据包通过该访问列表 .

  配置了访问列表后 , 就要启用访问控制列表 , 我们可以在接口配置模式下使用 access-group ip access-class 命令来指定访问列表应用于某个接口 . 使用关键字 in(out) 来定义该接口是出站数据包还是入站数据包 .

示例 :

ip access-group 3 in * / 定义该端口入站数据包必须按照访问列表 3 上的原则 .

  

2 )扩展访问控制列表

由于标准访问控制列表对使用的端口不进行区别 , 所以 , 引入了扩展访问控制列表 ( 列表号从 100--199) . 扩展访问列表能够对数据包的源地址 , 目的地址和端口等项目进行检查 , 这其中 , 任何一个项目都可以导致某个数据包不被允许经过路由器接口 .

 

  简单的配置示例 :

   (config)#ip access-list 101 permit tcp any host 10.1.1.2 established log

   (config)#ip access-list 101 permit tcp any host 172.30.1.3 eq www log

   (config)#ip access-list 101 permit tcp any host 172.30.1.4 eq ftp log

(config)# ip access-list 101 permit tcp any host 172.30.1.4 log

  

  注释 :

  第一行允许通过 TCP 协议访问主机 10.1.1.2, 如果没个连接已经在主机 10.1.1.2 和某个要访问的远程主机之间建立 , 则该行不会允许任何数据包通过路由器接口 , 除非回话是从内部企业网内部发起的 . 第二行允许任何连接到主机 172.30.1.3 来请求 www 服务 , 而所有其他类型的连接将被拒绝 , 这是因为在访问列表自动默认的在列表尾部 , 有一个 deny any any 语句来限制其他类型连接 . 第三行是拒绝任何 FTP 连接来访问 172.30.1.4 主机 . 第四行是允许所有类型的访问连接到 172.30.1.4 主机 .

 

16, 控制 telnet 访问控制

  
为了保护路由器访问控制权限 , 必须限制登陆访问路由器的主机 , 针对 VTY(telnet) 端口访问控制的方法 , 具体配置要先建立一个访问控制列表 , 如下示例
建立一个标准的访问控制列表 ( 编号从1--99 任意选择) :
  (config)#access-list 90 permit 172.30.1.45

  (config)#access-list 90 permit 10.1.1.53

该访问列表仅允许以上两个 IP 地址之一的主机对路由器进行 telnet 访问 ,

 

注意 : 创建该列表后必须指定到路由器端口某个端口上 , 具体指定方法如下 :
  (config)#line vty E0 4

  (config-line)#access-class 90 in

  以上配置是入站到 E0 端口的 telnet 示例 , 出站配置采用 out.

 

为了保护路由器的安全设置 , 也可以限制其 telnet 访问的权限
通过分配管理密码来限制一个管理员只能有使用 show 命令的配置如下 :
   enable secret level 6 123456

  privilege exec 6 show
  
  给其分配密码为 123456,telnet 进入路由器后 , 只能用 show 命令 , 其他任何设置权限全部被限制 . 另外 , 也可以通过访问时间来限制所有端口的登陆访问情况 , 在超时的情况下 , 将自动断开 , 下面是一个配置所有端口访问活动 3 30 秒的设置示例 :
   exec-timeout 3 30