目錄

簡介

必要條件

需求

採用元件

背景資訊

設定

第1步：使用OpenSSL建立自簽名證書和PKCS#12檔案

第2步：上載Azure和FDM上的PKCS#12檔案

步驟 2.1.將證書上傳到Azure

步驟 2.2.將憑證上傳到FDM

驗證

簡介

本文檔介紹如何透過FDM在CSF上使用Azure作為IdP為遠端訪問VPN的多個連線配置檔案配置SAML身份驗證。

必要條件

需求

思科建議您瞭解以下主題的基本知識：

- 安全通訊端層(SSL)憑證

- OpenSSL

- 遠端存取虛擬私人網路(RAVPN)

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

- 安全宣告標籤語言(SAML)

- Microsoft Azure

採用元件

本檔案中的資訊是根據以下軟體版本：

- OpenSSL

- 思科安全防火牆(CSF)版本7.4.1

- 思科安全防火牆裝置管理員版本7.4.1

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

背景資訊

SAML或安全斷言標籤語言是一種用於在各方之間交換身份驗證和授權資訊的開放標準，特別是身份提供程式(IdP)和服務提供程式(SP)。SAML身份驗證用於遠端訪問VPN (RAVPN)連線和多種其他應用程式因其眾多優勢而日益流行。在Firepower管理中心(FMC)上，由於連線配置檔案配置選單中的覆蓋身份提供程式證書選項，可以將多個連線配置檔案配置為使用不同受IdP保護的應用程式。此功能允許管理員使用每個連線設定檔的特定IdP憑證，覆寫單一登入(SSO)伺服器物件中的主要IdP憑證。但是，此功能在Firepower裝置管理器(FDM)上受到限制，因為它不提供類似的選項。如果配置了第二個SAML對象，則嘗試連線到第一個連線配置檔案會導致身份驗證失敗，並顯示錯誤消息：「由於檢索單一登入cookie時出現問題，身份驗證失敗」。 為繞過此限制，可以建立自定義自簽名證書並將其導入到Azure中，以便在所有應用程式中使用。如此一來，FDM中只需要安裝一個憑證，即可針對多個應用程式進行緊密的SAML驗證。

設定

第1步：使用OpenSSL建立自簽名證書和PKCS#12檔案

本節介紹如何使用OpenSSL建立自簽名證書

1. 登入已安裝OpenSSL庫的終結點。

注意：在本文檔中，使用的是Linux電腦，因此某些命令是特定於Linux環境的。但是，OpenSSL指令是相同的。

b.使用touch

.conf

命令建立配置檔案。

root@host# touch config.conf

c.使用文本編輯器編輯檔案。在本例中，使用Vim並運行vim

.conf

命令。您可以使用任何其他文字編輯器。

root@host# vim config.conf

d.輸入要包含在自簽中的資訊。

請務必以組織資訊取代< >之間的值。

[req]

distinguished_name = req_distinguished_name

prompt = no

[req_distinguished_name]

C =

ST =

L =

O =

OU =

CN =

e.使用此命令將生成一個新的2048位RSA私鑰和一個使用SHA-256演算法的自簽名證書，根據

.conf

檔案中指定的配置，有效期為3650天。私鑰儲存到

.pem

，並且自簽名證書儲存到

.crt

。

root@host# openssl req -newkey rsa:2048 -nodes -keyout

.pem -x509 -sha256 -days 3650 -config

.conf -out

.crt

f.在建立私鑰和自簽名證書之後，它將它們導出到PKCS#12檔案中，這是可以包括私鑰和證書的格式。

root@host# openssl pkcs12 -export -inkey

.pem -in

.crt -name

-out

.pfx

記下密碼。

第2步：上載Azure和FDM上的PKCS#12檔案

確保在Azure上為在FDM上使用SAML身份驗證的每個連線配置檔案建立應用程式。

當您具有步驟1：使用OpenSSL建立自簽名證書和PKCS#12檔案中的PKCS#12檔案後，必須針對多個應用程式將其上傳到Azure，並在FDM SSO配置中進行配置。

步驟 2.1.將證書上傳到Azure

a.登入您的Azure門戶，導航到要使用SAML身份驗證保護的企業應用程式，然後選擇單一登入。

b.向下滾動到SAML Certificates 部分，然後選擇More Options > Edit。

c.現在，選擇導入證書選項。

d.尋找先前建立的PKCS#12檔案，並使用您在建立PKCS#12檔案時輸入的密碼。

e.最後，選擇啟用證書選項。

注意：請務必執行步驟2.1：將證書上傳到每個應用程式的Azure。

步驟 2.2.將憑證上傳到FDM

a.導航至Objects > Certificates > Click Add Trusted CA certificate。

b.輸入您喜歡的信任點名稱，並僅從IdP（而非PKCS#12檔案）上傳身份證書，然後檢查Skip CA Certificate Check。

c.在SAML對象中設定新證書。

d.使用SAML作為身份驗證方法並在Azure中建立應用程式的不同連線配置檔案上設定SAML對象。部署更改

驗證

運行show running-config webvpn和show running-config tunnel-group命令以檢視配置，並驗證在不同連線配置檔案上配置了相同的IDP URL。

firepower#show running-confuting webvpn

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/anyconnect-win-4.10.08029-webdeploy-k9.pkg 2

anyconnect profiles defaultClientProfile disk0:/anyconncprofs/defaultClientProfile.xml

anyconnect enable

saml idp https://saml.lab.local/af42bac0

/

url sign-in https://login.saml.lab.local/af42bac0

/saml2

url sign-out https://login.saml.lab.local/af42bac0

/saml2

base-url https://Server.cisco.com

trustpoint idp

Azure_SSO

trustpoint sp FWCertificate

no signature

force re-authentication

tunnel-group-list enable

cache

disable

error-recovery disable

firepower#

firepower# show running-config tunnel-group

tunnel-group SAML_TG_Admin type remote-access

tunnel-group SAML_TG_Admin general-attributes

address-pool Admin_Pool

default-group-policy SAML_GP_Admin

tunnel-group SAML_TG_Admin webvpn-attributes

authentication saml

group-alias SAML_TG_Admin enable

saml identity-provider https://saml.lab.local/af42bac0

/

tunnel-group SAML_TG_IT type remote-access

tunnel-group SAML_TG_IT general-attributes

address-pool IT_Pool

default-group-policy SAML_GP_IT

tunnel-group SAML_TG_IT webvpn-attributes

authentication saml

group-alias SAML_TG_IT enable

saml identity-provider https://saml.lab.local/af42bac0

/

firepower#