岁月联盟 · 中国技术网 本站主页 | 安全认证 | 用户服务 | 技术论坛
新闻快报 | 法律法规 | 新手学堂 | 黑客特区 | 操作系统 | 安全防范 | 程序语言 | 数 据 库 | 防 火 墙 | 交换路由 | 考试认证
系统集成 | 存储备份 | 协议分析 | 协议大全 | RFC专题 | FTP服务器 | 解决方案 | 问题解答 | 图库资料 | 软件下载 | 教程下载
  您现在的位置: 岁月联盟 >> 路由交换 >> 路由基础 >> 路由交换正文
CISCO IOS里配置CBAC
作者:佚名 文章来源:本站整理 点击数: 更新时间:2006-3-26 22:06:43
 

CISCO路由器的access-list只能检查网络层或者传输层的数据包,而CBAC能够智能过滤基于应用层的(如FTP连接信息)TCP和UDP的sessi on;CBAC能够在firewall access-list 打开一个临时的通道给起源于内部网络向外的连接,同时检查内外两个方向的sessions。


    第一步,CBAC用timeout 和threshold值来管理会话,配置判断是否在会话还未完全建立的时候终止连接。这些参数全局性地应用于所有会话。具有firewall feature的cisco router12.0以上版本的IOS缺省是起了IP INSPECT 抵御DoS进攻的。当half-open会话数量大到一定的程度往往意味着正在有DOS攻击发生或某人正在做端口扫描,CBAC既监测half-open会话总数也监测会话企图建立的速率。以下是缺省配置:
    HpXg_1#sh ip inspect all
    Session audit trail is disabled(相关命令是ip inspect audit trail,是用来打开自动跟踪审计功能并将信息传送到console口,缺省是disabled.)
    Session alert is enabled
    one-minute thresholds are [400:500] connections(相关命令是ip inspect one-minute high 500和ip inspect one-minute low 400,是将引起或导致路由器开始或停止删除half-open会话的新增未建立会话的速率,即每分钟500/400个half-open会话)
     max-incomplete sessions thresholds are [400:500](相关命令是ip inspectmax-incomplete high 500,表示将引起路由器开始删除half-open会话的已经存在的half-open会话数500个;ip inspect max-incomplete low 400表示将导致路由器开始停止删除half-open会话的已经存在的half-open会话数)
     max-incomplete tcp connections per host is 50. Block-time 0 minute.(相关命令:ip inspect tcp max-incomplete host 50 block-time 0表示将引起路由器开始丢弃到同一目的主机地址的超过50个的half-open会话。如果block-time值为0表示到某个目的主机的每条连接请求,C BAC会删除到该主机的最老的已存在的half-open会话,并让该SYN包通过;如果block-time值大于0表示CBAC将删除到该目的主机的所有已存在的h alf-open连接,并阻拦所有新的连接请求直到block-time值超时)。
     tcp synwait-time is 30 sec(ip inspect tcp synwait-time 30:表示路由器在阻断会话前等待TCP会话达到连接建立状态的时间)
     tcp finwait-time is 5 sec(ip inspect tcp finwait-time 5:表示防火墙检测到一个FIN标志后仍继续管理TCP会话的时间长度)
     tcp idle-time is 3600 sec(ip inspect tcp idle-time 3600:在没有TCP连接后仍继续管理TCP会话的时间长度)
     udp idle-time is 30 sec(ip inspect udp idle-time 30:在UDP会话停止后仍继续管理UDP会话信息的时间长度)
      dns-timeout is 5 sec(ip inspect dns-timeout 5:DNS名字查询停止后仍继续被管理的时间)
    设置timeout值可以通过丢弃超过时限的会话来有效阻止DoS攻击释放系统资源,设置threshold值可以通过限制half-open会话的数量来阻止D oS攻击。

    CBAC提供三种threshold值来抵御DOS攻击:(1)、最大half-open 的TCP或UDP会话的数量。(2)、基于时间的half-open会话数量。(3)、每个host可以打开的TCP half-open会话的数量。对于超过threshold值的连接,CBAC会初始化旧的half-open连接,释放资源接受新的要求同步的数据包。


    第二步:配置access list
  access-list 101 permit icmp any any echo
  access-list 101 permit icmp any any echo-reply
  access-list 101 permit icmp any any unreachable
  access-list 101 permit icmp any any time-exceeded
  access-list 101 permit icmp any any packet-too-big
  access-list 101 permit icmp any any traceroute(以上命令允许ping包通过,主要用来排错,如果没有必要上述命令可以不做)
  access-list 101 permit any any eq smtp(允许在邮件服务器上的安全验证)
  access-list 101 deny ip any any log(CBAC要求禁止其他所有进入的ip包)


    第三步:根据实际环境定义一个检查规则。
  ip inspect name CBAC fragment maximum 256 timeout 1 (此命令12.1以后的版本出现,防止分段攻击)
  ip inspect name CBAC smtp
  ip inspect name CBAC ftp
  ip inspect name CBAC http
  ip inspect name CBAC tcp (进入的数据包必须与先前流出的数据包有相同的源/目的地址和端口号(源和目的对调),否则就被丢弃)
  ip inspect name CBAC udp timeout 5(如果配置了timeout值,那么应答数据包是在最后的UDP请求包被送出后的预定时间范围内收到的,就被允许通过防火墙返回)


    第四步:把检查规则定义到一个接口上。
  interface BRI0/0
  ip address negotiated
  ip access-group 101 in
  ip nat outside
  ip inspect CBAC out

    做完以上配置后,实际运行中路由器显示的log如下:
  04:20:27: %FW-6-SESS_AUDIT_TRAIL: http session initiator (172.16.18.1:1426) sent 656 bytes -- responder (202.108.36.156:80) sent 30740 bytes
  04:20:39: %SEC-6-IPACCESSLOGP: list 101 denied tcp 202.104.128.164(2933) -> 202.104.47.135(80), 1 packet
  04:20:48: %SEC-6-IPACCESSLOGP: list 101 denied tcp 64.4.13.87(1863) -> 202.104.47.135(1026), 1 packet
  04:22:52: %SEC-6-IPACCESSLOGP: list 101 denied tcp 202.104.128.164(2933) -> 202.104.47.135(80), 1 packet
  04:23:03: %FW-6-SESS_AUDIT_TRAIL: tcp session initiator (172.16.18.1:1433) sent 77 bytes -- responder (202.108.44.205:110) sent 45379 bytes
  04:23:09: %FW-6-SESS_AUDIT_TRAIL: tcp session initiator (172.16.18.1:1435) sent 61 bytes -- responder (202.104.32.234:110) sent 1056 bytes
  04:23:22: %FW-6-SESS_AUDIT_TRAIL: udp session initiator (172.16.18.1:1431) sent 29 bytes -- responder (202.96.128.68:53) sent 240 bytes
  04:23:35: %SEC-6-IPACCESSLOGP: list 101 denied tcp 202.104.180.199(1262) -> 202.104.47.135(80)!
    最后,可以用debug ip inspect detail来调试CBAC。


  • 上一个路由交换:
  • 下一个路由交换:
  •  
     最新图文
     热门文章
     推荐文章
    关于我们 | 发展历程 | 网站地图 | 广告服务 | 招贤纳士 | 战略合作 | 友情链接 | 著作声明 | 联系我们
    Copyright © 2002-2006 SYUE All rights reserved.
    E_mail:WebSyue@163.Com 皖ICP备05004589号
    在此特别感谢 “中国·华夏新科技” 提供CDN技术支持,祝他们越办越好