Configurer un VPN SSL remote access Clientless sur un Cisco ASA

Petit tutoriel aujourd’hui pour apprendre à configurer un VPN SSL Remote Access Clientless sur un Cisco ASA. Ce type de VPN porte un nom raccourcis : le WebVPN (et c’est comme ça que je vais continuer d’en parler).

Alors à quoi sert le WebVPN concrètement ? Tout simplement à vous connecter au réseau de votre entreprise par le biais d’un navigateur Internet. Le principe du WebVPN est d’être accessible partout, tout le temps car vous n’avez pas besoin d’installer une application pour l’utiliser (c’est le principe du « clientless », il vous faut juste une connexion Internet). Alors bien entendu, le WebVPN reste très limité de base mais permet tout de même la consultation des serveurs Web internes de votre entreprise ou encore de vos serveurs de partage de fichiers (par exemple).

La topologie

Voici la topologie que j’ai utilisé pour ce tutoriel :

Topologie utilisée pour l'article

J’ai donc un serveur Windows gérant le domaine « labcisco.ccnp » avec des partages de fichiers ainsi qu’un serveur Radius que je vais utiliser pour permettre à mes utilisateurs distants de se connecter via leurs identifiants de domaine (Radius va aller vérifier sur le serveur Windows que les identifiants sont bien identiques). Le boitier ASA possède deux interface : une interface « inside » utilisée pour le réseau interne et une interface « outside » utilisée pour les réseaux extérieurs.

Ce tutoriel ne traite que de la configuration de l’ASA.

Etape 1 : Le certificat SSL

Il faut commencer par générer un certificat SSL que nous allons auto-signer :

hostname asa-cisco
domain-name labcisco.ccnp
!
crypto key generate rsa label SSL-VPN-KEY
!
crypto ca trustpoint LOCALTRUST-ASA
 enrollment self
 fqdn asa-cisco.labcisco.ccnp
 subject-name CN=asa-cisco.labcisco.ccnp
 keypair SSL-VPN-KEY
 crypto ca enroll LOCALTRUST-ASA noconfirm
!
ssl trust-point LOCALTRUST-ASA outside

Etape 2 : Configurer le DNS et autoriser le WebVPN

dns domain-lookup inside
dns server-group DefaultDNS
 name-server 192.168.0.1
 domain-name labcisco.ccnp
!
webvpn
 enable outside

Etape 3 : Configurer Radius comme serveur d’authentification

aaa-server RADIUS protocol radius
aaa-server RADIUS (inside) host Linux-Server.labcisco.ccnp
 key "votre clé secrète"
 authentication-port 1812
 accounting-port 1813
 acl-netmask-convert auto-detect

Attention à bien vérifier les ports utilisés par votre serveur Radius (1812, 1813 ou 1645, 1646).

Etape 4 : Configurer un profil de connexion

Pour information, les profils de connexions sont aussi appelés « tunnel-group » par Cisco.

group-policy GroupPolicy1 internal
group-policy GroupPolicy1 attributes
 vpn-tunnel-protocol ssl-clientless
!
tunnel-group utilisateurs-nomades type remote-access
tunnel-group utilisateurs-nomades general-attributes
 authentication-server-group RADIUS
 default-group-policy GroupPolicy1
!
tunnel-group utilisateurs-nomades webvpn-attributes
 group-alias Utilisateurs-Nomades enable

Pour personnaliser la page d’accueil, il faut utiliser ASDM et se rendre à l’emplacement suivant : « Configuration > Remote Access VPN > Clientless SSL VPN Access > Portal > Customization » et modifier le « DfltCustomization ».

Etape 5 : Se connecter

Vous n’avez plus qu’à vous connecter avec votre utilisateur distant en utilisant votre mot de passe du domaine Windows.

Catpure d'écran de connexion

Vous pouvez à présent naviguer par le biais de votre navigateur Web et aller consulter, par exemple, le répertoire de votre service.

Capture d'écran des répertoires accessibles après connexion