Dans le cadre de la documentation associée à ce produit, nous nous efforçons d’utiliser un langage exempt de préjugés. Dans cet ensemble de documents, le langage exempt de discrimination renvoie à une langue qui exclut la discrimination en fonction de l’âge, des handicaps, du genre, de l’appartenance raciale de l’identité ethnique, de l’orientation sexuelle, de la situation socio-économique et de l’intersectionnalité. Des exceptions peuvent s’appliquer dans les documents si le langage est codé en dur dans les interfaces utilisateurs du produit logiciel, si le langage utilisé est basé sur la documentation RFP ou si le langage utilisé provient d’un produit tiers référencé. Découvrez comment Cisco utilise le langage inclusif.
Cisco a traduit ce document en traduction automatisée vérifiée par une personne dans le cadre d’un service mondial permettant à nos utilisateurs d’obtenir le contenu d’assistance dans leur propre langue. Il convient cependant de noter que même la meilleure traduction automatisée ne sera pas aussi précise que celle fournie par un traducteur professionnel.
Ce document décrit comment effectuer la posture pour les sessions VPN à distance terminées sur l’appareil de sécurité adaptatif (ASA).
Cisco vous recommande de prendre connaissance des rubriques suivantes :
Les informations contenues dans ce document sont basées sur les versions de matériel et de logiciel suivantes :
La posture est effectuée localement par ASA avec l'utilisation de Cisco Secure Desktop (CSD) avec le module HostScan.
Une fois la session VPN établie, les stations conformes sont autorisées à accéder à l'intégralité du réseau, tandis que les stations non conformes ont un accès limité au réseau.
Les flux de mise en service de CSD et AnyConnect 4.0 sont également présentés.
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. Si votre réseau est en ligne, assurez-vous de bien comprendre l’incidence possible des commandes.
La politique de l'entreprise est la suivante :
L'existence de fichiers en est l'exemple le plus simple. Toute autre condition (antivirus, antispyware, processus, application, registre) peut être utilisée.
Le flux est le suivant :
Le module HostScan peut être installé manuellement sur le terminal. Les fichiers d'exemples (hostscan-win-4.0.00051-pre-deploy-k9.msi) sont partagés sur Cisco Connection Online (CCO). Mais, il peut également être poussé depuis ASA. HostScan fait partie de CSD qui pourrait être provisionné à partir d'ASA. Cette seconde approche est utilisée dans cet exemple.
Pour les versions antérieures d'AnyConnect (3.1 et antérieures), un package distinct était disponible sur CCO (par exemple : hostscan_3.1.06073-k9.pkg) qui aurait pu être configuré et provisionné sur ASA séparément (avec la commande csd hostscan image) - mais cette option n'existe plus pour AnyConnect version 4.0.
ASA est préconfiguré avec un accès VPN à distance de base (SSL (Secure Sockets Layer)) :
webvpn
enable outside
no anyconnect-essentials
anyconnect image disk0:/anyconnect-win-4.0.00051-k9.pkg 1
anyconnect enable
tunnel-group-list enable
group-policy AllProtocols internal
group-policy AllProtocols attributes
vpn-tunnel-protocol ikev1 ikev2 ssl-client ssl-clientless
tunnel-group TAC type remote-access
tunnel-group TAC general-attributes
address-pool POOL
authentication-server-group ISE3
default-group-policy AllProtocols
tunnel-group TAC webvpn-attributes
group-alias TAC enable
ip local pool POOL 192.168.1.10-192.168.1.20 mask 255.255.255.0
aaa-server ISE3 protocol radius
aaa-server ISE3 (inside) host 10.1.1.100
key *****
Le package AnyConnect a été téléchargé et utilisé.
La configuration suivante est effectuée avec Adaptive Security Device Manager (ASDM). Le package CSD doit être téléchargé pour pouvoir être mis en mémoire flash et prendre référence à partir de la configuration, comme indiqué dans l'image.
Sans l'activation de Secure Desktop, il ne serait pas possible d'utiliser les attributs CSD dans les politiques DAP, comme illustré dans l'image.
Une fois que vous avez activé CSD, plusieurs options s'affichent sous Secure Desktop Manager.
L'existence de c:\test.txt est vérifiée comme indiqué dans l'image.
En outre, une règle d'évaluation avancée des points de terminaison supplémentaire est ajoutée, comme illustré dans l'image.
Celui-ci vérifie l'existence de Symantec Norton AntiVirus 20.x et du pare-feu Microsoft Windows 7. Le module de posture (HostScan) vérifie ces valeurs mais il n'y a pas d'application (la stratégie DAP ne vérifie pas cela).
Les stratégies DAP sont responsables d'utiliser les données collectées par HostScan comme conditions et d'appliquer des attributs spécifiques à la session VPN en conséquence. Afin de créer une politique DAP à partir d'ASDM, naviguez à Configuration > Remote Access VPN > Clientless SSL VPN Access > Dynamic Access Policies comme indiqué dans l'image.
La première stratégie (FileExists) vérifie le nom du groupe de tunnels utilisé par le profil VPN configuré (la configuration du profil VPN a été omise pour plus de clarté). Ensuite, une vérification supplémentaire du fichier c:\test.txt est effectuée comme indiqué dans l'image.
Par conséquent, aucune action n'est effectuée avec le paramètre par défaut afin d'autoriser la connectivité. Aucune liste de contrôle d’accès n’est utilisée : accès réseau complet fourni.
Les détails de la vérification des fichiers sont indiqués dans l'image.
La deuxième stratégie (FileNotExists) est similaire, mais cette condition temporelle est si le fichier n'existe pas comme indiqué dans l'image.
La liste de contrôle d’accès ACL1 est configurée pour le résultat. Cela s'applique aux utilisateurs VPN non conformes disposant d'un accès réseau limité.
Les deux politiques DAP poussent pour l'accès AnyConnect Client comme montré dans l'image.
ISE est utilisé pour l'authentification des utilisateurs. Seuls le périphérique réseau (ASA) et le nom d'utilisateur correct (cisco) doivent être configurés. Cette partie n'est pas couverte par le présent article.
Utilisez cette section pour confirmer que votre configuration fonctionne correctement.
Initialement, l’utilisateur n’est pas configuré avec le client AnyConnect. L'utilisateur n'est pas non plus conforme à la stratégie (le fichier c:\test.txt n'existe pas). Entrez https://10.62.145.45 et l'utilisateur est immédiatement redirigé vers l'installation du CSD, comme indiqué dans l'image.
Cela peut être fait avec Java ou ActiveX. Une fois que CSD est installé, il est signalé comme indiqué dans l'image.
L'utilisateur est ensuite redirigé vers l'authentification, comme indiqué dans l'image.
En cas de réussite, AnyConnect et le profil configuré sont déployés. Une fois de plus, ActiveX ou Java peuvent être utilisés comme illustré dans l'image.
Et la connexion VPN est établie comme indiqué dans l'image.
La première étape pour AnyConnect consiste à effectuer des contrôles de position (HostScan) et à envoyer les rapports à ASA comme indiqué dans l'image.
Ensuite, AnyConnect authentifie et termine la session VPN.
Lorsque vous établissez une nouvelle session VPN avec AnyConnect, la première étape est la posture (HostScan) telle que présentée sur la capture d'écran précédente. Ensuite, l'authentification se produit et la session VPN est établie comme indiqué dans les images.
ASA signale que le rapport HostScan est reçu :
%ASA-7-716603: Received 4 KB Hostscan data from IP <10.61.87.251>
Effectue ensuite l'authentification utilisateur :
%ASA-6-113004: AAA user authentication Successful : server = 10.62.145.42 : user = cisco
Et démarre l'autorisation pour cette session VPN. Lorsque vous avez activé « debug dap trace 255 », les informations relatives à l'existence du fichier c:\test.txt sont retournées :
DAP_TRACE[128]: dap_install_endpoint_data_to_lua:endpoint.file["1"].exists="false"
DAP_TRACE: endpoint.file["1"].exists = "false"
DAP_TRACE[128]: dap_install_endpoint_data_to_lua:endpoint.file["1"].path="c:\test.txt"
DAP_TRACE: endpoint.file["1"].path = "c:\\test.txt"
En outre, les informations relatives au pare-feu Microsoft Windows :
DAP_TRACE[128]: dap_install_endpoint_data_to_lua:endpoint.fw["MSWindowsFW"].exists="false"
DAP_TRACE: endpoint.fw["MSWindowsFW"].exists = "false"
DAP_TRACE[128]: dap_install_endpoint_data_to_lua:endpoint.fw["MSWindowsFW"].description="Microsoft Windows Firewall"
DAP_TRACE: endpoint.fw["MSWindowsFW"].description = "Microsoft Windows Firewall"
DAP_TRACE[128]: dap_install_endpoint_data_to_lua:endpoint.fw["MSWindowsFW"].version="7"
DAP_TRACE: endpoint.fw["MSWindowsFW"].version = "7"
DAP_TRACE[128]: dap_install_endpoint_data_to_lua:endpoint.fw["MSWindowsFW"].enabled="failed"
DAP_TRACE: endpoint.fw["MSWindowsFW"].enabled = "failed"
et Symantec AntiVirus (conformément aux règles d'évaluation avancée des terminaux HostScan configurées précédemment).
Par conséquent, la politique relative à la DPA est mise en correspondance :
DAP_TRACE: Username: cisco, Selected DAPs: ,FileNotExists
Cette stratégie force l’utilisation d’AnyConnect et applique également la liste de contrôle d’accès ACL1 qui fournit un accès réseau restreint à l’utilisateur (non conforme à la stratégie d’entreprise) :
DAP_TRACE:The DAP policy contains the following attributes for user: cisco
DAP_TRACE:--------------------------------------------------------------------------
DAP_TRACE:1: tunnel-protocol = svc
DAP_TRACE:2: svc ask = ask: no, dflt: svc
DAP_TRACE:3: action = continue
DAP_TRACE:4: network-acl = ACL1
Les journaux présentent également les extensions ACIDEX qui peuvent être utilisées par la politique DAP (ou même passées dans Radius-Requests à ISE et utilisées dans les règles d'autorisation comme conditions) :
endpoint.anyconnect.clientversion = "4.0.00051";
endpoint.anyconnect.platform = "win";
endpoint.anyconnect.devicetype = "innotek GmbH VirtualBox";
endpoint.anyconnect.platformversion = "6.1.7600 ";
endpoint.anyconnect.deviceuniqueid = "A1EDD2F14F17803779EB42C281C98DD892F7D34239AECDBB3FEA69D6567B2591";
endpoint.anyconnect.macaddress["0"] = "08-00-27-7f-5f-64";
endpoint.anyconnect.useragent = "AnyConnect Windows 4.0.00051";
Par conséquent, la session VPN est active, mais avec un accès réseau restreint :
ASAv2# show vpn-sessiondb detail anyconnect
Session Type: AnyConnect Detailed
Username : cisco Index : 4
Assigned IP : 192.168.1.10 Public IP : 10.61.87.251
Protocol : AnyConnect-Parent SSL-Tunnel DTLS-Tunnel
License : AnyConnect Premium
Encryption : AnyConnect-Parent: (1)none SSL-Tunnel: (1)RC4 DTLS-Tunnel: (1)AES128
Hashing : AnyConnect-Parent: (1)none SSL-Tunnel: (1)SHA1 DTLS-Tunnel: (1)SHA1
Bytes Tx : 11432 Bytes Rx : 14709
Pkts Tx : 8 Pkts Rx : 146
Pkts Tx Drop : 0 Pkts Rx Drop : 0
Group Policy : AllProtocols Tunnel Group : TAC
Login Time : 11:58:54 UTC Fri Dec 26 2014
Duration : 0h:07m:54s
Inactivity : 0h:00m:00s
VLAN Mapping : N/A VLAN : none
Audt Sess ID : 0add006400004000549d4d7e
Security Grp : none
AnyConnect-Parent Tunnels: 1
SSL-Tunnel Tunnels: 1
DTLS-Tunnel Tunnels: 1
AnyConnect-Parent:
Tunnel ID : 4.1
Public IP : 10.61.87.251
Encryption : none Hashing : none
TCP Src Port : 49514 TCP Dst Port : 443
Auth Mode : userPassword
Idle Time Out: 30 Minutes Idle TO Left : 22 Minutes
Client OS : win
Client OS Ver: 6.1.7600
Client Type : AnyConnect
Client Ver : Cisco AnyConnect VPN Agent for Windows 4.0.00051
Bytes Tx : 5716 Bytes Rx : 764
Pkts Tx : 4 Pkts Rx : 1
Pkts Tx Drop : 0 Pkts Rx Drop : 0
SSL-Tunnel:
Tunnel ID : 4.2
Assigned IP : 192.168.1.10 Public IP : 10.61.87.251
Encryption : RC4 Hashing : SHA1
Encapsulation: TLSv1.0 TCP Src Port : 49517
TCP Dst Port : 443 Auth Mode : userPassword
Idle Time Out: 30 Minutes Idle TO Left : 22 Minutes
Client OS : Windows
Client Type : SSL VPN Client
Client Ver : Cisco AnyConnect VPN Agent for Windows 4.0.00051
Bytes Tx : 5716 Bytes Rx : 2760
Pkts Tx : 4 Pkts Rx : 12
Pkts Tx Drop : 0 Pkts Rx Drop : 0
Filter Name : ACL1
DTLS-Tunnel:
Tunnel ID : 4.3
Assigned IP : 192.168.1.10 Public IP : 10.61.87.251
Encryption : AES128 Hashing : SHA1
Encapsulation: DTLSv1.0 UDP Src Port : 52749
UDP Dst Port : 443 Auth Mode : userPassword
Idle Time Out: 30 Minutes Idle TO Left : 24 Minutes
Client OS : Windows
Client Type : DTLS VPN Client
Client Ver : Cisco AnyConnect VPN Agent for Windows 4.0.00051
Bytes Tx : 0 Bytes Rx : 11185
Pkts Tx : 0 Pkts Rx : 133
Pkts Tx Drop : 0 Pkts Rx Drop : 0
Filter Name : ACL1
ASAv2# show access-list ACL1
access-list ACL1; 1 elements; name hash: 0xe535f5fe
access-list ACL1 line 1 extended permit ip any host 1.1.1.1 (hitcnt=0) 0xe6492cbf
L'historique AnyConnect présente les étapes détaillées du processus de posture :
12:57:47 Contacting 10.62.145.45.
12:58:01 Posture Assessment: Required for access
12:58:01 Posture Assessment: Checking for updates...
12:58:02 Posture Assessment: Updating...
12:58:03 Posture Assessment: Initiating...
12:58:13 Posture Assessment: Active
12:58:13 Posture Assessment: Initiating...
12:58:37 User credentials entered.
12:58:43 Establishing VPN session...
12:58:43 The AnyConnect Downloader is performing update checks...
12:58:43 Checking for profile updates...
12:58:43 Checking for product updates...
12:58:43 Checking for customization updates...
12:58:43 Performing any required updates...
12:58:43 The AnyConnect Downloader updates have been completed.
12:58:43 Establishing VPN session...
12:58:43 Establishing VPN - Initiating connection...
12:58:48 Establishing VPN - Examining system...
12:58:48 Establishing VPN - Activating VPN adapter...
12:58:52 Establishing VPN - Configuring system...
12:58:52 Establishing VPN...
12:58:52 Connected to 10.62.145.45.
Après avoir créé le fichier c:\test.txt, le flux est similaire. Une fois la nouvelle session AnyConnect lancée, les journaux indiquent l’existence du fichier :
%ASA-7-734003: DAP: User cisco, Addr 10.61.87.251: Session Attribute endpoint.file["1"].exists="true"
%ASA-7-734003: DAP: User cisco, Addr 10.61.87.251: Session Attribute endpoint.file["1"].path="c:\test.txt"
Par conséquent, une autre politique DAP est utilisée :
DAP_TRACE: Username: cisco, Selected DAPs: ,FileExists
La stratégie n'impose aucune liste de contrôle d'accès comme restriction pour le trafic réseau.
Et la session est active sans ACL (accès réseau complet) :
ASAv2# show vpn-sessiondb detail anyconnect
Session Type: AnyConnect Detailed
Username : cisco Index : 5
Assigned IP : 192.168.1.10 Public IP : 10.61.87.251
Protocol : AnyConnect-Parent SSL-Tunnel DTLS-Tunnel
License : AnyConnect Premium
Encryption : AnyConnect-Parent: (1)none SSL-Tunnel: (1)RC4 DTLS-Tunnel: (1)AES128
Hashing : AnyConnect-Parent: (1)none SSL-Tunnel: (1)SHA1 DTLS-Tunnel: (1)SHA1
Bytes Tx : 11432 Bytes Rx : 6298
Pkts Tx : 8 Pkts Rx : 38
Pkts Tx Drop : 0 Pkts Rx Drop : 0
Group Policy : AllProtocols Tunnel Group : TAC
Login Time : 12:10:28 UTC Fri Dec 26 2014
Duration : 0h:00m:17s
Inactivity : 0h:00m:00s
VLAN Mapping : N/A VLAN : none
Audt Sess ID : 0add006400005000549d5034
Security Grp : none
AnyConnect-Parent Tunnels: 1
SSL-Tunnel Tunnels: 1
DTLS-Tunnel Tunnels: 1
AnyConnect-Parent:
Tunnel ID : 5.1
Public IP : 10.61.87.251
Encryption : none Hashing : none
TCP Src Port : 49549 TCP Dst Port : 443
Auth Mode : userPassword
Idle Time Out: 30 Minutes Idle TO Left : 29 Minutes
Client OS : win
Client OS Ver: 6.1.7600
Client Type : AnyConnect
Client Ver : Cisco AnyConnect VPN Agent for Windows 4.0.00051
Bytes Tx : 5716 Bytes Rx : 764
Pkts Tx : 4 Pkts Rx : 1
Pkts Tx Drop : 0 Pkts Rx Drop : 0
SSL-Tunnel:
Tunnel ID : 5.2
Assigned IP : 192.168.1.10 Public IP : 10.61.87.251
Encryption : RC4 Hashing : SHA1
Encapsulation: TLSv1.0 TCP Src Port : 49552
TCP Dst Port : 443 Auth Mode : userPassword
Idle Time Out: 30 Minutes Idle TO Left : 29 Minutes
Client OS : Windows
Client Type : SSL VPN Client
Client Ver : Cisco AnyConnect VPN Agent for Windows 4.0.00051
Bytes Tx : 5716 Bytes Rx : 1345
Pkts Tx : 4 Pkts Rx : 6
Pkts Tx Drop : 0 Pkts Rx Drop : 0
DTLS-Tunnel:
Tunnel ID : 5.3
Assigned IP : 192.168.1.10 Public IP : 10.61.87.251
Encryption : AES128 Hashing : SHA1
Encapsulation: DTLSv1.0 UDP Src Port : 54417
UDP Dst Port : 443 Auth Mode : userPassword
Idle Time Out: 30 Minutes Idle TO Left : 30 Minutes
Client OS : Windows
Client Type : DTLS VPN Client
Client Ver : Cisco AnyConnect VPN Agent for Windows 4.0.00051
Bytes Tx : 0 Bytes Rx : 4189
Pkts Tx : 0 Pkts Rx : 31
Pkts Tx Drop : 0 Pkts Rx Drop : 0
En outre, Anyconnect signale que HostScan est inactif et attend la prochaine demande d'analyse :
13:10:15 Hostscan state idle
13:10:15 Hostscan is waiting for the next scan
Remarque : pour la réévaluation, il est conseillé d'utiliser un module de posture intégré à ISE. Intégration d'AnyConnect 4.0 avec ISE 1.3 - exemple de configuration
Cette section fournit des informations que vous pouvez utiliser pour dépanner votre configuration.
AnyConnect fournit des diagnostics comme indiqué dans l’image.
qui collecte et enregistre tous les journaux AnyConnect dans un fichier zip sur le bureau. Ce fichier zip contient les journaux de Cisco AnyConnect Secure Mobility Client/Anyconnect.txt.
Cela fournit des informations sur ASA et demande à HostScan de collecter des données :
Date : 12/26/2014
Time : 12:58:01
Type : Information
Source : acvpnui
Description : Function: ConnectMgr::processResponseString
File: .\ConnectMgr.cpp
Line: 10286
Invoked Function: ConnectMgr::processResponseString
Return Code: 0 (0x00000000)
Description: HostScan request detected.
Ensuite, plusieurs autres journaux révèlent que CSD est installé. Voici l'exemple d'une mise en service CSD et d'une connexion AnyConnect ultérieure, ainsi que la position :
CSD detected, launching CSD
Posture Assessment: Required for access
Gathering CSD version information.
Posture Assessment: Checking for updates...
CSD version file located
Downloading and launching CSD
Posture Assessment: Updating...
Downloading CSD update
CSD Stub located
Posture Assessment: Initiating...
Launching CSD
Initializing CSD
Performing CSD prelogin verification.
CSD prelogin verification finished with return code 0
Starting CSD system scan.
CSD successfully launched
Posture Assessment: Active
CSD launched, continuing until token is validated.
Posture Assessment: Initiating...
Checking CSD token for validity
Waiting for CSD token validity result
CSD token validity check completed
CSD Token is now valid
CSD Token validated successfully
Authentication succeeded
Establishing VPN session...
La communication entre ASA et AnyConnect est optimisée, ASA demande afin d'effectuer uniquement des contrôles spécifiques - AnyConnect télécharge des données supplémentaires afin de pouvoir effectuer cela (par exemple, une vérification antivirus spécifique).
Lorsque vous ouvrez le dossier avec le centre d'assistance technique, joignez les journaux Dart avec « show tech » et « debug dap trace 255 » de l'ASA.
Révision | Date de publication | Commentaires |
---|---|---|
3.0 |
24-May-2024 |
Recertification |
1.0 |
21-Nov-2015 |
Première publication |