20-ASPF配置
本章節下載: 20-ASPF配置 (256.31 KB)
目 錄
![]()
· WX1800H係列、WX2500H係列和WX3000H係列不支持slot參數。
· 本文所指的防火牆可以代表應用了ASPF策略的無線控製器產品。
設備各款型對於本節所描述的特性支持情況有所不同,詳細差異信息如下:
|
係列 |
型號 |
產品代碼 |
特性 |
描述 |
|
WX1800H係列 |
WX1804H |
EWP-WX1804H-PWR-CN |
ASPF |
支持 |
|
WX2500H係列 |
WX2510H WX2510H-F WX2540H WX2540H-F WX2560H |
EWP-WX2510H-PWR EWP-WX2510H-F-PWR EWP-WX2540H EWP-WX2540H-F EWP-WX2560H |
支持 |
|
|
WX3000H係列 |
WX3010H WX3010H-X WX3010H-L WX3024H WX3024H-L WX3024H-F |
EWP-WX3010H EWP-WX3010H-X-PWR EWP-WX3010H-L-PWR EWP-WX3024H EWP-WX3024H-L-PWR EWP-WX3024H-F |
不支持 |
|
|
WX3500H係列 |
WX3508H WX3510H WX3520H WX3520H-F WX3540H |
EWP-WX3508H EWP-WX3510H EWP-WX3520H EWP-WX3520H-F EWP-WX3540H |
支持 |
|
|
WX5500E係列 |
WX5510E WX5540E |
EWP-WX5510E EWP-WX5540E |
支持 |
|
|
WX5500H係列 |
WX5540H WX5560H WX5580H |
EWP-WX5540H EWP-WX5560H EWP-WX5580H |
支持 |
|
|
AC插卡係列 |
LSUM1WCME0 EWPXM1WCME0 LSQM1WCMX20 LSUM1WCMX20RT LSQM1WCMX40 LSUM1WCMX40RT EWPXM2WCMD0F EWPXM1MAC0F |
LSUM1WCME0 EWPXM1WCME0 LSQM1WCMX20 LSUM1WCMX20RT LSQM1WCMX40 LSUM1WCMX40RT EWPXM2WCMD0F EWPXM1MAC0F |
支持 |
包過濾防火牆屬於靜態防火牆,目前存在的問題如下:
· 對於傳輸層協議,配置管理員無法精確預知反向回應報文信息,因此增加了包過濾配置的難度。同時,若配置管理員配置了比較寬鬆的放行策略,則會增加內網被攻擊的風險。
· 對於多通道的應用層協議(如FTP等),部分安全策略配置無法預知。
· 無法跟蹤傳輸層和應用層的協議狀態,無法檢測某些來自傳輸層和應用層的攻擊行為。
· 無法識別來自網絡中偽造的ICMP差錯報文,從而無法避免ICMP的惡意攻擊。
因此,提出了狀態防火牆——ASPF(Advanced Stateful Packet Filter,高級狀態包過濾)的概念。ASPF能夠實現的主要功能有:
· 應用層協議檢測:檢查應用層協議信息,如報文的協議類型和端口號等信息,並且監控每一個連接的應用層協議狀態。對於所有連接,每一個連接狀態信息都將被ASPF維護,並用於動態地決定數據包是否被允許通過防火牆進入內部網絡,以阻止惡意的入侵。
· 傳輸層協議檢測:檢測傳輸層協議信息(即通用TCP/UDP檢測),能夠根據源、目的地址及端口號決定TCP或UDP報文是否可以通過防火牆進入內部網絡。
· ICMP差錯報文檢測:正常ICMP差錯報文中均攜帶有本報文對應連接的相關信息,根據這些信息可以匹配到相應的連接。如果匹配失敗,則根據當前配置決定是否丟棄該ICMP報文。
· TCP連接首包檢測:對TCP連接的首報文進行檢測,查看是否為SYN報文,如果不是SYN報文則根據當前配置決定是否丟棄該報文。缺省情況下,不丟棄非SYN首包,適用於不需要嚴格TCP協議狀態檢查的組網場景。例如當防火牆設備首次加入網絡時,網絡中原有TCP連接的非首包在經過新加入的設備時如果被丟棄,會中斷已有的連接,造成不好的用戶體驗,因此建議暫且不丟棄非SYN首包,等待網絡拓撲穩定後,再開啟非SYN首包丟棄功能。
在網絡邊界,ASPF和包過濾防火牆協同工作,包過濾防火牆負責按照ACL規則進行報文過濾(阻斷或放行),ASPF負責對已放行報文進行信息記錄,使已放行的報文的回應報文可以正常通過配置了包過濾防火牆的接口。因此,ASPF能夠為企業內部網絡提供更全麵的、更符合實際需求的安全策略。
ASPF將應用層協議劃分為:
· 單通道協議:完成一次應用的全過程中,隻有一個連接參與數據交互,如SMTP、HTTP。
· 多通道協議:完成一次應用的全過程中,需要多個連接配合,即控製信息的交互和數據的傳送需要通過不同的連接完成的,如FTP。
如果設備連接了內部網絡和外部網絡,並且要通過部署ASPF來保護內部網絡中的主機和服務器,則設備上與內部網絡連接的接口就稱為內部接口,與外部網絡相連的接口就稱為外部接口。
若需要保護內部網絡,則可以將ASPF應用於設備外部接口的出方向或者應用於設備內部接口的入方向。

如圖1-1所示,為了保護內部網絡,可以在邊界設備上配置訪問控製列表,以允許內部網絡的主機訪問外部網絡,同時拒絕外部網絡的主機訪問內部網絡。但是訪問控製列表會將用戶發起連接後返回的報文過濾掉,導致連接無法正常建立。利用ASPF的應用層協議檢測可以解決此問題。
當在設備上配置了應用層協議檢測後,ASPF可以檢測每一個應用層的連接,具體檢測原理如下:
· 對於單通道協議,ASPF在檢測到第一個向外發送的報文時創建一個會話表項。該會話表項中記錄了對應的正向報文信息和反向報文信息,用於維護會話狀態並檢測會話狀態的轉換是否正確。匹配某條會話表項的所有報文都將免於接受靜態包過濾策略的檢查。
· 對於多通道協議,ASPF除了創建會話表項之外,還會根據協議的協商情況,創建一個或多個關聯表項,用於關聯屬於同一個應用業務的不同會話。關聯表項在多通道協議協商的過程中創建,在多通道協議協商完成後刪除。關聯表項主要用於匹配會話首報文,使已通過協商的會話報文可免於接受靜態包過濾策略的檢查。
單通道應用層協議(如HTTP)的檢測過程比較簡單,當發起連接時建立會話表項,連接刪除時隨之刪除會話表項即可。下麵以FTP檢測為例說明多通道應用層協議檢測的過程。
圖1-2 FTP檢測過程示意圖

如圖1-2所示,FTP連接的建立過程如下:假設FTP client以1333端口向FTP server的21端口發起FTP控製通道的連接,通過協商決定在FTP server的20端口與FTP Client的1600端口之間建立數據通道,並由FTP server發起數據連接,數據傳輸超時或結束後數據通道刪除。
FTP檢測在FTP連接建立到拆除過程中的處理如下:
(1) 檢查FTP client向FTP server發送的IP報文,確認為基於TCP的FTP報文。檢查端口號,確認該連接為FTP client與FTP server之間的控製連接,建立會話表項。
(2) 檢查FTP控製連接報文,根據會話表項進行TCP狀態檢測。解析FTP指令,如果包含數據通道建立指令,則創建關聯表項描述對應數據連接的特征。
(3) 對於返回的FTP控製連接報文,根據會話表項進行TCP狀態檢測,檢測結果決定是否允許報文通過。
(4) FTP數據連接報文通過設備時,將會觸發建立數據連接的會話表項,並刪除所匹配的關聯表項。
(5) 對於返回的FTP數據連接報文,則通過匹配數據連接的會話表項進行TCP狀態檢測,檢查結果決定是否允許報文通過。
(6) 數據連接結束時,數據連接的會話表項將被刪除。FTP連接刪除時,控製連接的會話表項也會被刪除。
傳輸層協議檢測是指通用TCP/UDP檢測。通用TCP/UDP檢測也是通過建立會話表項記錄報文的傳輸層信息,如源地址、目的地址及端口號等,達到動態放行報文的目的。
通用TCP/UDP檢測要求返回到ASPF外部接口的報文要與之前從ASPF外部接口發出去的報文完全匹配,即源地址、目的地址及端口號完全對應,否則返回的報文將被丟棄。因此對於FTP這樣的多通道應用層協議,在不配置應用層檢測而直接配置TCP檢測的情況下會導致數據連接無法建立。
表1-1 ASPF配置任務簡介
|
配置任務 |
說明 |
詳細配置 |
|
配置ASPF策略 |
必選 |
|
|
在接口上應用ASPF策略 |
必選 |
若配置了detect命令,則對報文的應用層協議進行ASPF檢查;若沒有配置detect命令,則僅對報文的傳輸層協議進行ASPF檢查。
在多通道應用層協議的應用需求中,必須配置detect命令,否則會導致數據連接無法建立。detect命令支持的應用層協議中除HTTP、SMTP和TFTP之外的所有應用層協議均為多通道應用層協議。
ASPF策略默認已經開啟對傳輸層協議的檢測,無需進行配置,也不能修改。
可以根據需要在ASPF策略中配置應用層協議檢測。目前,設備對於部分應用層協議(DNS、FTP、H323、HTTP、SCCP、SIP、SMTP),還支持進行協議狀態合法性檢查功能,對不符合協議狀態的報文進行丟棄。對於其它應用層協議,僅進行連接狀態信息的維護,不做協議狀態合法性檢查。
|
操作 |
命令 |
說明 |
|
進入係統視圖 |
system-view |
- |
|
創建ASPF策略,並進入ASPF策略視圖 |
aspf policy aspf-policy-number |
缺省情況下,不存在ASPF策略 |
|
(可選)為應用層協議配置ASPF檢測 |
detect { ftp | h323 | sccp | sip | gtp | ils | mgcp | nbt | pptp | rsh | rtsp | sqlnet | tftp | xdmcp } |
缺省情況下,未配置應用層協議的ASPF檢測 |
|
(可選)開啟ICMP差錯報文丟棄功能 |
icmp-error drop |
缺省情況下,不丟棄ICMP差錯報文 |
|
(可選)開啟非SYN的TCP首報文丟棄功能 |
tcp syn-check |
缺省情況下,不丟棄非SYN的TCP首報文 |
隻有將定義好的ASPF策略應用到接口的出或入方向上,才能對通過接口的特定方向的流量進行檢測。在處理入接口報文時需要查找對應接口入方向的策略;在處理出接口報文時需要查找對應接口出方向的策略。如果接口應用了ASPF策略,所有進入或離開該接口的報文都需要與會話表項進行匹配,查找不到與之匹配的會話表項時會觸發創建會話表。
如果ASPF與包過濾防火牆協同工作,可以在外部接口或內部接口的入方向或出方向上配置特定的ASPF和包過濾策略,根據特定配置,可以拒絕外部網絡上的用戶對內部網絡的主動訪問,但內部網絡的用戶訪問外部網絡時,返回的報文可以按照外部接口出方向或內部接口入方向上的ASPF配置進行ASPF檢測。
由於ASPF對於應用層協議狀態的保存和維護都是基於接口的,因此在實際應用中,必須保證報文入口的一致性,即必須保證連接發起方發送的報文和響應端返回的報文經過同一接口。
|
操作 |
命令 |
說明 |
|
進入係統視圖 |
system-view |
- |
|
進入接口視圖 |
interface interface-type interface-number |
- |
|
在接口上應用ASPF策略 |
aspf apply policy aspf-policy-number { inbound | outbound } |
缺省情況下,接口上沒有應用ASPF策略 |
在完成上述配置後,在任意視圖下執行display命令可以顯示配置後ASPF的運行情況,通過查看顯示信息驗證配置的效果。
在用戶視圖下執行reset命令可以清除ASPF的統計信息。
表1-4 ASPF顯示和維護
|
操作 |
命令 |
|
查看ASPF策略配置信息及應用ASPF策略的信息 |
display aspf all |
|
查看接口上的ASPF策略信息 |
display aspf interface |
|
查看ASPF策略的配置信息 |
display aspf policy { aspf-policy-number | default } |
|
查看ASPF的會話表信息 |
display aspf session [ ipv4 | ipv6 ] [ slot slot-number ] [ verbose ] |
|
刪除ASPF的會話表 |
reset aspf session [ ipv4 | ipv6 ] [ slot slot-number ] |
AC為連接內部網絡與外部網絡的邊界設備,內部網絡中的本地用戶需要訪問外部網絡提供的FTP服務。要求配置ASPF策略,檢測通過AC的FTP流量。如果該報文是內部網絡用戶發起的FTP連接的返回報文,則允許其通過AC進入內部網絡,其它報文被禁止。
圖1-3 檢測FTP應用的ASPF典型配置組網圖

# 配置ACL 3111,定義規則:拒絕所有IP流量進入內部網絡。
<AC> system-view
[AC] acl advanced 3111
[AC-acl-ipv4-adv-3111] rule deny ip
[AC-acl-ipv4-adv-3111] quit
# 創建ASPF策略1,配置檢測應用層協議FTP。
[AC] aspf policy 1
[AC-aspf-policy-1] detect ftp
[AC-aspf-policy-1] quit
# 在接口Vlan-interface100的入方向上應用包過濾策略,拒絕所有IP流量進入內部網絡。
[AC] interface Vlan-interface 100
[AC-Vlan-interface100] packet-filter 3111 inbound
# 在接口Vlan-interface100的出方向上應用ASPF策略,ASPF會為內部網絡和外部網絡之間的FTP連接創建會話表項,並允許匹配該表項的外部網絡返回報文進入內部網絡。
[AC-Vlan-interface100] aspf apply policy 1 outbound
以上配置完成後,從Host向Server發起的FTP連接可正常建立,而從外部網絡發起連接的報文則無法進入內部網絡。在AC上可以查看到已經建立的ASPF會話。
<AC> display aspf session ipv4
Initiator:
Source IP/port: 192.168.1.2/1877
Destination IP/port: 2.2.2.11/21
VPN instance/VLAN ID/Inline ID: -/-/-
Protocol: TCP(6)
Inbound interface: Vlan-interface 100
Total sessions found: 1
AC為連接內部網絡與外部網絡的邊界設備,內部網絡中的本地用戶需要訪問外部網絡。為避免來自外部網絡的ICMP和SYN報文的惡意攻擊,要求在AC上配置ASPF策略,實現ICMP差錯報文檢測及TCP非SYN首報文丟棄功能。
圖1-4 檢測ICMP和SYN報文的ASPF典型配置組網圖

# 配置ACL 3111,定義規則:拒絕所有IP流量進入內部網絡。
<AC> system-view
[AC] acl advanced 3111
[AC-acl-ipv4-adv-3111] rule deny ip
[AC-acl-ipv4-adv-3111] quit
# 創建ASPF策略1。
[AC] aspf policy 1
# 設置ASPF策略1丟棄ICMP差錯報文。
[AC-aspf-policy-1] icmp-error drop
# 設置ASPF策略1丟棄非SYN的TCP首報文。
[AC-aspf-policy-1] tcp syn-check
# 配置ASPF策略1檢測應用層協議FTP。(此處僅為示例,可根據實際組網配置需要檢測的協議)
[AC-aspf-policy-1] detect ftp
[AC-aspf-policy-1] quit
# 在接口Vlan-interface100的入方向上應用包過濾策略,拒絕所有IP流量進入內部網絡。
[AC] interface Vlan-interface 100
[AC-Vlan-interface100] packet-filter 3111 inbound
# 在接口GigabitEthernet1/0/1的出方向上應用ASPF策略。
[AC-Vlan-interface100] aspf apply policy 1 outbound
# 查看策略號為1的ASPF策略的配置信息。
<AC> display aspf policy 1
ASPF policy configuration:
Policy number: 1
ICMP error message check: Enabled
TCP SYN packet check: Enabled
Inspected protocol
FTP
通過以上配置,AC能夠識別出來自網絡中偽造的ICMP差錯報文,可以避免ICMP的惡意攻擊,而且非SYN報文的TCP首包也將被丟棄。
不同款型規格的資料略有差異, 詳細信息請向具體銷售和400谘詢。H3C保留在沒有任何通知或提示的情況下對資料內容進行修改的權利!
