Voorbeeldconfiguratie: Cisco ASA-apparaat (IKEv2/geen BGP)

Dit artikel bevat voorbeeldconfiguraties voor het verbinden van ASA-apparaten (Cisco Adaptive Security Appliance) met Azure VPN-gateways. Het voorbeeld is van toepassing op Cisco ASA-apparaten waarop IKEv2 wordt uitgevoerd zonder het Border Gateway Protocol (BGP).

Apparaat in één oogopslag

  • Apparaatleverancier: Cisco
  • Apparaatmodel: ASA
  • Doelversie: 8.4 en hoger
  • Getest model: ASA 5505
  • Geteste versie: 9.2
  • IKE-versie: IKEv2
  • BGP: Nee
  • Type Azure VPN-gateway: op route gebaseerde VPN-gateway

Notitie

De voorbeeldconfiguratie verbindt een Cisco ASA-apparaat met een op route gebaseerde VPN-gateway van Azure. De verbinding maakt gebruik van een aangepast IPsec/IKE-beleid met de optie UsePolicyBasedTrafficSelectors , zoals beschreven in dit artikel.

Het voorbeeld vereist dat ASA-apparaten het IKEv2-beleid gebruiken met configuraties op basis van toegangslijsten, niet op basis van VTI. Raadpleeg de specificaties van de leverancier van uw VPN-apparaat om te controleren of het IKEv2-beleid wordt ondersteund op uw on-premises VPN-apparaten.

Vereisten voor VPN-apparaten

Azure VPN-gateways gebruiken de standaard IPsec-/IKE-protocolsuites om site-naar-site-VPN-tunnels (S2S) tot stand te brengen. Zie Over VPN-apparaten voor gedetailleerde IPsec-/IKE-protocolparameters en standaard cryptografische algoritmen voor Azure VPN-gateways.

Notitie

U kunt desgewenst een exacte combinatie van cryptografische algoritmen en belangrijke sterke punten voor een specifieke verbinding opgeven, zoals beschreven in Over cryptografische vereisten. Als u een exacte combinatie van algoritmen en belangrijke sterke punten opgeeft, moet u de bijbehorende specificaties op uw VPN-apparaten gebruiken.

Eén VPN-tunnel

Deze configuratie bestaat uit één S2S VPN-tunnel tussen een Azure VPN-gateway en een on-premises VPN-apparaat. U kunt de BGP desgewenst configureren via de VPN-tunnel.

Enkele S2S VPN-tunnel

Zie Installatie van enkele VPN-tunnel voor stapsgewijze instructies voor het bouwen van de Azure-configuraties.

Informatie over virtueel netwerk en VPN-gateway

In deze sectie vindt u de parameters voor het voorbeeld.

Parameter Waarde
Adresvoorvoegsels van virtueel netwerk 10.11.0.0/16
10.12.0.0/16
IP-adres van Azure VPN-gateway Azure_Gateway_Public_IP
On-premises adresvoorvoegsels 10.51.0.0/16
10.52.0.0/16
IP-adres van on-premises VPN-apparaat OnPrem_Device_Public_IP
* Virtual network BGP ASN 65010
* Ip-adres van Azure BGP-peer 10.12.255.30
* On-premises BGP ASN 65050
* Ip-adres van on-premises BGP-peer 10.52.255.254

* Optionele parameter alleen voor BGP.

IPsec/IKE-beleid en -parameters

De volgende tabel bevat de IPsec-/IKE-algoritmen en -parameters die in het voorbeeld worden gebruikt. Raadpleeg de specificaties van uw VPN-apparaat om de algoritmen te controleren die worden ondersteund voor uw VPN-apparaatmodellen en firmwareversies.

IPsec/IKEv2 Waarde
IKEv2-versleuteling AES256
IKEv2-integriteit SHA384
DH-groep DHGroup24
* IPsec-versleuteling AES256
* IPsec-integriteit SHA1
PFS-groep PFS24
QM SA-levensduur 7.200 seconden
Verkeersselector UsePolicyBasedTrafficSelectors $True
Vooraf gedeelde sleutel PreSharedKey

* Op sommige apparaten moet IPsec-integriteit een null-waarde zijn wanneer het algoritme voor IPsec-versleuteling AES-GCM is.

Ondersteuning voor ASA-apparaten

  • Voor ondersteuning van IKEv2 is ASA versie 8.4 en hoger vereist.

  • Voor ondersteuning voor DH-groep en PFS-groep buiten groep 5 is ASA versie 9.x vereist.

  • Voor ondersteuning van IPsec-versleuteling met AES-GCM en IPsec-integriteit met SHA-256, SHA-384 of SHA-512 is ASA versie 9.x vereist. Deze ondersteuningsvereiste is van toepassing op nieuwere ASA-apparaten. Op het moment van publicatie ondersteunen ASA-modellen 5505, 5510, 5520, 5540, 5550 en 5580 deze algoritmen niet. Raadpleeg de specificaties van uw VPN-apparaat om de algoritmen te controleren die worden ondersteund voor uw VPN-apparaatmodellen en firmwareversies.

Voorbeeld van apparaatconfiguratie

Het script biedt een voorbeeld dat is gebaseerd op de configuratie en parameters die in de vorige secties worden beschreven. De configuratie van de S2S VPN-tunnel bestaat uit de volgende onderdelen:

  1. Interfaces en routes
  2. Toegangslijsten
  3. IKE-beleid en -parameters (fase 1 of hoofdmodus)
  4. IPsec-beleid en -parameters (fase 2 of snelle modus)
  5. Andere parameters, zoals TCP MSS-klem

Belangrijk

Voer de volgende stappen uit voordat u het voorbeeldscript gebruikt. Vervang de waarden van de tijdelijke aanduidingen in het script door de apparaatinstellingen voor uw configuratie.

  • Geef de interfaceconfiguratie op voor zowel binnen- als buiteninterfaces.
  • Identificeer de routes voor uw binnen-/privé- en buiten-/openbare netwerken.
  • Zorg ervoor dat alle namen en beleidsnummers uniek zijn op uw apparaat.
  • Zorg ervoor dat de cryptografische algoritmen worden ondersteund op uw apparaat.
  • Vervang de volgende waarden voor tijdelijke aanduidingen door werkelijke waarden voor uw configuratie:
    • Naam van externe interface: buiten
    • Azure_Gateway_Public_IP
    • OnPrem_Device_Public_IP
    • IKE: Pre_Shared_Key
    • Namen van virtuele netwerken en lokale netwerkgateways: VNetName en LNGName
    • Adresvoorvoegsels voor virtueel netwerk en on-premises netwerk
    • Juiste netmaskers

Voorbeeldscript

! Sample ASA configuration for connecting to Azure VPN gateway
!
! Tested hardware: ASA 5505
! Tested version:  ASA version 9.2(4)
!
! Replace the following place holders with your actual values:
!   - Interface names - default are "outside" and "inside"
!   - <Azure_Gateway_Public_IP>
!   - <OnPrem_Device_Public_IP>
!   - <Pre_Shared_Key>
!   - <VNetName>*
!   - <LNGName>* ==> LocalNetworkGateway - the Azure resource that represents the
!     on-premises network, specifies network prefixes, device public IP, BGP info, etc.
!   - <PrivateIPAddress> ==> Replace it with a private IP address if applicable
!   - <Netmask> ==> Replace it with appropriate netmasks
!   - <Nexthop> ==> Replace it with the actual nexthop IP address
!
! (*) Must be unique names in the device configuration
!
! ==> Interface & route configurations
!
!     > <OnPrem_Device_Public_IP> address on the outside interface or vlan
!     > <PrivateIPAddress> on the inside interface or vlan; e.g., 10.51.0.1/24
!     > Route to connect to <Azure_Gateway_Public_IP> address
!
!     > Example:
!
!       interface Ethernet0/0
!        switchport access vlan 2
!       exit
!
!       interface vlan 1
!        nameif inside
!        security-level 100
!        ip address <PrivateIPAddress> <Netmask>
!       exit
!
!       interface vlan 2
!        nameif outside
!        security-level 0
!        ip address <OnPrem_Device_Public_IP> <Netmask>
!       exit
!
!       route outside 0.0.0.0 0.0.0.0 <NextHop IP> 1
!
! ==> Access lists
!
!     > Most firewall devices deny all traffic by default. Create access lists to
!       (1) Allow S2S VPN tunnels between the ASA and the Azure gateway public IP address
!       (2) Construct traffic selectors as part of IPsec policy or proposal
!
access-list outside_access_in extended permit ip host <Azure_Gateway_Public_IP> host <OnPrem_Device_Public_IP>
!
!     > Object group that consists of all VNet prefixes (e.g., 10.11.0.0/16 &
!       10.12.0.0/16)
!
object-group network Azure-<VNetName>
 description Azure virtual network <VNetName> prefixes
 network-object 10.11.0.0 255.255.0.0
 network-object 10.12.0.0 255.255.0.0
exit
!
!     > Object group that corresponding to the <LNGName> prefixes.
!       E.g., 10.51.0.0/16 and 10.52.0.0/16. Note that LNG = "local network gateway".
!       In Azure network resource, a local network gateway defines the on-premises
!       network properties (address prefixes, VPN device IP, BGP ASN, etc.)
!
object-group network <LNGName>
 description On-Premises network <LNGName> prefixes
 network-object 10.51.0.0 255.255.0.0
 network-object 10.52.0.0 255.255.0.0
exit
!
!     > Specify the access-list between the Azure VNet and your on-premises network.
!       This access list defines the IPsec SA traffic selectors.
!
access-list Azure-<VNetName>-acl extended permit ip object-group <LNGName> object-group Azure-<VNetName>
!
!     > No NAT required between the on-premises network and Azure VNet
!
nat (inside,outside) source static <LNGName> <LNGName> destination static Azure-<VNetName> Azure-<VNetName>
!
! ==> IKEv2 configuration
!
!     > General IKEv2 configuration - enable IKEv2 for VPN
!
group-policy DfltGrpPolicy attributes
 vpn-tunnel-protocol ikev1 ikev2
exit
!
crypto isakmp identity address
crypto ikev2 enable outside
!
!     > Define IKEv2 Phase 1/Main Mode policy
!       - Make sure the policy number is not used
!       - integrity and prf must be the same
!       - DH group 14 and above require ASA version 9.x.
!
crypto ikev2 policy 1
 encryption       aes-256
 integrity        sha384
 prf              sha384
 group            24
 lifetime seconds 86400
exit
!
!     > Set connection type and pre-shared key
!
tunnel-group <Azure_Gateway_Public_IP> type ipsec-l2l
tunnel-group <Azure_Gateway_Public_IP> ipsec-attributes
 ikev2 remote-authentication pre-shared-key <Pre_Shared_Key> 
 ikev2 local-authentication  pre-shared-key <Pre_Shared_Key> 
exit
!
! ==> IPsec configuration
!
!     > IKEv2 Phase 2/Quick Mode proposal
!       - AES-GCM and SHA-2 requires ASA version 9.x on newer ASA models. ASA
!         5505, 5510, 5520, 5540, 5550, 5580 are not supported.
!       - ESP integrity must be null if AES-GCM is configured as ESP encryption
!
crypto ipsec ikev2 ipsec-proposal AES-256
 protocol esp encryption aes-256
 protocol esp integrity  sha-1
exit
!
!     > Set access list & traffic selectors, PFS, IPsec proposal, SA lifetime
!       - This sample uses "Azure-<VNetName>-map" as the crypto map name
!       - ASA supports only one crypto map per interface, if you already have
!         an existing crypto map assigned to your outside interface, you must use
!         the same crypto map name, but with a different sequence number for
!         this policy
!       - "match address" policy uses the access-list "Azure-<VNetName>-acl" defined 
!         previously
!       - "ipsec-proposal" uses the proposal "AES-256" defined previously 
!       - PFS groups 14 and beyond requires ASA version 9.x.
!
crypto map Azure-<VNetName>-map 1 match address Azure-<VNetName>-acl
crypto map Azure-<VNetName>-map 1 set pfs group24
crypto map Azure-<VNetName>-map 1 set peer <Azure_Gateway_Public_IP>
crypto map Azure-<VNetName>-map 1 set ikev2 ipsec-proposal AES-256
crypto map Azure-<VNetName>-map 1 set security-association lifetime seconds 7200
crypto map Azure-<VNetName>-map interface outside
!
! ==> Set TCP MSS to 1350
!
sysopt connection tcpmss 1350
!

Eenvoudige opdrachten voor foutopsporing

Gebruik de volgende ASA-opdrachten voor foutopsporing:

  • De IPsec- of IKE-beveiligingskoppeling (SA) weergeven:

    show crypto ipsec sa
    show crypto ikev2 sa
    
  • De foutopsporingsmodus activeren:

    debug crypto ikev2 platform <level>
    debug crypto ikev2 protocol <level>
    

    De debug opdrachten kunnen aanzienlijke uitvoer genereren op de console.

  • De huidige configuraties op het apparaat weergeven:

    show run
    

    Gebruik show subopdrachten om specifieke onderdelen van de apparaatconfiguratie weer te geven, bijvoorbeeld:

    show run crypto
    show run access-list
    show run tunnel-group
    

Volgende stappen

Zie Actief-actief-VPN-gateways configureren om cross-premises en VNet-naar-VNet-verbindingen te configureren.