2vpn ssal sans client (clientless)

28
VPN SSL sans client (clientless) Cest généralement sous cette appellation quest désigné le VPN utilisant seulement un navigateur. Cest en fait ce dernier qui sert de client, mais pour lutilisateur cest transparent. Dans ce cas, lessentiel de la configuration est à effectuer sur le boîtier, ce qui rend son utilisation extrêmement aisée pour le poste distant. Par contre ce type de VPN souffre de grandes limitations puisque nous ne pourrons accéder par son intermédiaire quà un nombre de ressources bien définies : Serveurs HTTP et HTTPS. Serveurs de fichiers Windows (sous le protocole dénommé CIFS pour Common Internet File Services). Serveurs FTP. Cela suffit à beaucoup des usages quotidiens mais cela reste quand même limitatif. Cest pour lever une partie de ces limitations quintervient le client léger (dénommé Thin Client chez Cisco) mais nous verrons que celuici a également quelques limites. 1. Paramétrage de base du boîtier Voici le paramétrage, assez minimal, permettant dactiver la connexion sur le boîtier du réseau parisien : gardien94# conf t # # pour faciliter la mise en place nous adoptons ici un réglage # permettant de ne pas tenir compte des ACL # gardien94(config)# sysopt connection permit-vpn # # ensuite nous définissons le niveau de cryptage voulu # (choix entre 3des-sha1, des-sha1,aes128-sha1,aes256-sha1) # gardien94(config)# ssl encryption aes256-sha1 # # Nous pouvons spécifier une version particulière (sslv3,tlsv1, # sslv3-only, tlsv1-only) # gardien94(config)# ssl server-version any # # Ensuite nous passons au paramétrage du portail SSL lui-même # avec la commande webvpn et spécifions l’interface sur laquelle # positionner le portail SSL # gardien94(config)# webvpn gardien94(config-webvpn)# enable INTERNET INFO: WebVPN and DTLS are enabled on ’INTERNET’. # # Il est possible également de rediriger sur le portail les # requêtes arrivant sur le port 80 # (même si c’est censé ne jamais se produire) # gardien94(config-webvpn)# http redirect INTERNET 80 gardien94(config)# À noter que, si nous souhaitons conserver la possibilité dadministrer par linterface web le boîtier ASA depuis lextérieur, il est indispensable de définir pour cela un autre port que le port par défaut 443 puisque celuici est maintenant occupé par notre portail SSL. Pour ce faire, il suffit de rajouter les lignes suivantes dans la configuration : gardien94(config)# http server enable 8443 # # # - 1 - © ENI Editions - All rights reserved - hassan jouan

Upload: mohammed-marouan

Post on 17-May-2017

240 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 2vpn Ssal Sans Client (Clientless)

VPN SSL sans client (clientless) 

C’est  généralement  sous  cette  appellation  qu’est  désigné  le VPN utilisant  seulement un navigateur. C’est en  fait  ce dernier qui sert de client, mais pour l’utilisateur c’est transparent. 

Dans ce cas, l’essentiel de la configuration est à effectuer sur le boîtier, ce qui rend son utilisation extrêmement aisée pour le poste distant. Par contre ce type de VPN souffre de grandes limitations puisque nous ne pourrons accéder par son intermédiaire qu’à un nombre de ressources bien définies : 

● Serveurs HTTP et HTTPS. 

● Serveurs de fichiers Windows (sous le protocole dénommé CIFS pour Common Internet File Services). 

● Serveurs FTP. 

Cela suffit à beaucoup des usages quotidiens mais cela reste quand même limitatif. C’est pour lever une partie de ces limitations qu’intervient  le  client  léger  (dénommé Thin Client  chez Cisco) mais nous verrons que  celui­ci  a également quelques limites. 

1. Paramétrage de base du boîtier 

Voici le paramétrage, assez minimal, permettant d’activer la connexion sur le boîtier du réseau parisien : 

gardien94# conf t

#

# pour faciliter la mise en place nous adoptons ici un réglage

# permettant de ne pas tenir compte des ACL

# gardien94(config)# sysopt connection permit-vpn

#

# ensuite nous définissons le niveau de cryptage voulu

# (choix entre 3des-sha1, des-sha1,aes128-sha1,aes256-sha1)

# gardien94(config)# ssl encryption aes256-sha1

#

# Nous pouvons spécifier une version particulière (sslv3,tlsv1,

# sslv3-only, tlsv1-only)

# gardien94(config)# ssl server-version any

#

# Ensuite nous passons au paramétrage du portail SSL lui-même

# avec la commande webvpn et spécifions l’interface sur laquelle

# positionner le portail SSL

# gardien94(config)# webvpn

gardien94(config-webvpn)# enable INTERNET

INFO: WebVPN and DTLS are enabled on ’INTERNET’. #

# Il est possible également de rediriger sur le portail les

# requêtes arrivant sur le port 80

# (même si c’est censé ne jamais se produire)

# gardien94(config-webvpn)# http redirect INTERNET 80

gardien94(config)#

À  noter  que,  si  nous  souhaitons  conserver  la  possibilité  d’administrer  par  l’interface  web  le  boîtier  ASA  depuis l’extérieur,  il  est  indispensable  de  définir  pour  cela  un  autre  port  que  le  port  par  défaut  443  puisque  celui­ci  est maintenant occupé par notre portail SSL. Pour ce faire, il suffit de rajouter les lignes suivantes dans la configuration : 

gardien94(config)# http server enable 8443

# # #

- 1 -© ENI Editions - All rights reserved - hassan jouan

enidentnumber-AAEAAAD/////AQAAAAAAAAAMAgAAAE1FTkkuRWRpdGlvbnMuTUVESUFwbHVzLCBWZXJzaW9uPTEuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49bnVsbAUBAAAAJ0VOSS5FZGl0aW9ucy5NRURJQXBsdXMuQ29tbW9uLldhdGVybWFyawIAAAAHcGlzVGV4dAlwaWR0ZURhdGUBAA0CAAAABgMAAAA8NTEzODkwIC0gaGFzc2FuIGpvdWFuIC0gNjFkNGQ0NGItMGM0NS00NjMzLWIwYmQtMDVjYjUwMGZjNDA0wqiUJstbzogLAA==-enidentnumber

Page 2: 2vpn Ssal Sans Client (Clientless)

gardien94(config)# http 192.0.2.22 255.255.255.255 INTERNET

gardien94(config)#

Nous  avons  ici  choisi  un  port  arbitraire  8443  et  nous  avons  défini  une  adresse  externe  autorisée  à  accéder  à  la configuration de notre boîtier. Un accès à l’URL https://198.18.94.254:8443 à partir de notre navigateur nous conduira alors à une page analogue à celle­ci : 

 

À partir de là, nous pourrons accéder normalement aux pages de configuration du boîtier. 

Voyons maintenant comment se fait l’accès aux ressources locales au travers du port 443. 

2. Essais côté client 

Une  fois  la  configuration  ci­dessus  mise  en  place  sur  le  boîtier,  il  ne  reste  plus  qu’à  tenter  un  accès  sur https://198.18.94.254  ou  bien  même  http://198.18.94.254  puisque  la  commande  http  redirect  INTERNET  80 employée plus haut permet d’utiliser indifféremment les protocoles HTTP ou HTTPS pour aboutir à la page suivante : 

- 2 - © ENI Editions - All rights reserved - hassan jouan

enidentnumber-AAEAAAD/////AQAAAAAAAAAMAgAAAE1FTkkuRWRpdGlvbnMuTUVESUFwbHVzLCBWZXJzaW9uPTEuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49bnVsbAUBAAAAJ0VOSS5FZGl0aW9ucy5NRURJQXBsdXMuQ29tbW9uLldhdGVybWFyawIAAAAHcGlzVGV4dAlwaWR0ZURhdGUBAA0CAAAABgMAAAA8NTEzODkwIC0gaGFzc2FuIGpvdWFuIC0gNjFkNGQ0NGItMGM0NS00NjMzLWIwYmQtMDVjYjUwMGZjNDA0wqiUJstbzogLAA==-enidentnumber

Page 3: 2vpn Ssal Sans Client (Clientless)

 

Après avoir renseigné le nom d’utilisateur et son mot de passe, nous aboutissons à l’écran principal du portail SSL à partir duquel nous allons pouvoir accéder aux différentes ressources autorisées par ce portail : 

 

Nous  pouvons  alors  indiquer  dans  la  zone  en  haut  à  droite  le  protocole  et  l’adresse  à  laquelle  nous  souhaitons accéder. Nous voyons dans l’écran ci­dessous que nous avons le choix entre http, https, cifs ou bien encore ftp : 

- 3 -© ENI Editions - All rights reserved - hassan jouan

enidentnumber-AAEAAAD/////AQAAAAAAAAAMAgAAAE1FTkkuRWRpdGlvbnMuTUVESUFwbHVzLCBWZXJzaW9uPTEuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49bnVsbAUBAAAAJ0VOSS5FZGl0aW9ucy5NRURJQXBsdXMuQ29tbW9uLldhdGVybWFyawIAAAAHcGlzVGV4dAlwaWR0ZURhdGUBAA0CAAAABgMAAAA8NTEzODkwIC0gaGFzc2FuIGpvdWFuIC0gNjFkNGQ0NGItMGM0NS00NjMzLWIwYmQtMDVjYjUwMGZjNDA0wqiUJstbzogLAA==-enidentnumber

Page 4: 2vpn Ssal Sans Client (Clientless)

 

Par exemple nous allons ici accéder à l’imprimante du réseau local dont l’adresse est 192.168.194.155 en spécifiant l’URL  http://192.168.194.155.  Nous  pouvons  évidemment  utiliser  des  noms  tels  que  brother1.reseaujpa.net  si  les serveurs de noms contiennent les éléments nécessaires. 

 

Après avoir cliqué sur Browse, nous aboutissons alors à un écran tel que celui­ci : 

- 4 - © ENI Editions - All rights reserved - hassan jouan

enidentnumber-AAEAAAD/////AQAAAAAAAAAMAgAAAE1FTkkuRWRpdGlvbnMuTUVESUFwbHVzLCBWZXJzaW9uPTEuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49bnVsbAUBAAAAJ0VOSS5FZGl0aW9ucy5NRURJQXBsdXMuQ29tbW9uLldhdGVybWFyawIAAAAHcGlzVGV4dAlwaWR0ZURhdGUBAA0CAAAABgMAAAA8NTEzODkwIC0gaGFzc2FuIGpvdWFuIC0gNjFkNGQ0NGItMGM0NS00NjMzLWIwYmQtMDVjYjUwMGZjNDA0wqiUJstbzogLAA==-enidentnumber

Page 5: 2vpn Ssal Sans Client (Clientless)

 

Nous pourrions également accéder à un partage réseau Windows (donc sous CIFS), par exemple sur le serveur NAS situé en 192.168.194.201, en utilisant l’URL cifs://192.168.194.201, qui nous donne accès à l’arborescence partagée (sous  réserve  d’une  éventuelle  authentification Windows  supplémentaire  pour  certains  dossiers  à  accès  restreint) comme dans l’écran ci­dessous : 

 

L’URL ciblée peut aussi inclure le nom du dossier, comme dans l’exemple ci­dessous où nous accédons directement au dossier DEMOS01. 

- 5 -© ENI Editions - All rights reserved - hassan jouan

enidentnumber-AAEAAAD/////AQAAAAAAAAAMAgAAAE1FTkkuRWRpdGlvbnMuTUVESUFwbHVzLCBWZXJzaW9uPTEuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49bnVsbAUBAAAAJ0VOSS5FZGl0aW9ucy5NRURJQXBsdXMuQ29tbW9uLldhdGVybWFyawIAAAAHcGlzVGV4dAlwaWR0ZURhdGUBAA0CAAAABgMAAAA8NTEzODkwIC0gaGFzc2FuIGpvdWFuIC0gNjFkNGQ0NGItMGM0NS00NjMzLWIwYmQtMDVjYjUwMGZjNDA0wqiUJstbzogLAA==-enidentnumber

Page 6: 2vpn Ssal Sans Client (Clientless)

 

Il est également possible d’utiliser les menus de gauche pour accéder à des ressources comme par exemple Browse Networks qui permet d’explorer le réseau Windows distant : 

 

Ces menus peuvent être personnalisés mais il faut alors passer par l’interface graphique pour ce faire. 

Dans l’interface ASDM, nous pouvons passer par le menu Configuration ­ Remote Access VPN ­ Clientless SSL VPN Access  ­ Portal  ­ Bookmarks pour créer ou modifier un ensemble de signets que nous allons par exemple appeler DEMO­SIGNETS. 

Personnalisation du portail SSL

- 6 - © ENI Editions - All rights reserved - hassan jouan

enidentnumber-AAEAAAD/////AQAAAAAAAAAMAgAAAE1FTkkuRWRpdGlvbnMuTUVESUFwbHVzLCBWZXJzaW9uPTEuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49bnVsbAUBAAAAJ0VOSS5FZGl0aW9ucy5NRURJQXBsdXMuQ29tbW9uLldhdGVybWFyawIAAAAHcGlzVGV4dAlwaWR0ZURhdGUBAA0CAAAABgMAAAA8NTEzODkwIC0gaGFzc2FuIGpvdWFuIC0gNjFkNGQ0NGItMGM0NS00NjMzLWIwYmQtMDVjYjUwMGZjNDA0wqiUJstbzogLAA==-enidentnumber

Page 7: 2vpn Ssal Sans Client (Clientless)

 

Si nous sélectionnons DEMO­SIGNETS dans la fenêtre de droite et cliquons sur Edit nous obtenons  l’écran suivant (quelques URLs ont déjà été remplies) : 

 

Un clic sur Edit après avoir sélectionné une des URLs (ou bien un clic sur Add si nous souhaitons compléter cette liste) nous amène à une page analogue à celle­ci : 

- 7 -© ENI Editions - All rights reserved - hassan jouan

enidentnumber-AAEAAAD/////AQAAAAAAAAAMAgAAAE1FTkkuRWRpdGlvbnMuTUVESUFwbHVzLCBWZXJzaW9uPTEuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49bnVsbAUBAAAAJ0VOSS5FZGl0aW9ucy5NRURJQXBsdXMuQ29tbW9uLldhdGVybWFyawIAAAAHcGlzVGV4dAlwaWR0ZURhdGUBAA0CAAAABgMAAAA8NTEzODkwIC0gaGFzc2FuIGpvdWFuIC0gNjFkNGQ0NGItMGM0NS00NjMzLWIwYmQtMDVjYjUwMGZjNDA0wqiUJstbzogLAA==-enidentnumber

Page 8: 2vpn Ssal Sans Client (Clientless)

 

Après  avoir  validé  ces  écrans  de  configuration  par  des  clics  sur OK  et Apply  nous  devons  alors  déclarer  que  ces signets s’appliquent à un profil, en l’occurrence le profil webvpn que nous avons déclaré dans la configuration. 

Cela  se  fait par  l’écran  suivant accessible par  le menu Configuration  ­ Remote Access VPN  ­ Clientless SSL VPN Access ­ Group Policies. 

 

Nous sélectionnons et cliquons sur  le profil NomadesSSL,  ce qui conduit à  l’écran suivant sur  lequel nous pouvons choisir Portal et  indiquer dans  la  fenêtre de droite  le nom DEMO­SIGNETS pour  les bookmarks à affecter à ce profil NomadesSSL : 

- 8 - © ENI Editions - All rights reserved - hassan jouan

enidentnumber-AAEAAAD/////AQAAAAAAAAAMAgAAAE1FTkkuRWRpdGlvbnMuTUVESUFwbHVzLCBWZXJzaW9uPTEuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49bnVsbAUBAAAAJ0VOSS5FZGl0aW9ucy5NRURJQXBsdXMuQ29tbW9uLldhdGVybWFyawIAAAAHcGlzVGV4dAlwaWR0ZURhdGUBAA0CAAAABgMAAAA8NTEzODkwIC0gaGFzc2FuIGpvdWFuIC0gNjFkNGQ0NGItMGM0NS00NjMzLWIwYmQtMDVjYjUwMGZjNDA0wqiUJstbzogLAA==-enidentnumber

Page 9: 2vpn Ssal Sans Client (Clientless)

 

Lorsque le nomade appartenant à ce profil va se connecter sur le portail SSL, il verra s’afficher l’écran suivant lorsqu’il cliquera sur le menu Web Applications : 

 

ou bien celui­ci s’il clique sur Browse Networks : 

- 9 -© ENI Editions - All rights reserved - hassan jouan

enidentnumber-AAEAAAD/////AQAAAAAAAAAMAgAAAE1FTkkuRWRpdGlvbnMuTUVESUFwbHVzLCBWZXJzaW9uPTEuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49bnVsbAUBAAAAJ0VOSS5FZGl0aW9ucy5NRURJQXBsdXMuQ29tbW9uLldhdGVybWFyawIAAAAHcGlzVGV4dAlwaWR0ZURhdGUBAA0CAAAABgMAAAA8NTEzODkwIC0gaGFzc2FuIGpvdWFuIC0gNjFkNGQ0NGItMGM0NS00NjMzLWIwYmQtMDVjYjUwMGZjNDA0wqiUJstbzogLAA==-enidentnumber

Page 10: 2vpn Ssal Sans Client (Clientless)

 

Il est également possible de personnaliser l’interface du portail, toujours au travers de l’interface graphique. C’est ce que permet le menu Configuration ­ Remote Access VPN ­ Clientless SSL VPN Access ­ Portal ­ Customization. 

 

Après avoir cliqué sur DfltCustomization, nous aboutissons à une fenêtre dans laquelle nous allons pouvoir choisir les différentes rubriques à personnaliser, comme par exemple l’écran de login (choix Logon Form) dans lequel nous allons franciser les champs affichés : 

- 10 - © ENI Editions - All rights reserved - hassan jouan

enidentnumber-AAEAAAD/////AQAAAAAAAAAMAgAAAE1FTkkuRWRpdGlvbnMuTUVESUFwbHVzLCBWZXJzaW9uPTEuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49bnVsbAUBAAAAJ0VOSS5FZGl0aW9ucy5NRURJQXBsdXMuQ29tbW9uLldhdGVybWFyawIAAAAHcGlzVGV4dAlwaWR0ZURhdGUBAA0CAAAABgMAAAA8NTEzODkwIC0gaGFzc2FuIGpvdWFuIC0gNjFkNGQ0NGItMGM0NS00NjMzLWIwYmQtMDVjYjUwMGZjNDA0wqiUJstbzogLAA==-enidentnumber

Page 11: 2vpn Ssal Sans Client (Clientless)

 

Nous pouvons aussi changer le titre et supprimer le logo : 

- 11 -© ENI Editions - All rights reserved - hassan jouan

enidentnumber-AAEAAAD/////AQAAAAAAAAAMAgAAAE1FTkkuRWRpdGlvbnMuTUVESUFwbHVzLCBWZXJzaW9uPTEuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49bnVsbAUBAAAAJ0VOSS5FZGl0aW9ucy5NRURJQXBsdXMuQ29tbW9uLldhdGVybWFyawIAAAAHcGlzVGV4dAlwaWR0ZURhdGUBAA0CAAAABgMAAAA8NTEzODkwIC0gaGFzc2FuIGpvdWFuIC0gNjFkNGQ0NGItMGM0NS00NjMzLWIwYmQtMDVjYjUwMGZjNDA0wqiUJstbzogLAA==-enidentnumber

Page 12: 2vpn Ssal Sans Client (Clientless)

 

Ou bien encore rajouter un texte d’avertissement mentionnant les restrictions éventuelles d’accès à ce portail : 

- 12 - © ENI Editions - All rights reserved - hassan jouan

enidentnumber-AAEAAAD/////AQAAAAAAAAAMAgAAAE1FTkkuRWRpdGlvbnMuTUVESUFwbHVzLCBWZXJzaW9uPTEuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49bnVsbAUBAAAAJ0VOSS5FZGl0aW9ucy5NRURJQXBsdXMuQ29tbW9uLldhdGVybWFyawIAAAAHcGlzVGV4dAlwaWR0ZURhdGUBAA0CAAAABgMAAAA8NTEzODkwIC0gaGFzc2FuIGpvdWFuIC0gNjFkNGQ0NGItMGM0NS00NjMzLWIwYmQtMDVjYjUwMGZjNDA0wqiUJstbzogLAA==-enidentnumber

Page 13: 2vpn Ssal Sans Client (Clientless)

 

Tout cela permettra d’obtenir cette page en remplacement de la page habituelle : 

 

Bien  d’autres  éléments  sont  personnalisables  mais  nous  allons  laisser  au  lecteur  le  soin  de  découvrir  toutes  ces possibilités. 

- 13 -© ENI Editions - All rights reserved - hassan jouan

enidentnumber-AAEAAAD/////AQAAAAAAAAAMAgAAAE1FTkkuRWRpdGlvbnMuTUVESUFwbHVzLCBWZXJzaW9uPTEuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49bnVsbAUBAAAAJ0VOSS5FZGl0aW9ucy5NRURJQXBsdXMuQ29tbW9uLldhdGVybWFyawIAAAAHcGlzVGV4dAlwaWR0ZURhdGUBAA0CAAAABgMAAAA8NTEzODkwIC0gaGFzc2FuIGpvdWFuIC0gNjFkNGQ0NGItMGM0NS00NjMzLWIwYmQtMDVjYjUwMGZjNDA0wqiUJstbzogLAA==-enidentnumber

Page 14: 2vpn Ssal Sans Client (Clientless)

Nous pouvons récupérer sous forme XML les éléments modifiés au travers de l’interface graphique par une commande export. Nous n’avons fait figurer ici qu’un court extrait de cette sortie. 

#

# Nous utilisons le ? pour connaître la liste des objets

# personnalisés

# gardien94# export webvpn customization

ERROR: % Incomplete command gardien94# export webvpn customization ?

Select customization object: DfltCustomization Template

# Puis nous faisons notre demande sur DfltCustomization

gardien94# export webvpn customization DfltCustomization

WORD < 256 char Specify the URL to contain the data being exported stdout Print the data being exported out to console

# Il manquait une précision dans notre instruction précédente :

# le nom de la sortie utilisée pour l’export :

# soit une URL, soit la sortie standard (stdout)

# ici nous choisissons la sortie stdout

gardien94# export webvpn customization Dflt stdout

<?xml version="1.0" encoding="UTF-8"?> <!-- Generated by SSL VPN Customization Editor on Sun Apr 24 11:59:44 2011 .../... <custom> <auth-page> .../...

# Nous faisons figurer en gras

# les éléments personnalisés

<title-panel> <mode ><![CDATA[enable]]]]></mode> <logo-url l10n="yes"><![CDATA[]]]]></logo-url> <text l10n="yes"><![CDATA[Bienvenue sur le portail

de SOCIETE FICTIVE]]]]></text>

<background-color ><![CDATA[#ffffff]]]]></background-color> <gradient ><![CDATA[yes]]]]></gradient> <font-weight ><![CDATA[bold]]]]></font-weight> <font-size ><![CDATA[150%]]]]></font-size> <font-color ><![CDATA[#800000]]]]></font-color> <style ><![CDATA[]]]]></style> </title-panel> <info-panel> <mode ><![CDATA[enable]]]]></mode> <image-url l10n="yes"><![CDATA[]]]]></image-url> <position ><![CDATA[right]]]]></position> <image-position ><![CDATA[above]]]]></image-position> <text l10n="yes"><![CDATA[Accès réservé aux employés et

prestataires de la societé SOCIETE FICTIVE ]]]]></text>

</info-panel> <logon-form> <title-text l10n="yes"><![CDATA[Login]]]]></title-text> <message-text l10n="yes"><![CDATA[Entrez vos

identifiants]]]]></message-text>

<username-prompt-text l10n="yes"><![CDATA[Votre

Nom :]]]]></username-prompt-text>

<secondary-username-prompt-text l10n="yes"><! [CDATA[.]]]]></secondary-username-prompt-text> <password-prompt-text l10n="yes"><![CDATA[Votre mot de

passe :]]]]></password-prompt-text>

<secondary-password-prompt-text l10n="yes"><![CD

- 14 - © ENI Editions - All rights reserved - hassan jouan

enidentnumber-AAEAAAD/////AQAAAAAAAAAMAgAAAE1FTkkuRWRpdGlvbnMuTUVESUFwbHVzLCBWZXJzaW9uPTEuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49bnVsbAUBAAAAJ0VOSS5FZGl0aW9ucy5NRURJQXBsdXMuQ29tbW9uLldhdGVybWFyawIAAAAHcGlzVGV4dAlwaWR0ZURhdGUBAA0CAAAABgMAAAA8NTEzODkwIC0gaGFzc2FuIGpvdWFuIC0gNjFkNGQ0NGItMGM0NS00NjMzLWIwYmQtMDVjYjUwMGZjNDA0wqiUJstbzogLAA==-enidentnumber

Page 15: 2vpn Ssal Sans Client (Clientless)

.../... </logon-form> <logout-form> .../... </portal> <localization> <languages ><![CDATA[en]]]]></languages> <default-language ><![CDATA[en]]]]></default-language> </localization> gardien94#

Si nous disposons d’un serveur TFTP, nous pouvons aussi diriger cet export vers un fichier sur ce serveur comme dans l’exemple ci­dessous : 

gardien94# export webvpn customization profil1

tftp://192.168.194.1/demo1.xml

!!!!!!!!!!!!!!!!!! %INFO: Customization object ’profil1’ was exported to tftp://192.168.194.1/demo1.xml gardien94#

Il est alors parfaitement possible, si nous disposons de plusieurs boîtiers, de reprendre un fichier XML contenant  la sortie issue d’une commande export telle que celle employée ci­dessus pour l’incorporer dans d’autres boîtiers, avec ou sans modifications. 

Pour  cela  il  suffit  d’employer  une  instruction  import  sous  la  forme  import  webvpn  customization  nom_profil URL_fichier_XML comme par exemple : 

gardien94# import webvpn customization profil1

tftp://192.168.194.1/demo1.xml

!!!!!!!!!!!!!!!!!! %INFO: customization object ’profil1’ was successfully imported gardien94#

Il nous faut noter que ces profils ne sont pas directement visibles dans la configuration. Tout au plus peut­on voir les instructions faisant appel à eux comme dans cet extrait : 

webvpn url-list value DEMO-SIGNETS homepage none svc ask enable default webvpn timeout 30 customization value Personnalisation-DEMO

smart-tunnel auto-start APPLIS94

En effet ces données XML sont stockées dans une partie de la mémoire flash du boîtier mais les répertoires concernés ne sont normalement pas visibles. 

Il  est  par  contre  possible  de  lister,  voire  de  supprimer  les  profils  de  personnalisation  importés  ou  créés  par  un utilisateur, par la commande revert : 

# une premiere commande avec un ? permet de lister les profils

# supprimables

# gardien94# revert webvpn customization ?

Select customization object to delete: Personnalisation-DEMO profil1

# il est ensuite possible de spécifier celui que nous souhaitons

# faire disparaître

gardien94# revert webvpn customization profil1

%INFO: Customization object ’profil1’ was reverted gardien94#

À noter que nous ne pouvons pas supprimer les profils existants par défaut. 

Nous pouvons également utiliser l’interface graphique pour procéder à la suppression de nos profils. 

- 15 -© ENI Editions - All rights reserved - hassan jouan

enidentnumber-AAEAAAD/////AQAAAAAAAAAMAgAAAE1FTkkuRWRpdGlvbnMuTUVESUFwbHVzLCBWZXJzaW9uPTEuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49bnVsbAUBAAAAJ0VOSS5FZGl0aW9ucy5NRURJQXBsdXMuQ29tbW9uLldhdGVybWFyawIAAAAHcGlzVGV4dAlwaWR0ZURhdGUBAA0CAAAABgMAAAA8NTEzODkwIC0gaGFzc2FuIGpvdWFuIC0gNjFkNGQ0NGItMGM0NS00NjMzLWIwYmQtMDVjYjUwMGZjNDA0wqiUJstbzogLAA==-enidentnumber

Page 16: 2vpn Ssal Sans Client (Clientless)

3. Paramétrages complémentaires 

a. Désactivation temporaire de l’accès (keepout) 

Dans certains cas,  il peut être utile de désactiver l’accès SSL fourni par  le pare­feu Cisco ASA 5505 sans toutefois ôter  le paramétrage sur  le boîtier. Cela peut être  le  cas  lors d’une opération de maintenance ou  si  l’on  souhaite isoler le réseau local des nomades pour des raisons de sécurité (crainte de compromissions de mots de passe par exemple). Dans ce cas, il existe un moyen très simple d’interdire les connexions au travers de l’instruction keepout chaîne, l’argument chaîne désignant la raison de l’interdiction. 

Voici un exemple d’une telle mise en œuvre sur le boîtier : 

gardien94# conf t

gardien94(config)# webvpn

gardien94(config-webvpn)# keepout "Acces nomade temporairement

indisponible - Reouverture a 15h30"

gardien94(config-webvpn)# exit

gardien94(config)# exit

gardien94#

et le résultat côté client web lorsque nous cherchons à nous connecter au travers de l’URL https://198.18.94.254 : 

 

Pour lever cette interdiction, il suffit de donner l’instruction no keepout : 

gardien94# conf t

gardien94(config)# webvpn

gardien94(config-webvpn)# no keepout

- 16 - © ENI Editions - All rights reserved - hassan jouan

enidentnumber-AAEAAAD/////AQAAAAAAAAAMAgAAAE1FTkkuRWRpdGlvbnMuTUVESUFwbHVzLCBWZXJzaW9uPTEuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49bnVsbAUBAAAAJ0VOSS5FZGl0aW9ucy5NRURJQXBsdXMuQ29tbW9uLldhdGVybWFyawIAAAAHcGlzVGV4dAlwaWR0ZURhdGUBAA0CAAAABgMAAAA8NTEzODkwIC0gaGFzc2FuIGpvdWFuIC0gNjFkNGQ0NGItMGM0NS00NjMzLWIwYmQtMDVjYjUwMGZjNDA0wqiUJstbzogLAA==-enidentnumber

Page 17: 2vpn Ssal Sans Client (Clientless)

gardien94(config-webvpn)# exit

gardien94(config)# exit

gardien94#

b. Activation d’un clavier virtuel (onscreen­keyboard) 

Pour des sites sensibles, il est important que les mots de passe de connexion en VPN SSL ne puissent être capturés lors de  leur saisie sur  le clavier du poste distant. Cela permet de réduire  les risques  liés à des codes malfaisants implantant un keylogger (enregistreur de frappes clavier) sur un poste. 

Les boîtiers ASA permettent d’activer un clavier virtuel pour saisir avec la souris et non avec le clavier les mots de passe comme dans l’exemple ci­dessous : 

 

Pour  activer  cette  fonction,  il  suffit  d’utiliser  l’instruction onscreen­keyboard  [all  |  logon].  Si  l’argument  est  all, toutes les saisies feront l’objet de l’utilisation du clavier virtuel. Si le choix est logon, seul le mot de passe de login (comme dans l’exemple ci­dessus) sera saisi sur ce clavier virtuel. 

Exemple d’activation 

gardien94# conf t

gardien94(config)# webvpn

gardien94(config-webvpn)# onscreen-keyboard logon

gardien94(config-webvpn)# gardien94#

Pour la désactivation il suffit d’utiliser l’instruction no onscreen­keyboard sans argument : 

gardien94# conf t

gardien94(config)# webvpn

gardien94(config-webvpn)# no onscreen-keyboard

gardien94(config-webvpn)# gardien94#

c. Personnalisation des menus disponibles après le login 

Il est possible de limiter les protocoles utilisables au travers du portail. 

Nous pouvons par exemple supprimer l’accès au HTTP par la configuration suivante : 

- 17 -© ENI Editions - All rights reserved - hassan jouan

enidentnumber-AAEAAAD/////AQAAAAAAAAAMAgAAAE1FTkkuRWRpdGlvbnMuTUVESUFwbHVzLCBWZXJzaW9uPTEuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49bnVsbAUBAAAAJ0VOSS5FZGl0aW9ucy5NRURJQXBsdXMuQ29tbW9uLldhdGVybWFyawIAAAAHcGlzVGV4dAlwaWR0ZURhdGUBAA0CAAAABgMAAAA8NTEzODkwIC0gaGFzc2FuIGpvdWFuIC0gNjFkNGQ0NGItMGM0NS00NjMzLWIwYmQtMDVjYjUwMGZjNDA0wqiUJstbzogLAA==-enidentnumber

Page 18: 2vpn Ssal Sans Client (Clientless)

gardien94# conf t

gardien94(config)# group-policy NomadesSSL attributes

gardien94(config-group-policy)# webvpn

gardien94(config-group-webvpn)# url-entry disable

gardien94(config-group-webvpn)#

ce qui restreint les URLs utilisables à CIFS et FTP : 

 

Si nous avons défini des URLs en HTTP comme dans l’extrait  ci­dessous, dans lequel nous utilisons toujours notre liste de signets DEMO­SIGNETS : 

group-policy NomadesSSL attributes vpn-tunnel-protocol webvpn webvpn url-list value DEMO-SIGNETS homepage none

nous avons alors toujours accès à ces liens par le choix Web Applications : 

- 18 - © ENI Editions - All rights reserved - hassan jouan

enidentnumber-AAEAAAD/////AQAAAAAAAAAMAgAAAE1FTkkuRWRpdGlvbnMuTUVESUFwbHVzLCBWZXJzaW9uPTEuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49bnVsbAUBAAAAJ0VOSS5FZGl0aW9ucy5NRURJQXBsdXMuQ29tbW9uLldhdGVybWFyawIAAAAHcGlzVGV4dAlwaWR0ZURhdGUBAA0CAAAABgMAAAA8NTEzODkwIC0gaGFzc2FuIGpvdWFuIC0gNjFkNGQ0NGItMGM0NS00NjMzLWIwYmQtMDVjYjUwMGZjNDA0wqiUJstbzogLAA==-enidentnumber

Page 19: 2vpn Ssal Sans Client (Clientless)

 

Nous pouvons également interdire l’accès au parcours réseau par CIFS avec des instructions telles que : 

gardien94# conf t

gardien94(config)# group-policy NomadesSSL attributes

gardien94(config-group-policy)# webvpn

gardien94(config-group-webvpn)# file-browsing disable

gardien94(config-group-webvpn)# gardien94# gardien94#

Après  le  login  nous  obtenons  alors  l’écran  suivant  pour  Browse  Networks  qui  ne  nous  offre  aucune  possibilité d’exploration. 

 

Par  contre  si  des  ressources  CIFS  sont  explicitement  listées  dans  les  signets,  elles  seront  visibles  dans Browse Networks. 

Pour lever ces restrictions il suffit de remplacer les instructions disable par enable, pour activer à nouveau HTTP et HTTPS : 

gardien94# conf t

gardien94(config)# group-policy NomadesSSL attributes

gardien94(config-group-policy)# webvpn

- 19 -© ENI Editions - All rights reserved - hassan jouan

enidentnumber-AAEAAAD/////AQAAAAAAAAAMAgAAAE1FTkkuRWRpdGlvbnMuTUVESUFwbHVzLCBWZXJzaW9uPTEuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49bnVsbAUBAAAAJ0VOSS5FZGl0aW9ucy5NRURJQXBsdXMuQ29tbW9uLldhdGVybWFyawIAAAAHcGlzVGV4dAlwaWR0ZURhdGUBAA0CAAAABgMAAAA8NTEzODkwIC0gaGFzc2FuIGpvdWFuIC0gNjFkNGQ0NGItMGM0NS00NjMzLWIwYmQtMDVjYjUwMGZjNDA0wqiUJstbzogLAA==-enidentnumber

Page 20: 2vpn Ssal Sans Client (Clientless)

gardien94(config-group-webvpn)# url-entry enable

gardien94(config-group-webvpn)#

et pour ce qui est de l’exploration réseau Windows : 

gardien94# conf t

gardien94(config)# group-policy NomadesSSL attributes

gardien94(config-group-policy)# webvpn

gardien94(config-group-webvpn)# file-browsing enable

gardien94(config-group-webvpn)# gardien94#

d. Activation d’une page d’accueil 

Il  est  également  possible  de  rediriger  automatiquement  sur  une  page  d’accueil  prédéterminée  les  utilisateurs  du portail une fois qu’ils sont authentifiés. 

C’est ce que nous faisons avec les instructions : 

gardien94# conf t

gardien94(config-group-policy)# group-policy NomadesSSL attributes

gardien94(config-group-policy)# webvpn

gardien94(config-group-webvpn)# homepage value

http://192.168.194.201

gardien94(config-group-webvpn)# gardien94#

qui  vont  automatiquement  rediriger  les  utilisateurs  vers  l’adresse  192.168.194.201  comme  dans  l’exemple  ci­dessous, où nous arrivons sur la page d’accueil du NAS : 

 

Pour désactiver cette fonctionnalité, il suffit de repasser une instruction homepage none : 

gardien94# conf t

gardien94(config)# group-policy NomadesSSL attributes

gardien94(config-group-policy)# webvpn

gardien94(config-group-webvpn)# homepage none

gardien94(config-group-webvpn)# gardien94#

- 20 - © ENI Editions - All rights reserved - hassan jouan

enidentnumber-AAEAAAD/////AQAAAAAAAAAMAgAAAE1FTkkuRWRpdGlvbnMuTUVESUFwbHVzLCBWZXJzaW9uPTEuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49bnVsbAUBAAAAJ0VOSS5FZGl0aW9ucy5NRURJQXBsdXMuQ29tbW9uLldhdGVybWFyawIAAAAHcGlzVGV4dAlwaWR0ZURhdGUBAA0CAAAABgMAAAA8NTEzODkwIC0gaGFzc2FuIGpvdWFuIC0gNjFkNGQ0NGItMGM0NS00NjMzLWIwYmQtMDVjYjUwMGZjNDA0wqiUJstbzogLAA==-enidentnumber

Page 21: 2vpn Ssal Sans Client (Clientless)

e. Limitation des sites visités 

Il est possible de mettre en place un filtrage assez basique des sites visités. Ce  filtrage n’a pas  la prétention de concurrencer des outils de filtrage de contenu basés sur des serveurs spécialisés tels que WebSense. 

Le principe est d’abord de définir une ACL comprenant soit des URLs soit des adresses IP. Nous allons par exemple ici définir une ACL comportant deux URLs HTTP, deux accès CIFS et une adresse IP à autoriser : 

gardien94(config)# gardien94(config)# access-list WEBLIST webtype permit url

http://192.168.194.155 log

gardien94(config)# access-list WEBLIST webtype permit url

http://192.168.194.155/* log

gardien94(config)# access-list WEBLIST webtype permit url

cifs://192.168.194.201/DEMOS02 log

gardien94(config)# access-list WEBLIST webtype permit url

cifs://192.168.194.201/DEMOS01 log

gardien94(config)# access-list WEBLIST webtype permit tcp host

192.168.194.212 log

gardien94(config)#

Tout ce qui n’est pas explicitement permis sera rejeté. 

Il faut ensuite faire référence à cette ACL dans une politique de groupe (group policy) : 

gardien94(config)# group-policy NomadesSSL attributes

gardien94(config-group-policy)# webvpn

gardien94(config-group-webvpn)# filter value WEBLIST

gardien94(config-group-policy)# exit

gardien94(config)#

Si nous essayons d’accéder à http://192.168.194.213, qui n’est pas inclus dans WEBLIST, nous obtenons alors un message de rejet : 

 

Et si nous activons l’affichage des logs sur le boîtier par debug webvpn, nous obtenons alors des lignes telles que : 

Access Permitted: http://192.168.194.212/html/index.htm Access Permitted: http://192.168.194.212/html/index.htm Access permitted: http://192.168.194.212 Access permitted: http://192.168.194.155 Access Denied: http://192.168.194.213 Access permitted: http://192.168.194.155 Access permitted: http://192.168.194.155 Access Denied: cifs://192.168.194.201

- 21 -© ENI Editions - All rights reserved - hassan jouan

enidentnumber-AAEAAAD/////AQAAAAAAAAAMAgAAAE1FTkkuRWRpdGlvbnMuTUVESUFwbHVzLCBWZXJzaW9uPTEuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49bnVsbAUBAAAAJ0VOSS5FZGl0aW9ucy5NRURJQXBsdXMuQ29tbW9uLldhdGVybWFyawIAAAAHcGlzVGV4dAlwaWR0ZURhdGUBAA0CAAAABgMAAAA8NTEzODkwIC0gaGFzc2FuIGpvdWFuIC0gNjFkNGQ0NGItMGM0NS00NjMzLWIwYmQtMDVjYjUwMGZjNDA0wqiUJstbzogLAA==-enidentnumber

Page 22: 2vpn Ssal Sans Client (Clientless)

Access Denied: cifs://192.168.194.201/DEMOS01 Access Permitted: cifs://192.168.194.201/DEMO02 Access Permitted: cifs://192.168.194.201/DEMO02 Access Denied: cifs://192.168.194.201/DEMOS01

Cela permet de vérifier les URLs demandées et les acceptations ou rejets qui en découlent. C’est indispensable en cas de difficultés pour obtenir les effets désirés et pour adapter en conséquence l’ACL utilisée par le filtre. 

Pour désactiver ce filtrage, il suffit de donner les ordres suivants : 

gardien94(config)# group-policy NomadesSSL attributes

gardien94(config-group-policy)# webvpn

gardien94(config-group-webvpn)# no filter value WEBLIST

gardien94(config-group-webvpn)#

De même, il est possible d’empêcher l’utilisation de java, des cookies ou des images en utilisant la commande html­content­filter comme dans : 

gardien94(config)# group-policy NomadesSSL attributes

gardien94(config-group-policy)# webvpn

gardien94(config-group-webvpn)# html-content-filter cookies ?

config-group-webvpn mode commands/options: images Indicate filtering of images from the HTML java Indicate filtering of java (and ActiveX) from the HTML scripts Indicate filtering of scripts from the HTML <cr> gardien94(config-group-webvpn)# html-content-filter cookies images java

gardien94(config-group-webvpn)#

f. Limitation des quantités de données transférées 

Il existe des commandes permettant de limiter les données transférées au travers du portail SSL. 

Voici un exemple d’une telle configuration : 

gardien94(config)# gardien94(config)# group-policy NomadesSSL attributes

gardien94(config-group-policy)# webvpn

#

# Les tailles sont définies en octets.

# Nous allons d’abord définir la taille maximale utilisable

# pour télécharger vers le portail un document

# gardien94(config-group-webvpn)# upload-max-size 10240

#

# puis celle pour télécharger depuis le portail

# gardien94(config-group-webvpn)# download-max-size 2048

#

# et enfin celle utilisable pour déposer un document par la méthode POST

# gardien94(config-group-webvpn)# post-max 1234560

gardien94(config-group-webvpn)#

g. Limitation des plages horaires 

Il est parfois souhaitable que les accès extérieurs soient limités à certains jours et/ou à certaines heures. Cela est possible en définissant des plages horaires, comme pour les ACL : 

gardien94# conf t gardien94(config)# time-range SOIR

gardien94(config-time-range)# periodic weekend 19:00 to 19:45

gardien94(config-time-range)# exit gardien94(config)# exit

- 22 - © ENI Editions - All rights reserved - hassan jouan

enidentnumber-AAEAAAD/////AQAAAAAAAAAMAgAAAE1FTkkuRWRpdGlvbnMuTUVESUFwbHVzLCBWZXJzaW9uPTEuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49bnVsbAUBAAAAJ0VOSS5FZGl0aW9ucy5NRURJQXBsdXMuQ29tbW9uLldhdGVybWFyawIAAAAHcGlzVGV4dAlwaWR0ZURhdGUBAA0CAAAABgMAAAA8NTEzODkwIC0gaGFzc2FuIGpvdWFuIC0gNjFkNGQ0NGItMGM0NS00NjMzLWIwYmQtMDVjYjUwMGZjNDA0wqiUJstbzogLAA==-enidentnumber

Page 23: 2vpn Ssal Sans Client (Clientless)

gardien94# show time-range SOIR

time-range entry: SOIR (active) periodic weekend 19:00 to 19:45 gardien94#

puis en les appliquant au groupe NomadesSSL : 

gardien94(config)# group-policy NomadesSSL attributes

gardien94(config-group-policy)# vpn-access-hours ?

group-policy mode commands/options: none Specify that there is no time-range restriction value Specify the name of an existing time-range policy gardien94(config-group-policy)# vpn-access-hours value SOIR

gardien94(config-group-policy)#

Nous voyons ici que ces restrictions ne concernent pas seulement l’accès webvpn mais en fait tout accès effectué par un membre du groupe NomadesSSL. 

Si une tentative d’accès a lieu en dehors des plages autorisées, un message de rejet Login failed s’affiche alors sur le navigateur : 

 

Par contre, les connexions déjà existantes au moment où la plage expire ne sont pas coupées. Les restrictions ne s’appliquent qu’aux nouvelles tentatives de connexion. 

Pour désactiver cette plage, il suffit d’utiliser la commande vpn­access­hours none. 

gardien94# conf t

gardien94(config)# group-policy NomadesSSL attributes

gardien94(config-username)# vpn-access-hours none

gardien94(config-username)# gardien94#

h. Autres paramètres 

Nous  avons  jusqu’à  présent  appliqué  nos  différents  réglages  à  une  politique  de  groupe  (NomadesSSL  dans  la plupart de nos exemples) mais beaucoup de ces réglages peuvent aussi être spécifiquement personnalisés pour un utilisateur. Voici un échantillon des commandes reconnues au niveau des attributs généraux : 

gardien94(config)# username nomade1 attributes

Affectation d’une policy ou de réglages à un utilisateur donné

- 23 -© ENI Editions - All rights reserved - hassan jouan

enidentnumber-AAEAAAD/////AQAAAAAAAAAMAgAAAE1FTkkuRWRpdGlvbnMuTUVESUFwbHVzLCBWZXJzaW9uPTEuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49bnVsbAUBAAAAJ0VOSS5FZGl0aW9ucy5NRURJQXBsdXMuQ29tbW9uLldhdGVybWFyawIAAAAHcGlzVGV4dAlwaWR0ZURhdGUBAA0CAAAABgMAAAA8NTEzODkwIC0gaGFzc2FuIGpvdWFuIC0gNjFkNGQ0NGItMGM0NS00NjMzLWIwYmQtMDVjYjUwMGZjNDA0wqiUJstbzogLAA==-enidentnumber

Page 24: 2vpn Ssal Sans Client (Clientless)

gardien94(config-username)# ?

username configuration commands: exit Exit from username attribute configuration mode group-lock Enter name of an existing tunnel-group that the user is required to connect with help Help for username configuration commands ipv6-vpn-filter Enter name of user specific ACL memberof Enter a comma separated list of group- names that this user is a member of. no Remove an attribute value pair password-storage Enable/disable storage of the login password on the client system service-type Select service type for this user. vpn-access-hours Enter name of a configured time-range policy vpn-filter Enter name of user specific ACL vpn-framed-ip-address Enter the IP address and the net mask to be assigned to the client vpn-group-policy Enter name of a group-policy to inherit attributes from vpn-idle-timeout Enter idle timeout period in minutes, enter none to disable vpn-session-timeout Enter maximum user connection time in minutes, enter none for unlimited time vpn-simultaneous-logins Enter maximum number of simultaneous logins allowed vpn-tunnel-protocol Enter permitted tunneling protocols webvpn Configure user policy for WebVPN gardien94(config-username)#

Mais nous pouvons aussi définir des paramètres uniquement pour le webvpn : 

gardien94(config-username)# webvpn

gardien94(config-username-webvpn)# ?

Username WebVPN commands: activex-relay Enable or disable activex relay auto-signon Configure auto-sign to allow login to certain applications using the WebVPN session credentials customization Configure a customization object deny-message Configure the Deny message download-max-size Set maximum object size to download exit Exit from user or group policy webvpn configuration mode file-browsing Allow browsing for file servers and shares file-entry Allow user entry of file server names to access filter Configure the name of the webtype access-list help Help for username webvpn commands hidden-shares CIFS hidden shares homepage Configure URL of web page to be displayed upon login html-content-filter Configures the content/objects to be filtered from the HTML for this policy http-comp HTTP Compression http-proxy Controls HTTP Proxy port forwarding keep-alive-ignore Maximum object size to ignore for updating the session timer no Remove a command or set to its default port-forward Configure the name of the Port Forwarding applet and auto-download options post-max-size Set maximum object size to post smart-tunnel Configure smart tunnel sso-server Configure SSO server name storage-key Configure storage key for the data stored between sessions. storage-objects Configure storage objects for the data stored between sessions. svc SVC Parameters configuration

- 24 - © ENI Editions - All rights reserved - hassan jouan

enidentnumber-AAEAAAD/////AQAAAAAAAAAMAgAAAE1FTkkuRWRpdGlvbnMuTUVESUFwbHVzLCBWZXJzaW9uPTEuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49bnVsbAUBAAAAJ0VOSS5FZGl0aW9ucy5NRURJQXBsdXMuQ29tbW9uLldhdGVybWFyawIAAAAHcGlzVGV4dAlwaWR0ZURhdGUBAA0CAAAABgMAAAA8NTEzODkwIC0gaGFzc2FuIGpvdWFuIC0gNjFkNGQ0NGItMGM0NS00NjMzLWIwYmQtMDVjYjUwMGZjNDA0wqiUJstbzogLAA==-enidentnumber

Page 25: 2vpn Ssal Sans Client (Clientless)

unix-auth-gid Set the Unix group ID unix-auth-uid Set the Unix user ID upload-max-size Set maximum object size to upload url-entry Control the ability of the user to enter any HTTP/HTTPS URL url-list Configure a list of WebVPN servers/URLs user-storage Configure location for storing user data between sessions. gardien94(config-username-webvpn)#

Le  boîtier  ASA  peut  servir  de  proxy  cache  (un  peu  à  la manière  d’un  SQUID) mais  avec  des moyens  très  limités compte tenu que tout doit se passer en mémoire. Par défaut, le cache est activé. 

Quelques instructions permettent de définir quelques réglages liés à cette fonctionnalité. Voici un exemple commenté de la mise en œuvre de tels réglages. 

# Passage en mode paramétrage du cache

gardien94(config)# webvpn

gardien94(config-webvpn)# cache

# activation si nécessaire du cache des éléments statiques

gardien94(config-webvpn-cache)# cache-static-content enable

# définition de la durée d’expiration des éléments en cache (en minutes)

gardien94(config-webvpn-cache)# expiry-time 60

#

# définition du facteur multiplicatif du temps d’expiration (0 à 100)

# gardien94(config-webvpn-cache)# lmfactor 5

#

# Taille mini et maxi des objets mis en cache

# en Ko (de 0 à 10 000 Ko, 0 par défaut)

# gardien94(config-webvpn-cache)# min-object-size 1

gardien94(config-webvpn-cache)# max-object-size 100

gardien94(config-webvpn-cache)# gardien94#

Pour désactiver le cache, il suffit de donner l’instruction disable : 

gardien94(config)# webvpn

gardien94(config-webvpn)# cache

gardien94(config-webvpn-cache)# disable

gardien94(config-webvpn-cache)# gardien94#

Il est à noter qu’une commande parfois référencée dans certains ouvrages n’a fait qu’une brève apparition : il s’agit de cache­fs limit taille_du_cache. Cette commande est apparue en 8.0.2 pour disparaître en 8.0.3. 

Le boîtier ASA peut également faire appel à un proxy tiers, tel qu’un serveur SQUID, pour bénéficier de meilleures performances et capacités de traitement. 

Les commandes disponibles sont peu nombreuses. Voici un exemple commenté de plusieurs variantes avec comme point commun l’utilisation d’un serveur proxy accessible sur le port 8080 de la machine 192.168.194.111 : 

gardien94# conf t

gardien94(config)# webvpn

# déclaration du proxy http sur le port 8080

gardien94(config-webvpn)# http-proxy 192.168.1.111 8080

#

# idem avec le protocole https

# gardien94(config-webvpn)# https-proxy 192.168.1.111 8080

Utilisation du boîtier en tant que proxy

Utilisation d’un proxy tiers

- 25 -© ENI Editions - All rights reserved - hassan jouan

enidentnumber-AAEAAAD/////AQAAAAAAAAAMAgAAAE1FTkkuRWRpdGlvbnMuTUVESUFwbHVzLCBWZXJzaW9uPTEuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49bnVsbAUBAAAAJ0VOSS5FZGl0aW9ucy5NRURJQXBsdXMuQ29tbW9uLldhdGVybWFyawIAAAAHcGlzVGV4dAlwaWR0ZURhdGUBAA0CAAAABgMAAAA8NTEzODkwIC0gaGFzc2FuIGpvdWFuIC0gNjFkNGQ0NGItMGM0NS00NjMzLWIwYmQtMDVjYjUwMGZjNDA0wqiUJstbzogLAA==-enidentnumber

Page 26: 2vpn Ssal Sans Client (Clientless)

# On peut aussi avoir besoin de spécifier un nom et mot de passe

# pour l’accès au proxy externe

# gardien94(config-webvpn)# http-proxy 192.168.1.111 8080 username

demoproxy password demo2011

#

# ou bien souhaiter exclure certaines URLs ou certains domaines

# du passage par le proxy (par exemple un domaine local)

# gardien94(config-webvpn)# http-proxy 192.168.1.111 8080 exclude

*.societefictive.com

#

# Enfin il existe une possibilité d’autoconfigurer les réglages de

# proxy dans le navigateur de l’utilisateur, par exemple en

# téléchargeant un fichier d’auto-configuration depuis un serveur TFTP

# gardien94(config-webvpn)# http-proxy pac tftp://pac.cfg

WARNING: PAC settings will override http- and https-proxy configurations. Do not overwrite configuration file if you want to preserve the old http- and https-proxy configurations. gardien94(config-webvpn)#

4. Limitations imposées par cette méthode de connexion 

Les limites d’utilisation de ce portail sans client sont assez évidentes : seuls les protocoles HTTP, HTTPS, CIFS et FTP sont  directement  utilisables  au  travers  de  cet  accès  VPN.  Elle  ne  peut  donc  convenir  que  pour  des  besoins  assez classiques et basiques : accès à des ressources web internes, accès à des partages de fichiers Windows, accès à un serveur FTP. 

Dans tous les autres cas, il faudra trouver un autre moyen d’accéder aux ressources du réseau local. 

5. Résolution de problèmes 

En cas de difficultés pour établir la communication avec le portail ou pour accéder à certaines ressources il y a deux pistes à suivre : 

● les commandes show permettant d’établir le statut d’un VPN à un instant t, 

● les commandes debug permettant de suivre en temps réel le déroulement d’une connexion. 

Parmi les commandes show nous pouvons utiliser, pour avoir les compteurs des sessions VPN en cours avec et sans client : 

gardien94# show vpn-sessiondb summary

Active Session Summary Sessions: Active : Cumulative : Peak Concurrent : Inactive SSL VPN : 1 : 36 : 2 Clientless only : 1 : 36 : 2 With client : 0 : 0 : 0 : 0 Totals : 1 : 36 License Information: IPsec : 10 Configured : 10 Active : 0 Load : 0% SSL VPN : 2 Configured : 2 Active : 1 Load : 50% Active : Cumulative : Peak Concurrent SSL VPN : 1 : 36 : 2

- 26 - © ENI Editions - All rights reserved - hassan jouan

enidentnumber-AAEAAAD/////AQAAAAAAAAAMAgAAAE1FTkkuRWRpdGlvbnMuTUVESUFwbHVzLCBWZXJzaW9uPTEuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49bnVsbAUBAAAAJ0VOSS5FZGl0aW9ucy5NRURJQXBsdXMuQ29tbW9uLldhdGVybWFyawIAAAAHcGlzVGV4dAlwaWR0ZURhdGUBAA0CAAAABgMAAAA8NTEzODkwIC0gaGFzc2FuIGpvdWFuIC0gNjFkNGQ0NGItMGM0NS00NjMzLWIwYmQtMDVjYjUwMGZjNDA0wqiUJstbzogLAA==-enidentnumber

Page 27: 2vpn Ssal Sans Client (Clientless)

Totals : 1 : 36 Active NAC Sessions: No NAC sessions to display Active VLAN Mapping Sessions: No VLAN Mapping sessions to display gardien94#

Pour accéder au détail de chaque session, il faut employer la commande suivante : 

gardien94# show vpn-sessiondb webvpn

Session Type: WebVPN Username : nomade1 Index : 45 Public IP : 192.0.2.22 Protocol : Clientless License : SSL VPN Encryption : AES256 Hashing : SHA1 Bytes Tx : 204450 Bytes Rx : 37850 Group Policy : NomadesSSL Tunnel Group : DefaultWEBVPNGroup Login Time : 00:21:12 UTC Mon Apr 25 2011 Duration : 0h:01m:35s Inactivity : 0h:00m:00s NAC Result : Unknown VLAN Mapping : N/A VLAN : none gardien94#

Ou sa version plus détaillée : 

gardien94# show vpn-sessiondb detail webvpn

Session Type: WebVPN Detailed Username : nomade1 Index : 45 Public IP : 192.0.2.22 Protocol : Clientless License : SSL VPN Encryption : AES256 Hashing : SHA1 Bytes Tx : 204146 Bytes Rx : 37098 Pkts Tx : 4 Pkts Rx : 1 Pkts Tx Drop : 0 Pkts Rx Drop : 0 Group Policy : NomadesSSL Tunnel Group : DefaultWEBVPNGroup Login Time : 00:21:12 UTC Mon Apr 25 2011 Duration : 0h:00m:45s Inactivity : 0h:00m:00s NAC Result : Unknown VLAN Mapping : N/A VLAN : none Clientless Tunnels: 1 Clientless: Tunnel ID : 45.1 Public IP : 192.0.2.22 Encryption : AES256 Hashing : SHA1 Encapsulation: TLSv1.0 TCP Dst Port : 443 Auth Mode : userPassword Idle Time Out: 30 Minutes Idle TO Left : 29 Minutes Client Type : Web Browser Client Ver : Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.9.2.12) Gecko/20101026 Firefox Bytes Tx : 204146 Bytes Rx : 37098 NAC: Reval Int (T): 0 Seconds Reval Left(T): 0 Seconds SQ Int (T) : 0 Seconds EoU Age(T) : 45 Seconds

- 27 -© ENI Editions - All rights reserved - hassan jouan

enidentnumber-AAEAAAD/////AQAAAAAAAAAMAgAAAE1FTkkuRWRpdGlvbnMuTUVESUFwbHVzLCBWZXJzaW9uPTEuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49bnVsbAUBAAAAJ0VOSS5FZGl0aW9ucy5NRURJQXBsdXMuQ29tbW9uLldhdGVybWFyawIAAAAHcGlzVGV4dAlwaWR0ZURhdGUBAA0CAAAABgMAAAA8NTEzODkwIC0gaGFzc2FuIGpvdWFuIC0gNjFkNGQ0NGItMGM0NS00NjMzLWIwYmQtMDVjYjUwMGZjNDA0wqiUJstbzogLAA==-enidentnumber

Page 28: 2vpn Ssal Sans Client (Clientless)

Hold Left (T): 0 Seconds Posture Token: Redirect URL : gardien94#

Nous pouvons également supprimer certaines sessions si le besoin s’en fait sentir, notamment si le message suivant apparaît lors d’un debug : 

gardien94# webvpn_create_session: reached user limit (reserved)

Il suffit alors de passer la commande suivante : 

gardien94# vpn-sessiondb logoff all

Do you want to logoff the VPN session(s)? [confirm] INFO: Number of sessions logged off : 2 gardien94#

Quant au mode debug, voici les principales commandes disponibles : 

gardien94# debug webvpn ?

<1-255> chunk webvpn chunk debugging cifs webvpn cifs debugging citrix webvpn citrix debugging cstp-auth webvpn cstp-auth debugging failover webvpn failover debugging html webvpn html debugging javascript webvpn javascript debugging nfs webvpn nfs debugging request webvpn request debugging response webvpn response debugging session webvpn session debugging svc webvpn svc debugging transformation webvpn transformation debugging url webvpn url debugging util webvpn util debugging xml webvpn xml debugging <cr> gardien94#

C’est d’ailleurs grâce à cette commande que, lors du réglage des filtrages d’accès, nous avons pu afficher les lignes suivantes : 

Access Permitted: http://192.168.194.212/html/index.htm Access Permitted: http://192.168.194.212/html/index.htm Access permitted: http://192.168.194.212 Access permitted: http://192.168.194.155 Access Denied: http://192.168.194.213 Access permitted: http://192.168.194.155 Access permitted: http://192.168.194.155 Access Denied: cifs://192.168.194.201 Access Denied: cifs://192.168.194.201/DEMOS01 Access Permitted: cifs://192.168.194.201/DEMO02 Access Permitted: cifs://192.168.194.201/DEMO02 Access Denied: cifs://192.168.194.201/DEMOS01

- 28 - © ENI Editions - All rights reserved - hassan jouan

enidentnumber-AAEAAAD/////AQAAAAAAAAAMAgAAAE1FTkkuRWRpdGlvbnMuTUVESUFwbHVzLCBWZXJzaW9uPTEuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49bnVsbAUBAAAAJ0VOSS5FZGl0aW9ucy5NRURJQXBsdXMuQ29tbW9uLldhdGVybWFyawIAAAAHcGlzVGV4dAlwaWR0ZURhdGUBAA0CAAAABgMAAAA8NTEzODkwIC0gaGFzc2FuIGpvdWFuIC0gNjFkNGQ0NGItMGM0NS00NjMzLWIwYmQtMDVjYjUwMGZjNDA0wqiUJstbzogLAA==-enidentnumber