本文讨论了华为NE系列路由器控制平面的保护方面。 使用软件:VRP V800R008给出了NE40e的示例。 在其他类型的路由器(例如NE5k)上,以及使用不同版本的软件时,配置可能会略有不同。
有关此问题的更详细研究,我还可以使自己熟悉RFC 6192(保护路由器控制平面)。
在VRP中,有多种方法可以自动诊断和保护路由器的控制平面。 但是,鉴于文档的稀缺性和不透明性,我建议您仍然遵循传统的保护方法:为必要的协议和服务创建白名单,并关闭其余流量。
主要政策部分如下:
cpu-defend policy 1 process-sequence whitelist user-defined-flow blacklist cp-acl ip-pool enable whitelist disable blacklist acl 3900 blacklist ipv6 acl 3950 application-apperceive disable ip urpf loose
进程顺序决定了策略的顺序:白名单(在本例中为关闭),用户定义流,黑名单(IPv4规则3900,IPv6规则3950)。
考虑到我们将自己确定允许的协议,其余的流量将被黑名单过滤-无需进行应用感知分析。
URPf (单播反向路径转发)机制以保守的宽松级别打开 。
IPv4和IPv6的黑名单如下:
acl number 3900 description --- ACL For IPv4 Discard --- rule 5 deny tcp rule 10 deny udp rule 15 deny ip # acl ipv6 number 3950 description --- ACL For IPv6 Discard --- rule 5 deny tcp rule 10 deny udp rule 15 deny ipv6
该策略必须应用于每个插槽:
slot 1 cpu-defend-policy 1 # slot 2 cpu-defend-policy 1 …
默认情况下,启用以下保护机制:
udp-packet-defend enable fragment-flood enable abnormal-packet-defend enable tcpsyn-flood enable attack-source-trace enable
建议您关闭ma-defend部分中所有未使用的协议和服务。 可以全局和按插槽启用此选项。 例如:
system-view ma-defend global-policy protocol OSPF deny protocol RIP deny
或
system-view ma-defend slot-policy 1 protocol … deny
下面介绍用户定义的策略。 下表总结了一般规则。 作为示例,给出了速度/优先级的值,但它们并不声称是“最终真理”。 用户定义策略中的最大元素数为64。
交通类型 | 速度 | 优先权 | 规则编号 |
---|
BGP协议 | 1 Mb /秒 | 高 | 3901 |
低密度脂蛋白 | 1 Mb /秒 | 高 | 3902 |
IS-IS | \ | \ | \ |
VRRP | 1 Mb /秒 | 高 | 3904 |
Bfd | 1 Mb /秒 | 高 | 3905 |
Mcast | 1 Mb /秒 | 高 | 3906 |
SSH | 512 Kb /秒 | 中间的 | 3907 |
的FTP | 5 Mb /秒 | 低位 | 3908 |
域名解析 | 512 Kb /秒 | 低位 | 3909 |
SNMP协议 | 1 Mb /秒 | 中间的 | 3910 |
TACACS + | 1 Mb /秒 | 低位 | 3911 |
NTP | 512 Kb /秒 | 低位 | 3912 |
ICMP,跟踪,lsp-ping | 512 Kb /秒 | 低位 | 3913 |
接下来,考虑用于相应协议/服务的ACL过滤器。
3901. BGP协议。
过滤BGP的规则可能看起来很简单:
acl number 3901 rule permit tcp destination-port eq bgp rule permit tcp source-port eq bgp
或者,对于每个盛宴分别:
acl ip-pool BGP-Peers ip address 10.1.1.1 0.0.0.0 acl number 3901 rule permit tcp source-pool BGP-Peers 0 destination-port eq bgp rule permit tcp source-pool BGP-Peers 0 source-port eq bgp
3902. LDP协议。
rule 5 permit tcp source-pool Lo0_P2P destination-port eq 646 rule 10 permit tcp source-pool Lo0_P2P source-port eq 646 rule 15 permit udp source-pool Lo0_P2P destination-port eq 646 rule 20 permit udp source-pool Lo0_P2P source-port eq 646
3904. VRRP
acl ip-pool VRRP_Peers ip address 10.1.1.1 0.0.0.0 acl number 3904 rule permit 112 source-pool VRRP_Peers
3905. BFD
acl number 3343 rule permit udp source-pool Lo0_P2P destination-port eq 3784 rule permit udp source-pool Lo0_P2P source-port eq 3784
3906.所有MCAST(IGMP,PIM,MSDP)
acl number 3906 rule permit 103 rule permit igmp rule permit udp destination-port eq 639 rule permit udp source-port eq 639 rule permit tcp destination-port eq 639 rule permit tcp source-port eq 639
3907。SSH
acl number 3907 description ### SSH access ### rule 5 permit tcp source-pool MGMT source-port eq 22 rule 10 permit tcp source-pool MGMT destination-port eq 22 rule 15 permit tcp source-pool MGMT destination-port eq 830
3908。FTP。 FTP数据
acl port-pool ftp eq 20 eq 21 acl number 3908 rule 10 permit tcp source-pool MGMT source-port-pool ftp rule 15 permit tcp source-pool MGMT destination-port-pool ftp
3909。DNS
acl ip-pool DNS ip address 1.1.1.1 0.0.0.0 ip address 8.8.8.8 0.0.0.0 acl number 3909 rule 5 permit udp source-pool DNS source-port eq dns
3910. SNMP
acl number 3909 rule 5 permit udp source-pool SNMP source-port eq snmp rule 10 permit udp source-pool SNMP destination-port eq snmp
3911. TACACS +
acl number 3911 rule 5 permit tcp source-pool TACACS source-port eq tacacs rule 10 permit udp source-pool TACACS source-port eq tacacs-ds
3912. NTP
acl number 3911 rule 5 permit udp source-pool NTP source-port eq ntp rule 10 permit udp source-pool NTP destination-port eq ntp
3913. ICMP
acl number 3342 rule permit icmp icmp-type echo rule permit icmp icmp-type echo-reply rule permit icmp icmp-type ttl-exceeded rule permit icmp icmp-type port-unreachable rule permit icmp icmp-type Fragmentneed-DFset rule permit icmp rule permit udp destination-port range 33434 33678 rule permit udp destination-port eq 3503
3951。用于IPv6的BGP
acl ipv6 number 3951 rule 5 permit tcp destination-port eq bgp
3952. ICMPv6
acl ipv6 number 3952 rule 30 permit icmpv6 rule 35 permit udp destination-port range 33434 33678
要使用工作表,您需要将它们绑定到cpu-defend策略,如下所示:
cpu-defend policy 1 ... user-defined-flow 1 acl 3901 user-defined-flow 2 acl 3902 user-defined-flow 4 acl 3904 user-defined-flow 5 acl 3905 user-defined-flow 6 acl 3906 user-defined-flow 7 acl 3907 user-defined-flow 8 acl 3908 user-defined-flow 9 acl 3909 user-defined-flow 10 acl 3910 user-defined-flow 11 acl 3911 user-defined-flow 12 acl 3912 user-defined-flow 13 acl 3913 user-defined-flow 51 ipv6 acl 3951 user-defined-flow 52 ipv6 acl 3952 car blacklist cir 0 cbs 0 car user-defined-flow 1 cir 1000 car user-defined-flow 2 cir 1000 car user-defined-flow 4 cir 1000 car user-defined-flow 5 cir 1000 car user-defined-flow 6 cir 1000 car user-defined-flow 7 cir 512 car user-defined-flow 8 cir 5000 car user-defined-flow 9 cir 512 car user-defined-flow 10 cir 1000 car user-defined-flow 11 cir 1000 car user-defined-flow 12 cir 512 car user-defined-flow 13 cir 512 car user-defined-flow 51 cir 10000 car user-defined-flow 52 cir 512 priority user-defined-flow 1 high priority user-defined-flow 2 high priority user-defined-flow 4 high priority user-defined-flow 5 high priority user-defined-flow 6 high priority user-defined-flow 7 middle priority user-defined-flow 8 low priority user-defined-flow 9 low priority user-defined-flow 10 middle priority user-defined-flow 11 low priority user-defined-flow 12 low priority user-defined-flow 13 low priority user-defined-flow 51 high priority user-defined-flow 52 low
要设置垃圾桶警报,可以使用以下功能:
cpu-defend policy 1 ... alarm drop-rate user-defined-flow 7 threshold 100 interval 60
阈值以包为单位设置,间隔以秒为单位。
有关CoPP过滤器操作的统计信息可以在显示cpu-defend部分中找到...
进行设置后,还值得扫描路由器。
最后,我想指出的是,华为(像任何现代厂商一样)提供了所有必要的方法来保护其路由器的控制平面。 关于发现的漏洞的定期出现的消息表明,不应忽略这些工具。