Inhoud

Inleiding

Voorwaarden

Vereisten

Gebruikte componenten

Achtergrondinformatie

Configureren

Stap 1: Maak een zelfondertekend certificaat en PKCS#12 File met OpenSSL

Stap 2: Upload het PKCS#12-bestand op Azure en FDM

Stap 2.1. Certificaat uploaden naar Azure

Stap 2.2. Upload het certificaat naar de FDM

Verifiëren

Inleiding

In dit document wordt beschreven hoe u SAML-verificatie kunt configureren voor Meerdere verbindingsprofielen van externe toegang VPN met Azure als IdP op CSF via FDM.

Voorwaarden

Vereisten

Cisco raadt u aan een basiskennis te hebben van deze onderwerpen:

- Secure Socket Layer (SSL)-certificaten

- OpenSSL

- Remote Access Virtual Private Network (RAVPN)

- Cisco Secure Firewall Device Manager (FDM)

- Security Assertion Markup Language (SAML)

- Microsoft Azure

Gebruikte componenten

De informatie in dit document is gebaseerd op de volgende softwareversies:

- OpenSSL

- Cisco Secure Firewall (CSF) versie 7.4.1

- Cisco Secure Firewall Device Manager versie 7.4.1

De informatie in dit document is gebaseerd op de apparaten in een specifieke laboratoriumomgeving. Alle apparaten die in dit document worden beschreven, hadden een opgeschoonde (standaard)configuratie. Als uw netwerk live is, moet u zorgen dat u de potentiële impact van elke opdracht begrijpt.

Achtergrondinformatie

SAML, of Security Assertion Markup Language, is een open standaard voor het uitwisselen van verificatie- en autorisatiegegevens tussen partijen, met name een Identity Provider (IDP) en een Service Provider (SP). Het gebruik van SAML-verificatie voor RAVPN-verbindingen (Remote Access VPN) en diverse andere toepassingen is steeds populairder geworden vanwege de vele voordelen. In het Firepower Management Center (FMC) kunnen meerdere verbindingsprofielen worden geconfigureerd voor het gebruik van verschillende met IDP beschermde toepassingen, dankzij de optie Override Identity Provider Certificate die beschikbaar is in het configuratiemenu van het verbindingsprofiel. Met deze functie kunnen beheerders het primaire IDP-certificaat in het SSO-serverobject (Single Sign-On) overschrijven met een specifiek IDP-certificaat voor elk verbindingsprofiel. Deze functionaliteit is echter beperkt voor Firepower Device Manager (FDM) omdat deze geen vergelijkbare optie biedt. Als er een tweede SAML-object is geconfigureerd, resulteert een poging om verbinding te maken met het eerste verbindingsprofiel in een verificatiefout door de foutmelding weer te geven: "Verificatie mislukt vanwege een probleem bij het ophalen van de enkele aanmelding-cookie." Om deze beperking te omzeilen, kan een aangepast zelfondertekend certificaat worden gemaakt en geïmporteerd in Azure voor gebruik in alle toepassingen. Hierbij hoeft slechts één certificaat in de FDM te worden geïnstalleerd, waardoor een naadloze SAML-verificatie voor meerdere toepassingen mogelijk is.

Configureren

Stap 1: Maak een zelfondertekend certificaat en PKCS#12 File met OpenSSL

In deze sectie wordt beschreven hoe u het zelfondertekende certificaat maakt met OpenSSL

1. Meld u aan bij een eindpunt waarop de OpenSSL-bibliotheek is geïnstalleerd.

Opmerking: in dit document wordt een Linux-machine gebruikt, dus sommige opdrachten zijn specifiek voor een Linux-omgeving. De opdrachten voor OpenSSL zijn echter hetzelfde.

b. Maak een configuratiebestand met de opdrachttouch

.conf

.

root@host# touch config.conf

c. Bewerk het bestand met een teksteditor. In dit voorbeeld wordt Vim gebruikt en wordt de  vim

.conf

opdracht uitgevoerd. U kunt elke andere teksteditor gebruiken.

root@host# vim config.conf

d. Voer de informatie in die in het zelfondertekende document moet worden opgenomen.

Verzeker u ervan dat u de waarden tussen < > en de informatie van uw organisatie vervangt.

[req]

distinguished_name = req_distinguished_name

prompt = no

[req_distinguished_name]

C =

ST =

L =

O =

OU =

CN =

e. Met deze opdracht wordt een nieuwe 2048-bits RSA-privésleutel en een zelfondertekend certificaat gegenereerd met behulp van het SHA-256-algoritme, geldig voor 3650 dagen, op basis van de configuratie die in het

.conf

bestand is gespecificeerd. De persoonlijke sleutel wordt opgeslagen in

.pem

en het zelfondertekende certificaat wordt opgeslagen in

.crt

.

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

.pem -x509 -sha256 -days 3650 -config

.conf -out

.crt

f. Na het maken van de privé-sleutel en het zelfondertekende certificaat, exporteert het deze naar een PKCS#12-bestand, dat een formaat is dat zowel de privé-sleutel als het certificaat kan bevatten.

root@host# openssl pkcs12 -export -inkey

.pem -in

.crt -name

-out

.pfx

Noteer het wachtwoord.

Stap 2: Upload het PKCS#12-bestand op Azure en FDM

Zorg ervoor dat u op Azure een toepassing maakt voor elk verbindingsprofiel dat SAML-verificatie gebruikt op de FDM.

Zodra u het PKCS#12-bestand uit Stap 1 hebt: Maak een zelfondertekend certificaat en PKCS#12-bestand met OpenSSL, moet het worden geüpload naar Azure voor meerdere toepassingen en geconfigureerd in de FDM SSO-configuratie.

Stap 2.1. Certificaat uploaden naar Azure

a. Log in op uw Azure-portal, navigeer naar de Enterprise-applicatie die u wilt beveiligen met SAML-verificatie en selecteer Single Sign-On.

b. Blader naar beneden naar het gedeelte SAML-certificaten en selecteer de optie Meer opties > Bewerken.

c. Selecteer nu de optie Certificaat importeren.

d. Zoek het PKCS#12-bestand dat eerder is gemaakt en gebruik het wachtwoord dat u hebt ingevoerd toen u het PKCS#12-bestand hebt gemaakt.

e. Selecteer tot slot de optie Certificaat actief maken.

Opmerking: Zorg ervoor dat u Stap 2.1 uitvoert: Upload het certificaat naar Azure voor elke toepassing.

Stap 2.2. Upload het certificaat naar de FDM

a. Navigeer naar Objects > Certificates > Click Add Trusted CA certificate.

b. Voer de naam in van het vertrouwingspunt dat u wenst en upload alleen het identiteitsbewijs van de IDP (niet het PKCS#12-bestand) en controleer de Skip CA Certificate Checkgegevens.

c. Stel het nieuwe certificaat in het SAML-object in.

d. Stel het SAML-object in op de verschillende verbindingsprofielen die SAML gebruiken als de verificatiemethode en waarvoor de toepassing is gemaakt in Azure. De wijzigingen implementeren

Verifiëren

Voer de opdrachten show running-configwebvpn enshow running-config tunnel-groupuit om de configuratie te bekijken en te controleren of dezelfde URL voor IDP is geconfigureerd op de verschillende verbindingsprofielen.

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#