簡介
本檔案介紹如何使用憑證比對進行驗證,透過FDM在FTD上設定具有SSL的Cisco Secure Client。
必要條件
需求
思科建議您瞭解以下主題:
- Cisco Firepower裝置管理員(FDM)虛擬
- 防火牆威脅防禦(FTD)虛擬
- VPN身份驗證流程
採用元件
- 思科Firepower裝置管理器虛擬7.2.8
- 思科防火牆威脅防禦虛擬7.2.8
- 思科安全客戶端5.1.4.74
- 設定檔編輯器(Windows) 5.1.4.74
本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除(預設)的組態來啟動。如果您的網路運作中,請確保您瞭解任何指令可能造成的影響。
背景資訊
CertificateMatch功能允許管理員配置客戶端必須使用的條件,以選擇用於VPN伺服器身份驗證的客戶端證書。此配置在客戶端配置檔案中指定,這是一個XML檔案,可使用配置檔案編輯器進行管理或手動編輯。CertificateMatch功能可用於增強VPN連線的安全性,方法是確保只有具有特定屬性的證書用於VPN連線。
本文檔介紹如何使用SSL證書中的公用名稱對Cisco Secure Client進行身份驗證。
這些憑證中包含用於授權目的的通用名稱。
- CA: ftd-ra-ca-common-name
- 工程師VPN客戶端證書:vpnEngineerClientCN
- Manager VPN客戶端證書:vpnManagerClientCN
- 伺服器證書:192.168.1.200
網路圖表
下圖顯示本文檔示例中使用的拓撲。
網路圖表
組態
FDM中的組態
步驟 1.設定FTD介面
導覽至Device > Interfaces > View All Interfaces,在Interfaces索引標籤中設定FTD的內部和外部介面。
對於GigabitEthernet0/0,
- 名稱:outside
- IP地址:192.168.1.200/24
FTD介面
步驟 2.確認思科安全客戶端許可證
導航到裝置>智慧許可證>檢視配置,確認RA VPN許可證專案中的思科安全客戶端許可證。
安全使用者端授權
步驟 3.增加地址池
導航到對象>網路,點選+按鈕。
增加地址池
輸入必要資訊以增加新的IPv4地址池。按一下OK 按鈕。
- 名稱:ftd-cert-match-pool
- 型別:範圍
- IP範圍:172.16.1.150-172.16.1.160
IPv4地址池的詳細資訊
步驟 4.建立安全客戶端配置檔案
從思科軟體站點下載並安裝安全客戶端配置檔案編輯器。 導航到伺服器清單,點選增加按鈕。 輸入增加伺服器清單條目所需的資訊,然後按一下OK按鈕。
- 顯示名稱:cert-match
- FQDN或IP地址:192.168.1.200
- 主要通訊協定:SSL
伺服器清單專案
導航到證書匹配,按一下增加按鈕。 輸入增加可分辨名稱條目的必要資訊,然後按一下OK按鈕。
- 名稱:CN
- 模式:vpnEngineerClientCN
- 運算子:等於
辨別名稱專案
將安全使用者端設定檔儲存到本機電腦,並確認設定檔的詳細資訊。
安全使用者端設定檔
步驟 5.上傳安全使用者端設定檔至FDM
導航到對象>安全客戶端配置檔案,點選建立安全客戶端配置檔案按鈕。
建立安全客戶端配置檔案
輸入必要資訊增加安全客戶端配置檔案,並按一下OK按鈕。
- 名稱:secureClientProfile
- 安全使用者端設定檔:secureClientProfile.xml (從本機電腦上傳)
增加安全客戶端配置檔案
步驟 6.增加組策略
導航到裝置>遠端接入VPN >檢視配置>組策略,點選+按鈕。
增加組策略
輸入增加組策略所需的資訊,並按一下OK按鈕。
- 名稱:ftd-cert-match-grp
- 安全客戶端配置檔案:secureClientProfile
組策略的詳細資訊
步驟 7.新增FTD憑證
導航到對象>證書,從+專案按一下增加內部證書。
增加內部證書
按一下Upload Certificate and Key。
上傳憑證和金鑰
輸入FTD憑證的必要資訊、從本機電腦匯入憑證和憑證金鑰,然後按一下OK按鈕。
- 名稱:ftd-vpn-cert
- 特殊服務的驗證用法:SSL伺服器
內部證書的詳細資訊
步驟 8.新增CA至FTD
導航到對象>證書,從+專案按一下增加受信任CA證書。
增加受信任的CA證書
輸入CA的必要資訊,從本機電腦匯入憑證。
- 名稱:ftdvpn-ca-cert
- 特殊服務的驗證用法:SSL客戶端
受信任CA憑證的詳細資料
步驟 9.增加遠端訪問VPN連線配置檔案
導航到裝置>遠端接入VPN >檢視配置>連線配置檔案,點選建立連線配置檔案按鈕。
增加遠端訪問VPN連線配置檔案
輸入連線配置檔案的必要資訊,然後按一下Next按鈕。
- 連線配置檔名稱:ftd-cert-match-vpn
- 驗證型別:僅使用者端憑證
- 來自證書的使用者名稱:對映特定欄位
- 主要欄位:CN (一般名稱)
- 次要欄位:OU (組織單位)
- IPv4地址池:ftd-cert-match-pool
VPN連線配置檔案的詳細資訊
輸入組策略的必要資訊,並按一下Next按鈕。
選擇組策略
為VPN連線選擇Certificate of Device Identity、Outside Interface、Secure Client Package。
- 裝置身份證書:ftd-vpn-cert
- 外部介面:外部(GigabitEthernet0/0)
- 安全客戶端軟體套件:cisco-secure-client-win-5.1.4.74-webdeploy-k9.pkg
全局設定的詳細資訊
步驟 10.確認連線設定檔摘要
確認輸入的VPN連線資訊,然後按一下FINISH按鈕。
確認連線設定檔摘要
在FTD CLI中確認
從FDM部署後,在FTD CLI中確認VPN連線設定。
// Defines IP of interface
interface GigabitEthernet0/0
speed auto
nameif outside
cts manual
propagate sgt preserve-untag
policy static sgt disabled trusted
security-level 0
ip address 192.168.1.200 255.255.255.0
// Defines a pool of addresses
ip local pool ftd-cert-match-pool 172.16.1.150-172.16.1.160
// Defines Trustpoint for Server Certificate
crypto ca trustpoint ftd-vpn-cert
enrollment terminal
keypair ftd-vpn-cert
crl configure
// Server Certificate
crypto ca certificate chain ftdvpn-ca-cert
certificate ca 5242a02e0db6f7fd
3082036c 30820254 a0030201 02020852 42a02e0d b6f7fd30 0d06092a 864886f7
......
quit
// Defines Trustpoint for CA
crypto ca trustpoint ftdvpn-ca-cert
enrollment terminal
validation-usage ssl-client
crl configure
// CA
crypto ca certificate chain ftdvpn-ca-cert
certificate ca 5242a02e0db6f7fd
3082036c 30820254 a0030201 02020852 42a02e0d b6f7fd30 0d06092a 864886f7
......
quit
// Configures the FTD to allow Cisco Secure Client connections and the valid Cisco Secure Client images
webvpn
enable outside
http-headers
hsts-server
enable
max-age 31536000
include-sub-domains
no preload
hsts-client
enable
x-content-type-options
x-xss-protection
content-security-policy
anyconnect image disk0:/anyconnpkgs/cisco-secure-client-win-5.1.4.74-webdeploy-k9.pkg 2
anyconnect profiles secureClientProfile disk0:/anyconncprofs/secureClientProfile.xml
anyconnect enable
tunnel-group-list enable
cache
disable
error-recovery disable
// Configures the group-policy to allow SSL connections
group-policy ftd-cert-match-grp internal
group-policy ftd-cert-match-grp attributes
dhcp-network-scope none
vpn-simultaneous-logins 3
vpn-idle-timeout 30
vpn-idle-timeout alert-interval 1
vpn-session-timeout none
vpn-session-timeout alert-interval 1
vpn-filter none
vpn-tunnel-protocol ssl-client
split-tunnel-policy tunnelall
ipv6-split-tunnel-policy tunnelall
split-dns none
split-tunnel-all-dns disable
client-bypass-protocol disable
msie-proxy method no-modify
vlan none
address-pools none
ipv6-address-pools none
webvpn
anyconnect ssl dtls none
anyconnect mtu 1406
anyconnect ssl keepalive none
anyconnect ssl rekey time none
anyconnect ssl rekey method none
anyconnect dpd-interval client none
anyconnect dpd-interval gateway none
anyconnect ssl compression none
anyconnect dtls compression none
anyconnect modules none
anyconnect profiles value secureClientProfile type user
anyconnect ssl df-bit-ignore disable
always-on-vpn profile-setting
// Configures the tunnel-group to use the certificate authentication
tunnel-group ftd-cert-match-vpn type remote-access
tunnel-group ftd-cert-match-vpn general-attributes
address-pool ftd-cert-match-pool
default-group-policy ftd-cert-match-grp
tunnel-group ftd-cert-match-vpn webvpn-attributes
authentication certificate
group-alias ftd-cert-match-vpn enable
在VPN客戶端中確認
步驟 1.將安全客戶端配置檔案複製到VPN客戶端
將安全客戶端配置檔案複製到工程師VPN客戶端和管理員VPN客戶端。
注意:Windows電腦中Secure Client配置檔案的目錄:C:\ProgramData\Cisco\Cisco Secure Client\VPN\Profile
將安全客戶端配置檔案複製到VPN客戶端
步驟 2.確認使用者端憑證
在工程VPN客戶端中,導航到證書-當前使用者>個人>證書,檢查用於身份驗證的客戶端證書。
確認工程師VPN客戶端的證書
按兩下客戶端證書,導航到Details,檢查Subject的詳細資訊。
- 主題:CN = vpnEngineerClientCN
工程師客戶端證書的詳細資訊
在Manager VPN Client中,導航到Certificates - Current User > Personal > Certificates,檢查用於身份驗證的客戶端證書。
確認Manager VPN客戶端的證書
按兩下客戶端證書,導航到Details,檢查Subject的詳細資訊。
- 主題:CN = vpnManagerClientCN
Manager客戶端證書的詳細資訊
步驟 3.確認CA
在工程VPN客戶端和管理器VPN客戶端中,導航到證書-當前使用者>受信任的根證書頒發機構>證書,檢查用於身份驗證的CA。
- 頒發者:ftd-ra-ca-common-name
確認CA
驗證
步驟 1.啟動VPN連線
在工程VPN客戶端中,啟動Cisco Secure Client連線。無需輸入使用者名稱和密碼,VPN連線成功。
工程師VPN客戶端的VPN連線成功
在管理器VPN客戶端中,啟動Cisco安全客戶端連線。由於證書驗證失敗,VPN連線失敗。
Manager VPN客戶端的VPN連線失敗
步驟 2.在FTD CLI中確認VPN作業階段
在FTD (Lina) CLI中執行show vpn-sessiondb detail anyconnect命令,以確認工程師的VPN作業階段。
firepower# show vpn-sessiondb detail anyconnect
Session Type: AnyConnect Detailed
Username : vpnEngineerClientCN Index : 32
Assigned IP : 172.16.1.150 Public IP : 192.168.1.11
Protocol : AnyConnect-Parent SSL-Tunnel
License : AnyConnect Premium
Encryption : AnyConnect-Parent: (1)none SSL-Tunnel: (1)AES-GCM-256
Hashing : AnyConnect-Parent: (1)none SSL-Tunnel: (1)SHA384
Bytes Tx : 14718 Bytes Rx : 12919
Pkts Tx : 2 Pkts Rx : 51
Pkts Tx Drop : 0 Pkts Rx Drop : 0
Group Policy : ftd-cert-match-grp Tunnel Group : ftd-cert-match-vpn
Login Time : 05:42:03 UTC Tue Jul 2 2024
Duration : 0h:00m:11s
Inactivity : 0h:00m:00s
VLAN Mapping : N/A VLAN : none
Audt Sess ID : 00000000000200006683932b
Security Grp : none Tunnel Zone : 0
AnyConnect-Parent Tunnels: 1
SSL-Tunnel Tunnels: 1
AnyConnect-Parent:
Tunnel ID : 32.1
Public IP : 192.168.1.11
Encryption : none Hashing : none
TCP Src Port : 50170 TCP Dst Port : 443
Auth Mode : Certificate
Idle Time Out: 30 Minutes Idle TO Left : 29 Minutes
Client OS : win
Client OS Ver: 10.0.17763
Client Type : AnyConnect
Client Ver : Cisco AnyConnect VPN Agent for Windows 5.1.4.74
Bytes Tx : 7359 Bytes Rx : 0
Pkts Tx : 1 Pkts Rx : 0
Pkts Tx Drop : 0 Pkts Rx Drop : 0
SSL-Tunnel:
Tunnel ID : 32.2
Assigned IP : 172.16.1.150 Public IP : 192.168.1.11
Encryption : AES-GCM-256 Hashing : SHA384
Ciphersuite : ECDHE-RSA-AES256-GCM-SHA384
Encapsulation: TLSv1.2 TCP Src Port : 50177
TCP Dst Port : 443 Auth Mode : Certificate
Idle Time Out: 30 Minutes Idle TO Left : 30 Minutes
Client OS : Windows
Client Type : SSL VPN Client
Client Ver : Cisco AnyConnect VPN Agent for Windows 5.1.4.74
Bytes Tx : 7359 Bytes Rx : 12919
Pkts Tx : 1 Pkts Rx : 51
Pkts Tx Drop : 0 Pkts Rx Drop : 0
疑難排解
您可以期待在Lina引擎的調試系統日誌和Windows電腦上的DART檔案中找到有關VPN身份驗證的資訊。
這是來自工程師客戶端的VPN連線期間Lina引擎中的調試日誌示例。
Jul 02 2024 04:16:03: %FTD-7-717029: Identified client certificate within certificate chain. serial number: 7AF1C78ADCC8F941, subject name: CN=vpnEngineerClientCN,OU=vpnEngineerClientOU,O=Cisco,L=Tokyo,ST=Tokyo,C=JP.
Jul 02 2024 04:16:03: %FTD-6-717022: Certificate was successfully validated. serial number: 7AF1C78ADCC8F941, subject name: CN=vpnEngineerClientCN,OU=vpnEngineerClientOU,O=Cisco,L=Tokyo,ST=Tokyo,C=JP.
Jul 02 2024 04:16:04: %FTD-6-113009: AAA retrieved default group policy (ftd-cert-match-grp) for user = vpnEngineerClientCN
Jul 02 2024 04:16:09: %FTD-6-725002: Device completed SSL handshake with client outside:192.168.1.11/50158 to 192.168.1.200/443 for TLSv1.2 session
相關資訊
設定Firepower 2100的FDM機上管理服務
在FDM管理的FTD上設定遠端存取VPN
在Firepower裝置管理器中配置和驗證系統日誌