成都创新互联网站制作重庆分公司

ASAModularPolicyFramework_04-创新互联

MPF

创新互联服务项目包括恩平网站建设、恩平网站制作、恩平网页制作以及恩平网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,恩平网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到恩平省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!

基本MPF架构介绍

 class-map:什么流量,对流分类

    3-4层:源目ip,协议号,端口

    5-7层:应用层http ftp telnet

 policy-map:添加多个类,为每个类做什么动作

   3-4层:较简单

    5-7层:限速,屏蔽关键字,比较复杂

 service-policy:在哪里 匹配哪个class 执行哪个policy

class-map

ASA(config)# class-map 3-4  ASA(config-cmap)# match ? mpf-class-map mode commands/options:   access-list                 Match an Access List   any                         Match any packet   default-inspection-traffic  Match default inspection traffic:                                ctiqbe----tcp--2748      dns-------udp--53                                      ftp-------tcp--21        gtp-------udp--2123,3386                               h423-h325-tcp--1720      h423-ras--udp--1718-1719                               http------tcp--80        icmp------icmp                                         ils-------tcp--389       ip-options-----rsvp                                    mgcp------udp--2427,2727 netbios---udp--137-138                                 radius-acct----udp--1646 rpc-------udp--111                                     rsh-------tcp--514       rtsp------tcp--554                                     sip-------tcp--5060      sip-------udp--5060                                    skinny----tcp--2000      smtp------tcp--25                                      sqlnet----tcp--1521      tftp------udp--69                                      waas------tcp--1-65535   xdmcp-----udp--177         dscp                        Match IP DSCP (DiffServ CodePoints)    //ip包中tos里的字段   flow                        Flow based Policy            //定义流   port                        Match TCP/UDP port(s)           precedence                  Match IP precedence   rtp                         Match RTP port numbers     //语音流量(ip udp rtp video/audio)   tunnel-group                Match a Tunnel Group      //IPSec的tunnel里每条流(流由上面的flow 定义)的流量

flow与tunnel-group示例:将tunnel里的每条流(以不同目的ip区分流)限速56k

ASA Modular Policy Framework_04

policy-map

为每一个流量定义行为

    • 发送流量到AIP-SSM    //送往IPS 过滤检查是否有危险代码

    • 发送流量到CSC-SSM     //送往防病毒模块 查看是否有病毒

    • 发送Netflow信息        //将匹配的流量信息发到网管

    • Qos对流量优先处理        //优先级

    • Qos对流量进行police或shape处理    //限速

    • 运用层监控

    • 配置高级连接设置        //大连接数,半开连接等等

全局和每一个接口只能配置一个policy map

在一个policy map中,行为处理的顺序如下。
  QoS 入方向流量的policing
  高级连接设置
  CSC-SSM
  运用层监控
  AIP-SSM
  QoS 出方向流量的policing
  QoS 优先级队列

  QoS 流量shaping

Service Policy
1.运用policy map到一个接口,或者全局运用到所有接口
2.策略的方向基于policy map的运用
   每接口:归类和行为被运用到两个方向上
   全局:归类和行为被运用到所有接口的入方向

   policing(出入都可), shaping(出)和priority(出)例外

MPF对网管流量的控制

1.网络策略仅仅只控制穿越的流量

2.使用管理策略来控制抵达ASA的流量
3.只有一部分匹配功能可以使用
4.只有一部分行为可以使用

class-map

ASA(config)# class-map type management Management_Telnet_Traffic ASA(config-cmap)# match port tcp eq telnet ASA(config-cmap)# exit

policy-map

ASA(config)# policy-map inside       //这个inside是个名字,由于一个接口只能用一个policy,取名方便识别 ASA(config-pmap)# class Management_Telnet_Traffic        //添加一个类 ASA(config-pmap-c)# set connection conn-max 1 embryonic-conn-max 0 //动作:大连接数为1,半连接数无限制 ASA(config-pmap-c)# exit

service-policy

ASA(config)# service-policy inside interface inside     //运用到接口:第一个inside是名字 ASA(config)# telnet 0 0 inside         //开启Telnet ASA(config)# passwd cisco                //远程登录需要密码

MPF基本状态监控特性

ASA默认只对TCP/UDP流量进行状态监控,ICMP ping和ESP默认禁止

icmp:直接在默认全局policy里的class中加个inspect icmp

policy-map global_policy  class inspection_default   inspect icmp

esp:ipsec分协商和加密,协商部分是UDP故能生成cnnection 表,但加密部分不能生成表项,故出去了回不来

access-list ESP extended permit esp any any class-map ESP   match access-list ESP    policy-map global_policy   class ESP     inspect ipsec-pass-thru

ASA会话超时

如果出现TCP连接关闭事件,或闲置超时事件,会话表项会被删除

等待SYN/ACK   超时时间30s  

半关闭     10分钟    tcp 是双向的,单向存在的时间

闲置时间    1小时    没数据包的连接 idle时间

Telnet的connection表项超时时间DCD

access-list global_mpc_1 extended permit tcp 10.1.1.0   255.255.255.0 host 202.100.1.1 eq telnet    class-map Client-to-Server-Telnet   match access-list global_mpc_1    policy-map global_policy   class Client-to-Server-Telnet     set connection timeout idle 4:00:00 reset dcd 0:15:00 5     //超时后会清除connection表项  reset:清除表后还会向两边发送reset报文,使得两端也清除连接信息     // dcd(探测邻居存活):每15分钟检测一次,5次超时则清除

ASA默认对穿越流量不减TTL,也可激活

(顺便提下,win的tracert发得是icmp报文,而路由器traceroute发的是UDP报文)

class-map Traceroute   match access-list Traceroute        //acl抓包看看端口33434,自己对着写,记得放行流量 policy-map global_policy   class Traceroute     set connection decrement-ttl    //ttl减一

    穿越ASA 别人写的就是好..

MPF TCP规范化

ASA对IP分片的处理

1.缓存一个数据包的所有分片,直到所有分片被收齐。
2.确认分片被适当的切分。
3.重组装IP分片,并对其进行TCP规范化和运用层监控处理。

4.发送分片就和收到它们的时候一样

ASA(config)# fragment ? configure mode commands/options:   chain       Configure maximum number of elements in a fragment set //一个包最多 多少个分片   reassembly  Configure reassembly option   size        Configure maximum number of blocks in database  //每个接口最多缓存1000个分片   timeout     Configure number of seconds to assemble a fragment set //一个包多少S内没有收到全部分片完成重组。则全部丢弃 ASA(config)# fragment size 1000 Outside  ASA(config)# fragment chain 24 Outside  ASA(config)# fragment timeout 5 Outside

MPF TCP规范化

1.确认遵循TCP协议,并且阻止逃避***
2.默认情况下,只是允许最小的TCP特性(option字段全部置1)
3.执行TCP初始化序列号扰乱以保护内部主机(防止会话挟持)

4.为上层监控提供对字节流的重组装

这会导致异步链路的一些链接建立失败(如tcp的握手):

ASA Modular Policy Framework_04

解决:采用TCP状态化旁路(TCP Bypass

  TCP Bypass用MPF归类特定流量,以访问控制列表对待这些流量,同时也关闭了ASA对这些流量的三层监控,认证代理和TCP规范化处理,故只能旁路可信流量

实验:TCP Bypass

ASA Modular Policy Framework_04

inside的lo0访问DMZ的lo0口,走的是ospf过防火墙

DMZ(config)#ip route 7.7.7.7 255.255.255.255 10.0.0.72    //在DMZ上添加指向inside的lo0静态路由

当inside的lo0 Telnet DMZ的lo0时,去的包过防火墙而回来的包走的10.0.0.0网段,形成异步链路

Telnet默认是不通的:ASA Modular Policy Framework_04

但可以ping,不受影响

ASA(config)# access-list tcpbypass permit tcp host 7.7.7.7 host 2.2.2.2 eq tel ASA(config)# class-map tcpbypass  ASA(config-cmap)# match access-list tcpbypass ASA(config-cmap)# exit ASA(config)# policy-map tcpbypass ASA(config-pmap)# class tcpbypass ASA(config-pmap-c)# set connection advanced-options tcp-state-bypass ASA(config-pmap-c)# exit ASA(config)# service-policy tcpbypass interface inside

ASA Modular Policy Framework_04

ASA(config)# show conn detail  Flags: B - initial SYN from outside, b - TCP state-bypass or nailed, TCP DMZ: 2.2.2.2/23 inside: 7.7.7.7/55245,     flags b , idle 3m47s, uptime 3m50s, timeout 1h0m, bytes 31

这种connection表项无法正常检测到链路是否终结,只能等超时清除

实验:BGP 穿越ASA

*Mar  1 01:08:35.219: %TCP-6-BADAUTH: No MD5 digest from 2.2.2.2(179) to 7.7.7.7(15325) (RST //原由:经过bgp md5(tcp头部+密码+伪首部->hash)散列后的值会在bgp的报文中添加option为tcp的字段,type类型为19      而ASA会将tcp type=19 的option字段全改成1了,并

MPF支持动态运用协议

Cisco ASA默认嗅探很多动态协议(FTP,HTTP),只需ACL放行初始化会话,ASA会自动放行后续会话

FTP:

 高优先级 以主动模式访问 低优先级的FTP时

  第一信道:由高优先级先发起的,会建立connection会话,也能回来

  第二信道:由低先发起,但ASA已经嗅探到第一信道的port数据,根据port建立了对应的connection会话,所以第二信道能通

  但当FTP的端口不是21

  第一信道:高到低能建立conn

  第二信道:由于端口不是21,ASA并不知道是FTP,没有记录port信息,也就没有conn表项,低到高,通不了

class-map New-FTP     match port tcp eq 2121    //FTP自定义端口 policy-map global_policy     class New-FTP         inspect ftp

  被动发起都是client,怎么都能通,除非client在低优先级,那么acl放行第一信道即可,如果不是21,第二信道也要放

ASA Modular Policy Framework_04ASA Modular Policy Framework_04

以下是做了PAT的FTP,ASA会修改port数据,ip,端口发给外网,自动建立conn和PAT表项

ASA Modular Policy Framework_04

ASA Modular Policy Framework_04ASA Modular Policy Framework_04

MPF运用层策略

DNS..............

配置MPF URL过滤

ASA Modular Policy Framework_04

定义URL过滤服务器: url-server (DMZ) vendor websense host 192.168.1.100 定义需要过滤的流量: filter url http 10.1.1.0 255.255.255.0 0.0.0.0 0.0.0.0 allow //allow表示服务器挂了就放行配置正则表达式: regex Shrun "sh/run" regex WWWCisco www.cisco.com 配置运用层监控类型的Class-Map: class-map type inspect http match-all Match-HTTP-Class match request header host regex WWWCisco match not request uri regex Shrun 配置运用层监控类型的Policy-Map: policy-map type inspect http Control-HTTP parameters protocol-violation action reset class Match-HTTP-Class reset 调用运用层监控类型的Policy-Map: policy-map global_policy class inspection_default inspect http Control-HTTP

ASA Modular Policy Framework_04

配置ESMTP运用层控制
配置运用层监控类型的Policy-Map: policy-map type inspect esmtp Control-ESMTP match header length gt 4096 reset 调用运用层监控类型的Policy-Map: policy-map global_policy class inspection_default no inspect esmtp inspect esmtp Control-ESMTP

MPF连接控制与TCP Intercept

access-list global_mpc extended permit tcp any host   202.100.1.1 eq www class-map Connection-Control   match access-list global_mpc policy-map global_policy   class Connection-Control     set connection conn-max 1000 embryonic-conn-max 600 per-client-max 10 per-client-embryonic-max 5

MPF实现QoS

有两种方式实现QoS:

    Policing:丢弃超时速率限制的流量;支持对一个接口出入流量配置;丢弃会造成TCP重传

    Shaping:缓存超过限制的流量;只支持对一个接口的出流量配置;缓存会减少TCP重传,但会造成抖动

    Priority Queuing:优先队列

Policing

配置HTTP限速     内部接口入方向 class-map HTTP-Traffic   match port tcp eq www policy-map Inside-policy   class HTTP-Traffic     police input 1000000 1500 service-policy Inside-policy interface Inside 配置ICMP限速     外部接口出方向 access-list Outside_mpc extended permit icmp any any class-map ICMP-Traffic   match access-list Outside_mpc policy-map Outside-policy   class ICMP-Traffic     police output 56000 1500 service-policy Outside-policy interface Outside

Shaping
出接口 policy-map Outside-policy   class class-default     shape average 10000000 service-policy Outside-policy interface Outside

Priority Queuing

1.Cisco ASA默认为一个接口收到的流量执行best‐effort队列
2.best‐effort队列是一个基于FIFO机制的服务
3.应该在一个接口为那些延时敏感的流量,例如:语音流量创建一个优
先级队列。
4.Cisco ASA在移动数据包到best‐effort队列之前,首先腾空优先级队列
5.使用Cisco MPF配置优先级队列

priority-queue Outside   tx-ring-limit 128 (硬件队列 大512)        //只有当硬件队列满了,设备发生拥塞了,才会使用到软件队列   queue-limit 2048 (软件队列 大2048)        //此队列机制都有各自的调度机制和丢弃机制 class-map VoIP   match dscp ef            //通过dscp字段是否为ef判断语言 policy-map Outside-policy   class VoIP     priority service-policy Outside-policy interface Outside

另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


文章名称:ASAModularPolicyFramework_04-创新互联
当前地址:http://cxhlcq.com/article/ceshio.html

其他资讯

在线咨询

微信咨询

电话咨询

028-86922220(工作日)

18980820575(7×24)

提交需求

返回顶部