目錄

簡介

必要條件

需求

採用元件

背景資訊

安全防火牆穿透裝置流量

安全防火牆至機箱流量

有關控制平面ACL的重要注意事項

設定

組態

為FMC管理的FTD設定控制平面ACL

[影片]為FMC管理的FTD配置控制平面ACL

為FDM管理的FTD配置控制平面ACL

使用CLI為ASA配置控制平面ACL

使用shun阻止安全防火牆攻擊的備用配置

FTD組態範例

ASA配置示例

驗證

ASA的輸出示例

相關錯誤

相關資訊

簡介

本文檔介紹為安全防火牆威脅防禦和自適應安全裝置(ASA)配置控制平面訪問規則的過程。

必要條件

需求

思科建議您瞭解以下主題：

- 安全防火牆威脅防禦(FTD)

- 安全防火牆裝置管理員(FDM)

- 安全防火牆管理中心(FMC)

- 安全防火牆ASA

- 存取控制清單(ACL)

- FlexConfig

採用元件

本文中的資訊係根據以下軟體和硬體版本：

- 安全防火牆威脅防禦版本7.2.5

- 安全防火牆管理器中心版本7.2.5

- 安全防火牆裝置管理員版本7.2.5

- 安全防火牆ASA版本9.18.3

本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除（預設）的組態來啟動。如果您的網路運作中，請確保您瞭解任何指令可能造成的影響。

背景資訊

流量通常通過防火牆，並在資料介面之間路由；在某些情況下，拒絕目的地為「到」安全防火牆的流量是有益的。思科安全防火牆可以使用控制平面訪問控制清單(ACL)來限制「機箱內」流量。控制平面ACL何時可用的一個示例是控制哪些對等體可以建立到安全防火牆的VPN（站點到站點或遠端訪問VPN）隧道。

安全防火牆穿透裝置流量

流量通常從一個介面（入站）穿越防火牆到達另一個介面（出站），這稱為通過機箱流量，由訪問控制策略(ACP)和預過濾器規則管理。

圖1.通過機箱的流量示例

安全防火牆至機箱流量

在其他情況下，流量直接目的地為FTD介面（站點到站點或遠端存取VPN），這稱為箱中流量，由該特定介面的控制平面管理。

圖2.即插即用流量示例

有關控制平面ACL的重要注意事項

- 自FMC/FTD 7.0版起，必須使用FlexConfig使用ASA上使用的相同命令語法配置控制平面ACL。

- 關鍵字控制平面附加到訪問組配置中，用於實施到安全防火牆介面的流量。如果沒有在命令後附加控制平面字，ACL將限制通過安全防火牆的流量。

- 控制平面ACL不會限制安全防火牆介面的SSH、ICMP或TELNET入站。根據平台設定策略處理（允許/拒絕），並且具有更高的優先順序。

- 控制平面ACL限制流向安全防火牆本身的流量，而FTD的訪問控制策略或ASA的正常ACL控制通過安全防火牆的流量。

- 與普通ACL不同，ACL的結尾沒有隱含的「deny」。

- 物件群組搜尋(OGS)功能無法運作於控制平面ACL(思科錯誤ID CSCwi58818)。

- 建立本檔案時，FTD地理定位功能無法用於限制對FTD的存取。

設定

在下一個範例中，來自特定國家的一組IP位址嘗試登入FTD RAVPN，從而VPN強行進入網路。保護FTD免受這些VPN暴力攻擊的最佳選項是設定控制平面ACL，以阻擋這些連線到外部FTD介面。

組態

為FMC管理的FTD設定控制平面ACL

您可以在FMC中按照以下步驟操作，以設定控制平面ACL來阻止傳入VPN暴力攻擊到外部FTD介面：

步驟1.通過HTTPS開啟FMC圖形使用者介面(GUI)並使用您的憑證登入：

圖3. FMC登入頁

步驟2.您需要建立延伸型ACL。為此，請導航到對象>對象管理:

圖4.對象管理

步驟2.1.從左側面板導航到Access List > Extended以建立擴展ACL:

圖5.擴展ACL選單

步驟2.2.然後，選擇Add Extended Access List:

圖6.新增擴展ACL

步驟2.3.鍵入擴展ACL的名稱，然後按一下Add按鈕建立訪問控制條目(ACE):

圖7.擴展ACL條目

步驟2.4.將ACE操作更改為Block，然後新增源網路以匹配需要拒絕到FTD的流量，將目標網路保留為Any，然後按一下Add按鈕完成ACE條目。

在本示例中，配置的ACE條目阻止來自192.168.1.0/24子網的VPN暴力攻擊：

圖8.遭到拒絕的網路

步驟2.5。如果您需要新增更多ACE項目，請再次按一下Add按鈕並重複步驟2.4。在此之後，按一下Save按鈕完成ACL配置：

圖9.完成的擴展ACL條目

步驟3。接下來，您需要設定Flex-Config對象，以將控制平面ACL套用到外部FTD介面。為此，導航到左側面板，然後選擇選項FlexConfig > FlexConfig Object。

圖10. FlexConfig對象選單

步驟3.1。單擊Add FlexConfig Object:

圖11.新增Flexconfig對象

步驟3.2.為FlexConfig對象新增名稱，然後插入ACL策略對象。為此，請選擇插入>插入策略對象>擴展ACL對象:

圖12. FlexConfig對象變數

步驟3.3.為ACL對象變數新增名稱，然後選擇在步驟2.3中建立的擴展ACL，然後點選Save按鈕：

圖13. FlexConfig對象變數ACL分配

步驟3.4。然後，將控制平面ACL配置為外部介面的入站流量。

命令列語法：

access-group "variable name starting with $ symbol" in interface "interface-name" control-plane

這轉換為下一個命令示例，該示例使用步驟2.3 VAR-ACL-UNWANTED-COUNTRY中建立的ACL變數：

access-group $VAR-ACL-UNWANTED-COUNTRY in interface outside control-plane

這就是在FlexConfig對象視窗中配置該對象的方法，之後，選擇Save按鈕以完成FlexConfig對象：

圖14. Flexconfig對象完成命令列

注意：強烈建議僅在安全防火牆（如Outside介面）中為接收傳入遠端訪問VPN會話的介面配置控制平面ACL。

步驟4.您需要將FlexConfig物件組態套用到FTD，若要執行此操作，請導覽至Devices > FlexConfig:

圖15. FlexConfig策略選單

步驟4.1。然後，如果沒有為FTD建立的FlexConfig，請按一下New Policy，或編輯現有的FlexConfig原則：

圖16.建立FlexConfig策略

步驟4.2.為新的FlexConfig策略新增名稱，並選擇要應用所建立的控制平面ACL的FTD:

圖17. FlexConfig策略裝置分配

步驟4.3.從左側面板中，搜尋在步驟3.2中建立的FlexConfig對象，然後按一下位於視窗中間的右箭頭將其新增到FlexConfig策略。最後，按一下Save按鈕：

圖18. FlexConfig策略對象分配

步驟5.繼續將組態變更部署到FTD，針對此情況，請導覽至部署>進階部署:

圖19. FTD進階部署

步驟5.1。然後，選擇要應用FlexConfig策略的FTD。如果一切正常，則按一下Deploy:

映像20. FTD部署驗證

第5.2步。此後，將顯示「部署確認」視窗，新增註釋以跟蹤部署並繼續部署:

圖21. FTD部署說明

步驟5.3.部署FlexConfig更改時可能會出現警告消息。只有完全確定策略配置正確時，才按一下Deploy:

圖22. FTD部署Flexconfig警告

步驟5.4.確認針對FTD的原則部署成功：

映像23. FTD部署成功

步驟6.如果您為FTD建立新控制平面ACL，或編輯現有控制平面ACL，但現有控制平面ACL正在使用，必須強調的是，變更的組態並不適用於FTD的已建立連線，因此，您需要手動清除對FTD的活動連線嘗試。為此，請連線至FTD的CLI並清除作用中連線。

要清除特定主機IP地址的活動連線：

> clear conn address 192.168.1.10 all

要清除整個子網網路的活動連線，請執行以下操作：

> clear conn address 192.168.1.0 netmask 255.255.255.0 all

要清除IP地址範圍的活動連線，請執行以下操作：

> clear conn address 192.168.1.1-192.168.1.10 all

注意：強烈建議在clear conn address命令末尾使用關鍵字all，強制清除對安全防火牆的活動的VPN暴力連線嘗試，主要在VPN暴力攻擊的性質是不斷發起大量連線嘗試時。

[影片]為FMC管理的FTD配置控制平面ACL

為FDM管理的FTD配置控制平面ACL

在FDM中，需要遵循以下步驟來配置控制平面ACL，以阻止傳入VPN暴力攻擊到外部FTD介面：

步驟1.通過HTTPS開啟FDM GUI並使用您的憑據登入：

圖24. FDM登入頁

步驟2.您需要建立物件網路。為此，請導航至對象:

圖25. FDM主儀表板

步驟2.1.從左側面板中選擇Networks，然後按一下「+」按鈕建立新的網路對象：

影象26.建立對象

步驟2.2.新增網路物件的名稱，選擇物件的網路型別，新增IP位址、網路位址或IP範圍，以與需要拒絕到FTD的流量相符。然後，按一下Ok按鈕完成對象網路。

— 在本示例中，配置的對象網路旨在阻止來自192.168.1.0/24子網的VPN暴力攻擊：

圖27.新增網路對象

步驟3。然後，您需要建立延伸型ACL，為此，請導覽至頂端功能表的Device索引標籤：

影象28.裝置設定頁面

步驟3.1.向下滾動，從「Advanced Configuration」方塊中選擇View Configuration，如下圖所示：

圖29. FDM高級配置

步驟3.2。然後，從左側面板導航到Smart CLI > Objects，然後點選CREATE SMART CLI OBJECT。

圖30.智慧CLI對象

步驟3.3.為要建立的擴展ACL新增名稱，從CLI模板下拉選單中選擇Extended Access List，然後使用Step 2.2中建立的網路對象配置所需的ACE，然後按一下OK按鈕完成ACL:

圖31.建立擴展ACL

注意：如果需要為ACL新增更多ACE，可以將滑鼠懸停在當前ACE的左側；那麼三個可點選的點就不會出現。按一下它們並選擇複製以新增更多ACE。

步驟4。然後，您需要建立FlexConfig對象，為此，請導航到左側面板並選擇FlexConfig > FlexConfig Objects，然後點選CREATE FLEXCONFIG OBJECT:

圖32. FlexConfig對象

步驟4.1.為FlexConfig對象新增名稱，以建立控制平面ACL並將其配置為外部介面的入站，如下圖所示。

命令列語法：

access-group "ACL-name" in interface "interface-name" control-plane

這會轉換為下一個命令示例，該示例使用步驟3.3中建立的擴展ACL ACL-UNWANTED-COUNTRY:

access-group ACL-UNWANTED-COUNTRY in interface outside control-plane

這是將其配置到FlexConfig對象視窗的方式，之後，選擇OK按鈕以完成FlexConfig對象：

圖33.建立FlexConfig對象

注意：強烈建議僅在安全防火牆（如Outside介面）中為接收傳入遠端訪問VPN會話的介面配置控制平面ACL。

步驟5.繼續建立FlexConfig策略。為此，請導航到Flexconfig > FlexConfig Policy，按一下+ 按鈕，然後選擇在步驟4.1中建立的FlexConfig對象:

圖34. FlexConfig策略

步驟5.1.驗證FlexConfig預覽是否顯示所建立的控制平面ACL的正確配置，然後點選Save按鈕：

圖35. FlexConfig策略預覽

步驟6.將配置更改部署到要防禦VPN暴力攻擊的FTD，為此，按一下頂部選單的Deployment按鈕，驗證要部署的配置更改是否正確，最後按一下DEPLOY NOW:

圖36.待定部署

步驟6.1.驗證策略部署是否成功：

圖37.部署成功

步驟7.如果您為FTD建立新控制平面ACL，或編輯現有控制平面ACL且現有控制平面ACL處於使用中，則務必強調所作的組態變更不適用於已建立與FTD的連線，因此，您需要手動清除與FTD的連線嘗試。為此，請連線至FTD的CLI並清除作用中連線。

要清除特定主機IP地址的活動連線：

> clear conn address 192.168.1.10 all

要清除整個子網網路的活動連線，請執行以下操作：

> clear conn address 192.168.1.0 netmask 255.255.255.0 all

要清除IP地址範圍的活動連線，請執行以下操作：

> clear conn address 192.168.1.1-192.168.1.10 all

注意：強烈建議在clear conn address命令末尾使用關鍵字all，強制清除對安全防火牆的活動的VPN暴力連線嘗試，主要在VPN暴力攻擊的性質是不斷發起大量連線嘗試時。

使用CLI為ASA配置控制平面ACL

您需要在ASA CLI中按照以下步驟配置控制平面ACL以阻止傳入的VPN暴力攻擊到外部介面：

步驟1.通過CLI登入安全防火牆ASA並訪問configure terminal命令。

asa# configure terminal

步驟2.使用next命令配置擴展ACL，以阻止需要阻止到ASA的流量的主機IP地址或網路地址。

在本示例中，您將建立一個名為ACL-WANTED-COUNTRY的新ACL，並且配置的ACE條目阻止來自192.168.1.0/24子網的VPN暴力攻擊：

asa(config)# access-list ACL-UNWANTED-COUNTRY extended deny ip 192.168.1.0 255.255.255.0 any

步驟3.使用next access-group命令將ACL-UNWANTED-COUNTRY ACL配置為外部ASA介面的控制平面ACL:

asa(config)# access-group ACL-UNWANTED-COUNTRY in interface outside control-plane

注意：強烈建議僅在安全防火牆（如Outside介面）中為接收傳入遠端訪問VPN會話的介面配置控制平面ACL。

步驟4.如果您建立新的控制平面ACL，或者您編輯了正在使用的現有控制平面ACL，那麼必須強調的是，所做的配置更改不適用於已建立的ASA連線，因此，您需要手動清除對ASA的活動連線嘗試。為此，請清除活動連線。

要清除特定主機IP地址的活動連線：

asa# clear conn address 192.168.1.10 all

要清除整個子網網路的活動連線，請執行以下操作：

asa# clear conn address 192.168.1.0 netmask 255.255.255.0 all

要清除IP地址範圍的活動連線，請執行以下操作：

asa# clear conn address 192.168.1.1-192.168.1.10 all

注意：強烈建議在clear conn address命令末尾使用關鍵字all，強制清除對安全防火牆的活動的VPN暴力連線嘗試，主要在VPN暴力攻擊的性質是不斷發起大量連線嘗試時。

使用shun阻止安全防火牆攻擊的備用配置

如果存在阻止安全防火牆攻擊的立即選項，則可以使用shun 命令。Thschuncommand用於阻止來自攻擊主機的連線，這裡提供有關此shun 命令的更多詳細資訊：

- 迴避IP位址後，系統會捨棄並記錄來源IP位址的所有未來連線，直到手動移除封鎖功能為止。

- 無論具有指定主機地址的連線當前是否處於活動狀態，都會應用thhuncommand的阻止功能。

- 如果指定目的地位址、來源和目的地連線埠和通訊協定，則會捨棄相符的連線，並對來自來源IP位址的所有未來連線設定迴避；所有將來的連線都會被迴避，而不僅僅是那些與這些特定連線引數匹配的連線。

- 每個源IP地址只能使用oneshuncommand。

- 由於thhuncommand用於動態阻止攻擊，因此它不會顯示在威脅防禦裝置配置中。

- 每當刪除介面配置時，也會刪除連線到該介面的所有分路。

- Shun命令語法：

shun source_ip [ dest_ip source_port dest_port [ protocol]] [ vlan vlan_id]

- 要禁用shun，請使用此命令的no形式：

no shun source_ip [ vlan vlan_id]

若要迴避主機IP位址，請依照此範例對安全防火牆進行操作。在本範例中，shun 指令用於封鎖來自來源IP位址192.168.1.10的VPN暴力攻擊。

FTD組態範例

步驟1.透過CLI登入FTD並套用shun指令：

> shun 192.168.1.10

Shun 192.168.1.10 added in context: single_vf

Shun 192.168.1.10 successful

步驟2.可以使用show命令確認FTD中的迴避IP位址，並監控每個IP位址的回免命中次數：

> show shun

shun (outside) 192.168.1.10 0.0.0.0 0 0 0

> show shun statistics

diagnostic=OFF, cnt=0

outside=ON, cnt=0

Shun 192.168.1.10 cnt=0, time=(0:00:28)

ASA配置示例

步驟1.通過CLI登入到ASA並應用shun命令：

asa# shun 192.168.1.10

Shun 192.168.1.10 added in context: single_vf

Shun 192.168.1.10 successful

步驟2.可以使用show命令確認ASA中的shun IP地址並監控每個IP地址的shun命中計數：

asa# show shun

shun (outside) 192.168.1.10 0.0.0.0 0 0 0

asa# show shun statistics

outside=ON, cnt=0

inside=OFF, cnt=0

dmz=OFF, cnt=0

outside1=OFF, cnt=0

mgmt=OFF, cnt=0

Shun 192.168.1.10 cnt=0, time=(0:01:39)

附註：有關secure firewall shun命令的詳細資訊，請檢視思科安全防火牆威脅防禦命令參考

驗證

要確認安全防火牆的控制平面ACL配置已就緒，請繼續：

步驟1.通過CLI登入安全防火牆，並運行以下命令以確認已應用控制平面ACL配置。

FMC管理的FTD的輸出示例：

> show running-config access-list ACL-UNWANTED-COUNTRY

access-list ACL-UNWANTED-COUNTRY extended deny ip 192.168.1.0 255.255.255.0 any

> show running-config access-group

***OUTPUT OMITTED FOR BREVITY***

access-group ACL-UNWANTED-COUNTRY in interface outside control-plane

FDM管理的FTD的輸出示例：

> show running-config object id OBJ-NET-UNWANTED-COUNTRY

object network OBJ-NET-UNWANTED-COUNTRY

subnet 192.168.1.0 255.255.255.0

> show running-config access-list ACL-UNWANTED-COUNTRY

access-list ACL-UNWANTED-COUNTRY extended deny ip 192.168.1.0 255.255.255.0 any4 log default

> show running-config access-group

***OUTPUT OMITTED FOR BREVITY***

access-group ACL-UNWANTED-COUNTRY in interface outside control-plane

ASA的輸出示例：

asa# show running-config access-list ACL-UNWANTED-COUNTRY

access-list ACL-UNWANTED-COUNTRY extended deny ip 192.168.1.0 255.255.255.0 any

asa# show running-config access-group

***OUTPUT OMITTED FOR BREVITY***

access-group ACL-UNWANTED-COUNTRY in interface outside control-plane

步驟2.要確認控制平面ACL正在阻止所需的流量，請使用packet-tracer命令模擬到安全防火牆外部介面的傳入TCP 443連線，然後使用show access-list <acl-name> 命令，每次控制平面ACL阻止到安全防火牆的VPN暴力連線時，ACL命中計數都會增加。

在本例中，packet-tracer命令模擬從主機192.168.1.10發往安全防火牆外部IP地址的傳入TCP 443連線。packet Tracer輸出確認流量遭捨棄，show access-list輸出則顯示現有控制平面ACL的命中計數增量：

FTD的輸出範例

> packet-tracer input outside tcp 192.168.1.10 1234 10.3.3.251 443

Phase: 1

Type: ACCESS-LIST

Subtype: log

Result: DROP

Elapsed time: 21700 ns

Config:

Additional Information:

Result:

input-interface: outside(vrfid:0)

input-status: up

input-line-status: up

Action: drop

Time Taken: 21700 ns

Drop-reason: (acl-drop) Flow is denied by configured rule, Drop-location: frame 0x00005623c7f324e7 flow (NA)/NA

> show access-list ACL-UNWANTED-COUNTRY

access-list ACL-UNWANTED-COUNTRY; 1 elements; name hash: 0x42732b1f

access-list ACL-UNWANTED-COUNTRY line 1 extended deny ip 192.168.1.0 255.255.255.0 any (hitcnt=1) 0x142f69bf

ASA的輸出示例

asa# packet-tracer input outside tcp 192.168.1.10 1234 10.3.3.5 443

Phase: 1

Type: ACCESS-LIST

Subtype:

Result: ALLOW

Elapsed time: 19688 ns

Config:

Implicit Rule

Additional Information:

MAC Access list

Phase: 2

Type: ACCESS-LIST

Subtype: log

Result: DROP

Elapsed time: 17833 ns

Config:

Additional Information:

Result:

input-interface: outside

input-status: up

input-line-status: up

Action: drop

Time Taken: 37521 ns

Drop-reason: (acl-drop) Flow is denied by configured rule, Drop-location: frame 0x0000556e6808cac8 flow (NA)/NA

asa# show access-list ACL-UNWANTED-COUNTRY

access-list ACL-UNWANTED-COUNTRY; 1 elements; name hash: 0x42732b1f

access-list ACL-UNWANTED-COUNTRY line 1 extended deny ip 192.168.1.0 255.255.255.0 any (hitcnt=1) 0x9b4d26ac

注意：如果在安全防火牆中實施類似Cisco安全客戶端VPN的RAVPN解決方案，則隨後可以執行到安全防火牆的真實連線嘗試，以確認控制平面ACL是否按預期工作，從而阻止所需的流量。

相關錯誤

- ENH |基於地理位置的AnyConnect客戶端連線：思科錯誤ID CSCvs65322

- 文檔：ASA/FTD對象組搜尋不支援控制平面ACL:思科錯誤ID CSCwi58818

相關資訊

- 為安全防火牆威脅防禦的遠端訪問VPN配置基於地理位置的策略

- 針對安全防火牆中遠端訪問VPN服務的密碼噴霧攻擊的建議

- Cisco VPN技術參考指南