[转贴]设置Cisco路由器防止分布式D.O.S攻击手段
chinamoon:<br>使用Cisco路由器防攻击方式中,这篇文章讲得比较好.当年考实验的时候,就考了防黑客攻击的路由器设置.<br><br>1、使用 "ip verify unicast reverse-path interface" 命令 <br>这个特征检查发送到路由器的每一个包。如果一个包的源IP地址在CEF tables里面没有回指向这个包到达的接口的路由,则路由器将取消这个包。(注: CEF=Cisco express forwarding) <br>RPF=Reverse Path Forwarding(反向路径转送) <br>单目标反向路径传送(Unicast RPF)设置可以防止针对ISP的SMURF attack以及类似的基于伪源地址技术的攻击。这将保护ISP的网络和客户。要启动Unicast RPF,可以通过在路由器上启动"CEF switching"或者"CEF distributed switching"的功能来实现。在这里,不需要为"CEF switch"配置输入的网络接口。当路由器上的CEF特征运行的时候,单个的网络接口能被配置成相应的switching模式。RPF是为路由器上的网络接口和子接口等输入端设计的功能,用于处理从路由器上接收的报文。 <br>注:Unicast与 multicast和broadcast相反,是对单一目标的传送方式。 <br>启动CEF功能是十分重要的,如果不启动CEF,则RPF也不能正常运行。在Cisco IOS 11.2和11.3的Cisco操作系统版本中是不支持的。对于12.0或者以上的版本,只要支持CEF,就支持 Unicast RPF,包括AS5800。所以,在AS5800的PSTN/ISDN的接口上可以配置 Unicast RPF的特性。 <br><br><br>2、通过access control list(访问控制表)过滤所有的RFC1918地址空间 <br>Filter all RFC1918 address space using access control lists. <br>请参考下面的ACL(访问控制表)例子: <br><br>interface xy <br>ip access-group 101 in <br>access-list 101 deny ip 10.0.0.0 0.255.255.255 any <br>access-list 101 deny ip 192.168.0.0 0.0.255.255 any <br>access-list 101 deny ip 172.16.0.0 0.15.255.255 any <br>access-list 101 permit ip any any <br>ACL=Access Control Lists---路由器的访问控制表 <br><br>3、通过配置ACL(访问控制表)实施进出报文过滤 <br>(请参考RFC2267 ) <br>请看下面的网络结构: <br><br>{ ISP 中心 } -- ISP 边界路由器 -- 客户边界路由器 -- { 客户网络 } <br><br>在这里,ISP的边界路由器应该只接受源地址来自客户网络的通信,客户网络应该只接受来自允许的源地址的通信。 <br>下面的例子是一台ISP的边界路由器的访问控制表(ACL)范例: <br><br>access-list 190 permit ip {customer network} {customer network mask} any <br>access-list 190 deny ip any any <br><br>interface {ingress interface} {interface #} <br>ip access-group 190 in <br><br>下面的例子是客户边界路由器的ACL范例: <br><br>access-list 187 deny ip {customer network} {customer network mask} any <br>access-list 187 permit ip any any <br><br>access-list 188 permit ip {customer network} {customer network mask} any <br>access-list 188 deny ip any any <br><br>interface {egress interface} {interface #} <br>ip access-group 187 in <br>ip access-group 188 out <br><br><br>如果打开Cisco Express Forwarding (CEF)的功能,可以有效地缩短ACL(访问控制表)的长度,同时启动Unicast RPF(Unicast reverse path forwarding)将有效地改善路由器的性能。在路由器上总体地启动CEF,其下接口的CEF特性也会被启动。 <br><br><br>4、通过"Control Access Rate"为ICMP报文设置流率限制 <br>请参考下面的例子: <br><br>interface xy <br>rate-limit output access-group 2020 3000000 512000 786000 conform-action transmit exceed-action drop <br><br>access-list 2020 permit icmp any any echo-reply <br>更多的信息请参考: IOS Essential Features. <br><br>5、为 SYN报文设置流率限制 <br>请参考下面的例子: <br><br>interface {int} <br><br>rate-limit output access-group 153 45000000 100000 100000 conform-action <br>transmit exceed-action drop <br>rate-limit output access-group 152 1000000 100000 100000 conform-action <br>transmit exceed-action drop <br><br>access-list 152 permit tcp any host eq www <br>access-list 153 permit tcp any host eq www established <br><br>在上面的例子红色带下划线的地方是需要替换的: <br>将 45000000 替换为 maximal link bandwidth的值(最大链接带宽) <br>将 1000000 替换为一个新值,这个值介于 SYN flood 流率的 30%到50%之间。 <br>将 burst normal和 burst max设置为正确的值 <br>注意,如果将burst rate设置为大于30%,很多合法的SYN报文也将被取消。作为设置burst rate的参考,可以使用"show interfaces rate-limit"命令来查看正常与过度的rate值。在不影响正常工作的情况下限制SYN到最小。建议在正常状态的时候仔细评估一下SYN报文的平均流量,用这个值作为限制值的参考。 <br><br>如果一个主机遭受<SYN攻击,可以考虑在那台主机上安装一个IP过滤的程序,例如一个叫"IP filter"的软件。 <br><br>6、搜集准备证据,与信息安全监察部门联系 <br>安装入侵检测系统或者协议分析软件,捕获报文进行分析。建议使用具有高性能的Pentium处理器的Sun工作站或者Linux机器对报文进行监视。 <br>例如可以使用有名的tcpdump或者snoop包捕获工具: <br><br>tcpdump -i interface -s 1500 -w capture_file <br>snoop -d interface -o capture_file -s 1500 <br><br>在上面的例子中MTU的size是1500。 <br>保存上面这些监视程序的日志作为证据<br> <br>
页:
[1]