博威---云架构决胜云计算

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1716|回复: 2

ASA5500防火墙 部分实用技术总结

[复制链接]
发表于 2008-6-1 11:21:58 | 显示全部楼层 |阅读模式
------------------------------------------------------------------------------------------------------------------
一.配置ARP Inspection
-添加静态arp条目
hostname(config)# arp outside 10.1.1.1 0009.7cbe.2100

-打开ARP Inspection
hostname(config)# arp-inspection interface_name enable [flood | no-flood]

hostname(config)# arp-inspection outside enable no-flood 丢掉所有不匹配arp包,不泛洪到其它接口。

-查看当前Arp检测设置
show arp-inspection

. 自定义mac地址表

-添加静态mac地址
mac-address-table static interface_name mac_address

-设定mac地址超时时间,默认5分钟。
hostname(config)# mac-address-table aging-time timeout_value

-禁止mac地址学习
hostname(config)# mac-learn interface_name disable

-查看mac地址表
hostname# show mac-address-table [interface_name]


三.应用QoS策略 实现QoS
QoS的作用:对延时敏感的流量不限制并提高优先级,如语音、视频等;对缺省优先级流量做限制,保证前者正常传输。


安全设备通过允许两种流量队列类型来完成QoS:一种是low-latency queue LLQ;一种是default queue。只有缺省流量要服从速率限制。


QoS会消耗安全设备大量资源,降低安全设备性能,所以QoS缺省是禁止的。


配置QoS包括以下步骤:

定义流量分类——class-map命令

为每个流量分类,关联策略和动作——policy-map命令

把策略应用到逻辑接口或物理接口——service-policy

1.定义流量分类
-创建acl,定义被策略的流量。
hostname(config)# access-list acl-name any any tcp eq port_number_1

hostname(config)# access-list acl-name any any tcp eq port_number_2

-创建class-map,匹配条件是之前定义的acl流量。

hostname(config)# class-map class_map_name
hostname(config-cmap)# match access-list acl-name

也可以匹配单个端口或一个端口范围。
hostname(config-cmap)# match port {tcp | udp} port_number
hostname(config-cmap)# match port {tcp | udp} range begin_port_number end_port_number
 楼主| 发表于 2008-6-1 11:22:14 | 显示全部楼层
2.定义policy-map策略映射,与分类映射class-map关联
hostname(config)# policy-map policy_map_name
hostname(config-pmap)# class class_map_name
-配置此分类的action动作,可以标记流量分类为优先流量或对流量分类做速率限制(二选一)。
hostname(config-pmap-c)# priority (需要在接口上启用priority-queue,见第4步)

hostname(config-pmap-c)# police [output] conform-rate [conform-burst] [conform-action [drop | transmit] [exceed-action {drop | transmit}]]

conform-rate:最大传输率,bits/second。
conform-burst:爆发发传输率,bytes/second。
conform-action:符合范围—动作drop丢弃/transmit传输,默认transmit。
exceed-action:超出范围—动作drop丢弃/transmit传输,默认drop。

例:
hostname(config)# policy-map qos
hostname(config-pmap)# class qos-office
hostname(config-pmap-c)# police output 200000 37500

3.用service-policy命令应用policy map到全局所有接口或指定接口
hostname(config-pmap-c)# service-policy policy_map_name [global | interface interface_ID]

4.使用priority-queue命令,在接口上启用优先级队列
hostname(config)# priority-queue interface_ID
hostname(config-priority-queue)#
注:vlan接口不支持优先级队列

使用queue-limit命令指定非缺省的队列尺寸(可选)
hostname(config-priority-queue)# queue-limit number-of-packets
缺省:2048个
缺省的queue-limit值是,500ms内,接口传输256字节数据包的平均数量,上限是2048个数据包。在端到端应用中,一个在网络节点中存留超过500ms的报文,会引起超时,被网络节点丢弃。

使用tx-ring-limit命令指定非缺省的传输队列尺寸(可选)
hostname(config-priority-queue)# tx-ring-limit number-of-packets
缺省:128个
缺省的tx-ring-limit值是,10ms内,接口能够转发1550字节数据包的最大数量。这保证了基于硬件的传输环对延时不超过10ms的高优先级数据包造成影响。

5.检验QoS配置
a.查看service policy配置


hostname# show service-policy police






b.查看policy map配置
hostname# show running-config policy-map





c.查看接口的priority-queue配置

hostname(config)# show running-config priority-queue test



priority-queue test



queue-limit 2048



tx-ring-limit 256






d.查看QoS策略状态

hostname# show service-policy police



Global policy:



Service-policy: global_fw_policy



Interface outside:



Service-policy: qos



Class-map: browse



police Interface outside:



cir 56000 bps, bc 10500 bytes



conformed 10065 packets, 12621510 bytes; actions: transmit



exceeded 499 packets, 625146 bytes; actions: drop



conformed 5600 bps, exceed 5016 bps



Class-map: cmap2



police Interface outside:



cir 200000 bps, bc 37500 bytes



conformed 17179 packets, 20614800 bytes; actions: transmit



exceeded 617 packets, 770718 bytes; actions: drop



conformed 198785 bps, exceed 2303 bps






e.查看QoS优先级状态

hostname# show service-policy priority



Global policy:



Service-policy: global_fw_policy



Interface outside:



Service-policy: qos



Class-map: TG1-voice



Priority:



Interface outside: aggregate drop 0, aggregate transmit 9383






f.查看QoS优先级队列状态

hostname# show priority-queue statistics test



Priority-Queue Statistics interface test



Queue Type = BE



Packets Dropped = 0



Packets Transmit = 0



Packets Enqueued = 0



Current Q Length = 0



Max Q Length = 0



Queue Type = LLQ



Packets Dropped = 0



Packets Transmit = 0



Packets Enqueued = 0



Current Q Length = 0



Max Q Length = 0
 楼主| 发表于 2008-6-1 11:22:33 | 显示全部楼层
6.配置QoS策略和优先级队列举例
access-list high-priority extended permit ip any 192.168.2.0 255.255.255.0
access-list high-priority extended permit ip 192.168.2.0 255.255.255.0 any

access-list rlimit extended permit ip any 192.168.1.0 255.255.255.0
access-list rlimit extended permit ip 192.168.1.0 255.255.255.0 any

class-map hp
match access-list high-priority

class-map limit
match access-list rlimit

policy-map qos
class hp
  priority
class limit
  set connection per-client-max 200
  police output 819000 102400
  police input 819000 102400

service-policy qos interface inside


四.防止网络攻击 — 配置连接限制和超时
以下说明如何设定tcp和udp最大连接数,embryonic(半开)最大连接数、每客户端最大连接数、连接超时、DCD(死亡连接检测)和如何禁止TCP序列随即化。


连接数和半开连接数限制可以防止DoS攻击。安全设备使用per-client限制和半开连接数限制来阻止tcp intercept(截取);防止由TCP同步报文泛洪到接口,保护内部系统不受DoS攻击。胚胎(半开)连接是在源和目的之间,没有完成握手的连接请求。


Dead connect detection(DCD)死亡连接检测是检测一个死亡连接并允许其超出生存时间,没有超期的连接仍可以传输流量。如果为class配置了DCDtimeout,匹配class的流量就会被DCD检测;如果不配置DCDtimeout,流量即使匹配了class,也不会被DCD检测。如果想要释放idle空闲时,就配置DCD,但可用的连接是持续有效的。

    当启用DCD,空闲超时行为改变。当空闲超时,DCD检测会被发送到end-hosts终端主机,决定连接的有效性。如果按预先配置好的周期、连接空闲度检测后,end-hosts响应失败,DCD检测会通知每个end-hosts;如果end-hosts有响应,代表连接有效,timeout值会更新到当前时间,idle timeout会重新计算。


   如果以存在另一个启用了TCP sequence randomization(TCP序列随机化)的in-line防火墙,TCP sequence randomization要被禁用,否则会造成数据不规则性。每个TCP连接有两个初始化序列号InitialSequenceNumber(ISNs):一个由client生成,另一个由server生成,安全设备可以随机化由client与host/server生成的ISN。至少要有一个ISN被随机生成,以便攻击者不能预测下一个ISN而不能劫持session。

配置步骤:
1.首先使用ACl确定兴趣流量,然后使用class-map做流量分类(略)。

2.添加或编辑policy-map,关联class map流量。
hostname(config)#policy-map
hostname(config-pmap)#class class_map_name


3.设置最大连接限制、启用TCP随机序列等
hostname(config-pmap-c)# set connection {conn-max number | embryonic-conn-max number |
per-client-embryonic-max number | per-client-max number | random-sequence-number {enable |

disable}}


4.设置TCP连接超时、半开超时、半闭超时和DCD检测超时

hostname(config-pmap-c)# set connection timeout {tcp <value> [reset]] [half-close <value>]

[embryonic <value>] [dcd [<retry-interval> [max-retries]]]}


half-close和tcp超时取值范围是0:5:0到1192:59:59,hh:mm:ss格式,缺省half-close值是0:10:0秒,TCP值是1:0:0。如果设值为0,表示永不超时。


embryonic <value>半开超时取值范围是0:0:5到1192:59:59,hh:mm:ss格式,缺省是0:0:30秒。如果设值为0,表示永不超时。


dcd <retry-interval>dcd检测尝试周期格式是hh:mm:ss(检测一次),范围是1秒到24小时。缺省值是15秒。

dcd <max-retries>dcd检测失败连续尝试次数,范围是1到255次,缺省5次。


5.应用service-policy策略到全局或某个接口

hostname(config)# service-policy policymap_name {global | interface interface_name}
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|boway Inc. ( 冀ICP备10011147号 )

GMT+8, 2024-11-24 06:44 , Processed in 0.099037 second(s), 17 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表