Inleiding
Dit document beschrijft hoe u een pc kunt aansluiten op een Cisco adaptieve security applicatie (ASA) met behulp van AnyConnect IPsec (IKEv2) en certificaat- en verificatie-, autorisatie- en accounting (AAA)-verificatie.
Opmerking: in het voorbeeld in dit document worden alleen de relevante onderdelen beschreven die worden gebruikt om een IKEv2-verbinding te maken tussen de ASA en AnyConnect. Een volledig configuratievoorbeeld wordt niet geboden. De configuratie van een netwerkadresomzetting (NAT) of toegangslijst wordt niet in dit document beschreven of vereist.
Voorbereiden op de verbinding
In deze sectie worden de voorbereidingen beschreven die moeten worden uitgevoerd voordat u uw pc op de ASA kunt aansluiten.
Certificaten met juiste EKU
Het is belangrijk om op te merken dat hoewel het niet vereist is voor de ASA en AnyConnect combinatie, RFC vereist dat certificaten Extended Key Usage (EKU) hebben:
- Het certificaat voor de ASA moet de server-auth EKU bevatten.
- Het certificaat voor de PC moet de client-auth EKU bevatten.
Opmerking: een IOS-router met de recente software-revisie kan EKU's op certificaten plaatsen.
Configuratie op de ASA
In deze sectie worden de ASA-configuraties beschreven die vereist zijn voordat de verbinding plaatsvindt.
Opmerking: met Cisco Adaptive Security Device Manager (ASDM) kunt u de basisconfiguratie met slechts een paar klikken maken. Cisco raadt het gebruik ervan aan om fouten te voorkomen.
Configuratie cryptokaart
Hier is een crypto kaart voorbeeld configuratie:
crypto dynamic-map DYN 1 set pfs group1
crypto dynamic-map DYN 1 set ikev2 ipsec-proposal secure
crypto dynamic-map DYN 1 set reverse-route
crypto map STATIC 65535 ipsec-isakmp dynamic DYN
crypto map STATIC interface outside
IPsec-voorstellen
Hier is een voorbeeldconfiguratie van IPsec-voorstel:
crypto ipsec ikev2 ipsec-proposal secure
protocol esp encryption aes 3des
protocol esp integrity sha-1
crypto ipsec ikev2 ipsec-proposal AES256-SHA
protocol esp encryption aes-256
protocol esp integrity sha-1
IKEv2-beleid
Hier is een IKEv2 beleidsvoorbeeldconfiguratie:
crypto ikev2 policy 1
encryption aes-256
integrity sha
group 5 2
prf sha
lifetime seconds 86400
crypto ikev2 policy 10
encryption aes-192
integrity sha
group 5 2
prf sha
lifetime seconds 86400
crypto ikev2 policy 20
encryption aes
integrity sha
group 5 2
prf sha
lifetime seconds 86400
crypto ikev2 policy 30
encryption 3des
integrity sha
group 5 2
prf sha
lifetime seconds 86400
crypto ikev2 policy 40
encryption des
integrity sha
group 5 2
prf sha
lifetime seconds 86400
Clientservices en -certificaat
U moet de cliëntdiensten en certificaten op de correcte interface toelaten, die in dit geval de buiteninterface is. Hier is een voorbeeldconfiguratie:
crypto ikev2 enable outside client-services port 443
crypto ikev2 remote-access trustpoint OUTSIDE
ssl trust-point OUTSIDE outside
Opmerking: hetzelfde trustpoint wordt ook toegewezen aan Secure Sockets Layer (SSL), dat bedoeld en vereist is.
AnyConnect-profiel inschakelen
U moet het AnyConnect-profiel inschakelen op de ASA. Hier is een voorbeeldconfiguratie:
webvpn
enable outside
anyconnect image disk0:/anyconnect-win-3.0.5080-k9.pkg 1 regex "Windows NT"
anyconnect profiles Anyconnect disk0:/anyconnect.xml
anyconnect enable
tunnel-group-list enable
Gebruikersnaam, groepsbeleid en tunnelgroep
Hier is een voorbeeldconfiguratie voor een basisgebruikersnaam, groepsbeleid en tunnelgroep op de ASA:
group-policy GroupPolicy_AC internal
group-policy GroupPolicy_AC attributes
dns-server value 4.2.2.2
vpn-tunnel-protocol ikev1 ikev2 l2tp-ipsec ssl-client ssl-clientless
default-domain value cisco.com
webvpn
anyconnect profiles value Anyconnect type user
username cisco password 3USUcOPFUiMCO4Jk encrypted privilege 15
tunnel-group AC type remote-access
tunnel-group AC general-attributes
address-pool VPN-POOL
default-group-policy GroupPolicy_AC
tunnel-group AC webvpn-attributes
authentication aaa certificate
group-alias AC enable
group-url https://bsns-asa5520-1.cisco.com/AC enable
without-csd
AnyConnect-profiel
Hier is een voorbeeldprofiel met de relevante onderdelen in vet weergegeven:
<?xml version="1.0" encoding="UTF-8"?>
<AnyConnectProfile xmlns="http://schemas.xmlsoap.org/encoding/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=
"http://schemas.xmlsoap.org/encoding/ AnyConnectProfile.xsd">
<ClientInitialization>
<UseStartBeforeLogon UserControllable="true">false</UseStartBeforeLogon>
<AutomaticCertSelection UserControllable="true">false
</AutomaticCertSelection>
<ShowPreConnectMessage>false</ShowPreConnectMessage>
<CertificateStore>All</CertificateStore>
<CertificateStoreOverride>false</CertificateStoreOverride>
<ProxySettings>Native</ProxySettings>
<AllowLocalProxyConnections>true</AllowLocalProxyConnections>
<AuthenticationTimeout>12</AuthenticationTimeout>
<AutoConnectOnStart UserControllable="true">false</AutoConnectOnStart>
<MinimizeOnConnect UserControllable="true">true</MinimizeOnConnect>
<LocalLanAccess UserControllable="true">false</LocalLanAccess>
<ClearSmartcardPin UserControllable="true">true</ClearSmartcardPin>
<AutoReconnect UserControllable="false">true
<AutoReconnectBehavior UserControllable="false">DisconnectOnSuspend
</AutoReconnectBehavior>
</AutoReconnect>
<AutoUpdate UserControllable="false">true</AutoUpdate>
<RSASecurIDIntegration UserControllable="true">Automatic
</RSASecurIDIntegration>
<WindowsLogonEnforcement>SingleLocalLogon</WindowsLogonEnforcement>
<WindowsVPNEstablishment>LocalUsersOnly</WindowsVPNEstablishment>
<AutomaticVPNPolicy>false</AutomaticVPNPolicy>
<PPPExclusion UserControllable="false">Disable
<PPPExclusionServerIP UserControllable="false"></PPPExclusionServerIP>
</PPPExclusion>
<EnableScripting UserControllable="false">false</EnableScripting>
<EnableAutomaticServerSelection UserControllable="false">false
<AutoServerSelectionImprovement>20</AutoServerSelectionImprovement>
<AutoServerSelectionSuspendTime>4</AutoServerSelectionSuspendTime>
</EnableAutomaticServerSelection>
<RetainVpnOnLogoff>false
</RetainVpnOnLogoff>
</ClientInitialization>
<ServerList>
<HostEntry>
bsns-asa5520-1
<HostAddress>bsns-asa5520-1.cisco.com</HostAddress>
<UserGroup>AC</UserGroup>
<PrimaryProtocol>IPsec</PrimaryProtocol>
</HostEntry>
</ServerList>
</AnyConnectProfile>
Hier zijn enkele belangrijke opmerkingen over dit configuratievoorbeeld:
- Wanneer u het profiel maakt, moet het hostadres overeenkomen met de certificaatnaam (CN) op het certificaat dat voor IKEv2 wordt gebruikt. Voer de opdracht crypto ikev2 remote-access trustpoint in om dit te definiëren.
- De Gebruikersgroep moet de naam van de tunnelgroep aanpassen waaraan de IKEv2-verbinding valt. Als ze niet matchen, faalt de verbinding vaak en de debugs wijzen op een Diffie-Hellman (DH) groep mismatch of een gelijkaardig vals negatief.
Maak de verbinding
In deze sectie wordt de PC-to-ASA verbinding beschreven wanneer het profiel al aanwezig is.
Opmerking: de informatie die u in de GUI invoert om verbinding te maken, is de waarde van <HostName> die in het AnyConnect-profiel is geconfigureerd. In dit geval wordt bsns-asa5520-1 ingevoerd, niet de volledige FQDN-domeinnaam.
Wanneer u voor het eerst probeert verbinding te maken met AnyConnect, vraagt de gateway u om het certificaat te selecteren (indien automatische certificaatselectie is uitgeschakeld):
U dient vervolgens de gebruikersnaam en het wachtwoord in te voeren:
Zodra de gebruikersnaam en het wachtwoord zijn geaccepteerd, is de verbinding succesvol en kunnen de AnyConnect-statistieken worden geverifieerd:
Verificatie inzake ASA
Voer deze opdracht in op de ASA om te controleren of de verbinding zowel IKEv2 als AAA- en certificaatverificatie gebruikt:
bsns-asa5520-1# show vpn-sessiondb detail anyconnect filter name cisco
Session Type: AnyConnect Detailed
Username : cisco Index : 6
Assigned IP : 172.16.99.5 Public IP : 1.2.3.4
Protocol : IKEv2 IPsecOverNatT AnyConnect-Parent
License : AnyConnect Premium
Encryption : AES256 AES128 Hashing : none SHA1 SHA1
Bytes Tx : 0 Bytes Rx : 960
Pkts Tx : 0 Pkts Rx : 10
Pkts Tx Drop : 0 Pkts Rx Drop : 0
Group Policy : GroupPolicy_AC Tunnel Group : AC
Login Time : 15:45:41 UTC Tue Aug 28 2012
Duration : 0h:02m:41s
Inactivity : 0h:00m:00s
NAC Result : Unknown
VLAN Mapping : N/A VLAN : none
IKEv2 Tunnels: 1
IPsecOverNatT Tunnels: 1
AnyConnect-Parent Tunnels: 1
AnyConnect-Parent:
Tunnel ID : 6.1
Public IP : 1.2.3.4
Encryption : none Auth Mode : Certificate and userPassword
Idle Time Out: 30 Minutes Idle TO Left : 27 Minutes
Client Type : AnyConnect
Client Ver : 3.0.08057
IKEv2:
Tunnel ID : 6.2
UDP Src Port : 60468 UDP Dst Port : 4500
Rem Auth Mode: Certificate and userPassword
Loc Auth Mode: rsaCertificate
Encryption : AES256 Hashing : SHA1
Rekey Int (T): 86400 Seconds Rekey Left(T): 86238 Seconds
PRF : SHA1 D/H Group : 5
Filter Name :
Client OS : Windows
IPsecOverNatT:
Tunnel ID : 6.3
Local Addr : 0.0.0.0/0.0.0.0/0/0
Remote Addr : 172.16.99.5/255.255.255.255/0/0
Encryption : AES128 Hashing : SHA1\
Encapsulation: Tunnel
Rekey Int (T): 28800 Seconds Rekey Left(T): 28638 Seconds
Rekey Int (D): 4608000 K-Bytes Rekey Left(D): 4608000 K-Bytes
Idle Time Out: 30 Minutes Idle TO Left : 27 Minutes
Bytes Tx : 0 Bytes Rx : 960
Pkts Tx : 0 Pkts Rx : 10
Bekende voorbehouden
Dit zijn de bekende voorbehouden en kwesties die verband houden met de informatie die in dit document wordt beschreven:
- De trustpoints IKEv2 en SSL moeten hetzelfde zijn.
- Cisco raadt u aan de FQDN te gebruiken als de CN voor de ASA-zijcertificaten. Zorg ervoor dat u dezelfde FQDN-naam gebruikt voor het <HostAddress> in het AnyConnect-profiel.
- Vergeet niet om de <HostName>-waarde in het AnyConnect-profiel op te nemen wanneer u verbinding maakt.
- Zelfs in de IKEv2-configuratie, wanneer AnyConnect verbinding maakt met de ASA, downloadt het profiel en binaire updates via SSL, maar niet via IPsec.
- De AnyConnect-verbinding via IKEv2 met de ASA maakt gebruik van EAP-AnyConnect, een bedrijfseigen mechanisme dat een eenvoudiger implementatie mogelijk maakt.