Cisco路由器安全配置方案
日期:2007-08-18 荐:
一、 路由器网络服务安全配置1 禁止CDP(Cisco Discovery Protocol)。如:Router(Config)#no cdp run Router(Config-if)# no cdp enable2 禁止其他的TCP、UDP Small服务。Router(Config)# no service tcp-small-servers
Router(Config)# no service udp-samll-servers3 禁止Finger服务。Router(Config)# no ip fingerRouter(Config)# no service finger4 建议禁止HTTP服务。Router(Config)# no ip http server 如果启用了HTTP服务则需要对其进行安全配置:设置用户名和密码;采用访问列表进行控制。5 禁止BOOTp服务。Router(Config)# no ip bootp server6 禁止IP Source Routing。Router(Config)# no ip source-route7 建议如果不需要ARP-Proxy服务则禁止它,路由器默认识开启的。Router(Config)# no ip proxy-arpRouter(Config-if)# no ip proxy-arp8禁止IP Directed Broadcast。Router(Config)# no ip directed-broadcast9 禁止IP Classless。Router(Config)# no ip classless10 禁止ICMP协议的IP Unreachables, Redirects, Mask Replies。Router(Config-if)# no ip unreacheablesRouter(Config-if)# no ip redirectsRouter(Config-if)# no ip mask-reply11 建议禁止SNMP协议服务。在禁止时必须删除一些SNMP服务的默认配置。如:Router(Config)# no snmp-server community public RoRouter(Config)# no snmp-server community admin RW12 如果没必要则禁止WINS和DNS服务。Router(Config)# no ip domain-lookup如果需要则需要配置:Router(Config)# hostname RouterRouter(Config)# ip name-server 219.150.32.xxx13 明确禁止不使用的端口。如:Router(Config)# interface eth0/3Router(Config)# shutdown</P><P>二、路由器访问控制的安全配置(可选)路由器的访问控制是比较重要的安全措施,但是目前由于需求不明确,可以考虑暂时不实施。作为建议提供。1 建议不要远程访问路由器。即使需要远程访问路由器,建议使用访问控制列表和高强度的密码控制。2 严格控制CON端口的访问。配合使用访问控制列表控制对CON口的访问。如:Router(Config)#Access-list 1 permit 192.168.0.1Router(Config)#line con 0Router(Config-line)#Transport input noneRouter(Config-line)#Login localRouter(Config-line)#Exec-timeoute 5 0Router(Config-line)#access-class 1 inRouter(Config-line)#end同时给CON口设置高强度的密码。3 如果不使用AUX端口,则禁止这个端口。默认是未被启用。禁止如:Router(Config)#line aux 0Router(Config-line)#transport input noneRouter(Config-line)#no exec4 建议采用权限分级策略。如:Router(Config)#username test privilege 10 xxxxRouter(Config)#privilege EXEC level 10 telnetRouter(Config)#privilege EXEC level 10 show ip access-list5 为特权模式的进入设置强壮的密码。不要采用enable password设置密码。而要采用enable secret命令设置。并且要启用Service password-encryption。Router(config)#service password-encryptionRouter(config)#enable secret6 控制对VTY的访问。如果不需要远程访问则禁止它。如果需要则一定要设置强壮的密码。由于VTY在网络的传输过程中为加密,所以需要对其进行严格的控制。如:设置强壮的密码;控制连接的并发数目;采用访问列表严格控制访问的地址;可以采用AAA设置用户的访问控制等。</P><P>三、路由器路由协议安全配置1 建议启用IP Unicast Reverse-Path Verification。它能够检查源IP地址的准确性,从而可以防止一定的IP Spooling。但是它只能在启用CEF(Cisco Express Forwarding)的路由器上使用。uRPF有三种方式,strict方式、ACL方式和loose方式。在接入路由器上实施时,对于通过单链路接入网络的用户,建议采用strict方式;对于通过多条链路接入到网络的用户,可以采用ACL方式和loose方式。在出口路由器上实施时,采用loose方式。</P><P>Strict方式:Router# config t! 启用CEFRouter(Config)# ip cef!启用Unicast Reverse-Path VerificationRouter(Config)# interface eth0/1Router(Config-if)# ip verify unicast reverse-path </P><P>ACL方式:interface pos1/0ip verify unicast reverse-path 190access-list 190 permit ip {customer network} {customer network mask} any access-list 190 deny ip any any [log] 这个功能检查每一个经过路由器的数据包的源地址,若是不符合ACL的,路由器将丢弃该数据包。Loose方式:interface pos 1/0ip ver unicast source reachable-via any这个功能检查每一个经过路由器的数据包,在路由器的路由表中若没有该数据包源IP地址的路由,路由器将丢弃该数据包。</P><P>2 启用OSPF路由协议的认证。默认的OSPF认证密码是明文传输的,建议启用MD5认证。并设置一定强度密钥(key,相对的路由器必须有相同的Key)。3 RIP协议的认证。只有RIP-V2支持,RIP-1不支持。建议启用RIP-V2。并且采用MD5认证。普通认证同样是明文传输的。4 启用passive-interface命令可以禁用一些不需要接收和转发路由信息的端口。建议对于不需要路由的端口,启用passive-interface。但是,在RIP协议是只是禁止转发路由信息,并没有禁止接收。在OSPF协议中是禁止转发和接收路由信息。5 启用访问列表过滤一些垃圾和恶意路由信息,控制网络的垃圾信息流。如:Router(Config)# access-list 10 deny 192.168.1.0 0.0.0.255Router(Config)# access-list 10 permit any ! 禁止路由器接收更新192.168.1.0网络的路由信息
Router(Config)# router ospf 100Router(Config-router)# distribute-list 10 in!禁止路由器转发传播192.168.1.0网络的路由信息Router(Config)# router ospf 100Router(Config-router)# distribute-list 10 out</P><P>四、路由器其他安全配置1 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 127.0.0.0 0.255.255.255 any Router(Config)# access-list 100 deny ip 192.168.0.0 0.0.255.255 any Router(Config)# access-list 100 deny ip 172.16.0.0 0.15.255.255 any Router(Config)# access-list 100 deny ip 10.0.0.0 0.255.255.255 any Router(Config)# access-list 100 deny ip 169.254.0.0 0.0.255.255 any Router(Config)# access-list 100 deny ip 192.0.2.0 0.0.0.255 any 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 Router(Config)# access-list 100 deny ip 204.152.64.0 0.0.2.255 any Router(Config)# access-list 100 deny ip 0.0.0.0 0.255.255.255 any Router(Config)# access-list 100 permit ip any anyRouter(Config-if)# ip access-group 100 in</P><P>2 建议采用访问列表控制流出内部网络的地址必须是属于内部网络的。(可选)如:Router(Config)# no access-list 101Router(Config)# access-list 101 permit ip 192.168.0.0 0.0.255.255 anyRouter(Config)# access-list 101 deny ip any any Router(Config)# interface eth 0/1Router(Config-if)# description “internet Ethernet”Router(Config-if)# ip address 192.168.0.254 255.255.255.0Router(Config-if)# ip access-group 101 in</P><P>其他可选项:1、 建议启用SSH,废弃掉Telnet。但只有支持并带有IPSec特征集的IOS才支持SSH。并且IOS12.0-IOS12.2仅支持SSH-V1。如下配置SSH服务的例子:Router(Config)# config tRouter(Config)# no access-list 22Router(Config)# access-list 22 permit 192.168.0.22Router(Config)# access-list deny anyRouter(Config)# username test privilege 10 ****! 设置SSH的超时间隔和尝试登录次数Router(Config)# ip ssh timeout 90Router(Config)# ip ssh anthentication-retries 2Router(Config)# line vty 0 4Router(Config-line)# access-class 22 inRouter(Config-line)# transport input sshRouter(Config-line)# login localRouter(Config-line)# exit!启用SSH服务,生成RSA密钥对。Router(Config)# crypto key generate rsaThe name for the keys will be: router.xxx 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)#</P><P>2、 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 establishedRouter(Config)# access-list 106 deny ip any any Router(Config)# interface eth 0/2Router(Config-if)# description “external Ethernet”Router(Config-if)# ip address 192.168.1.254 255.255.255.0Router(Config-if)# ip access-group 106 inB:通过TCP截取防范。(这会给路由器产生一定负载)Router(Config)# ip tcp intercept list 107Router(Config)# access-list 107 permit tcp any 192.168.0.0 0.0.0.255Router(Config)# access-list 107 deny ip any any Router(Config)# interface eth0Router(Config)# ip access-group 107 in</P><P>3、 LAND.C 进攻的防范。Router(Config)# access-list 107 deny ip host 192.168.1.254 host 192.168.1.254 Router(Config)# access-list 107 permit ip any anyRouter(Config)# interface eth 0/2Router(Config-if)# ip address 192.168.1.254 255.255.255.0Router(Config-if)# ip access-group 107 in</P><P>4、 Smurf进攻的防范。Router(Config)# access-list 108 deny ip any host 192.168.1.255 Router(Config)# access-list 108 deny ip any host 192.168.1.0 Router(Config)# access-list 108 permit ip any anyRouter(Config-if)# ip access-group 108 in</P><P>5、 ICMP协议的安全配置。对于进入ICMP流,我们要禁止ICMP协议的ECHO、Redirect、Mask request。也需要禁止TraceRoute命令的探测。对于流出的ICMP流,我们可以允许ECHO、Parameter Problem、Packet too big。还有TraceRoute命令的使用。! outbound ICMP ControlRouter(Config)# access-list 110 deny icmp any any echo Router(Config)# access-list 110 deny icmp any any redirect Router(Config)# access-list 110 deny icmp any any mask-request Router(Config)# access-list 110 permit icmp any any ! Inbound ICMP ControlRouter(Config)# access-list 111 permit icmp any any echoRouter(Config)# access-list 111 permit icmp any any Parameter-problemRouter(Config)# access-list 111 permit icmp any any packet-too-big
Router(Config)# access-list 111 permit icmp any any source-quenchRouter(Config)# access-list 111 deny icmp any any ! Outbound TraceRoute ControlRouter(Config)# access-list 112 deny udp any any range 33400 34400 ! Inbound TraceRoute ControlRouter(Config)# access-list 112 permit udp any any range 33400 34400 </P><P>6、 DDoS(Distributed Denial of Service)的防范。! The TRINOO DDoS systemRouter(Config)# access-list 113 deny tcp any any eq 27665 Router(Config)# access-list 113 deny udp any any eq 31335 Router(Config)# access-list 113 deny udp any any eq 27444 ! The Stacheldtraht DDoS system Router(Config)# access-list 113 deny tcp any any eq 16660 Router(Config)# access-list 113 deny tcp any any eq 65000 ! The TrinityV3 SystemRouter(Config)# access-list 113 deny tcp any any eq 33270 Router(Config)# access-list 113 deny tcp any any eq 39168 ! The SubSeven DDoS system and some VariantsRouter(Config)# access-list 113 deny tcp any any range 6711 6712 Router(Config)# access-list 113 deny tcp any any eq 6776 Router(Config)# access-list 113 deny tcp any any eq 6669 Router(Config)# access-list 113 deny tcp any any eq 2222 Router(Config)# access-list 113 deny tcp any any eq 7000 Router(Config)# access-list 113 permit ip any anyRouter(Config-if)# ip access-group 113 in</P><P>7、 Sql蠕虫的防范Router(Config)# access-list 114 deny udp any any eq 1434Router(Config)# access-list 114 permit ip any anyRouter(Config-if)# ip access-group 114 in</P><P>8、 减少BGP的收敛时间,保证黑客攻击后网络能尽快恢复。建议增加如下配置:(需在所有运行BGP的路由器上增加)1、在每个BGP互连的接口上,增加hold-queue 1500命令,将接口的hold-queue由默认的75增加到1500。在做此配置之前需要先检查板卡的内存,确保其free memory至少为20M。2、增加以下有关TCP的配置,增强BGP的收敛性能。ip tcp selective-ackip tcp mss 1460ip tcp window-size 65535ip tcp queuemax 50ip tcp path-mtu-discovery3、在GSR上,增加ip cef linecard ipc memory 10000命令,提高download FIB的速度。</P><P>9、 启用CAR和系统日志等来增强(略)</P><P>其他注意事项:1,及时的升级IOS软件,并且要迅速的为IOS安装补丁。2,要严格认真的为IOS作安全备份。3,要为路由器的配置文件作安全备份。4,购买UPS设备,或者至少要有冗余电源。5,要有完备的路由器的安全访问和维护记录日志。
标签: