Pages

samedi 19 mai 2012

CONFIGURATION D'UN VPN-IPSEC POUR ROUTEUR CISCO


Une entreprise peut avoir besoin d’une connexion WAN entre deux sites.
Dans certains cas (liaison de secours ou liaison WAN pas cher) nous pouvons utiliser un tunnel IPSEC. IPSEC est une technologie VPN qui fonctionne sur la couche3 du model OSI. C’est aussi un standard IETF, ce qui signifie que nous pouvons l’utiliser entre des équipements de différents fabricants.

Les VPN IPSEC permettent :
  •   Une authentification de chaque paquet IP.
  •  Une vérification de l’intégrité des données de chaque paquet.
  •  De rendre confidentiels les données de chaque paquets IP.

IPSEC est un “Framework” qui spécifie plusieurs protocoles à utiliser afin de fournir un standard de sécurité.Les protocoles spécifiés par IPSEC sont :
  
InternetKey Exchange : IKE
IKE va nous permettre de négocier des paramètres de sécurités et créer les clés d’authentification utilisée par le VPN. IKE va permettre d’établir un échange de clé de manière sécurisé sur un réseau « non sécurisé ».

Encapsulating Security Payload: ESP
Le plus utilisé par IPSEC, ESP va encrypté les données. ESP protège également contre des attaques basées sur du trafic « replayed ».

Authentication Header : AH
AH fournit de l’authentification de la donnée. Il est peu utilisé, ESP étant plus efficace et cryptant le tout.

Plus tard dans notre configuration nous utiliserons ESP puisqu’il permet de crypter les données en utilisant DES, 3DES ou AES. AH ne permet pas cela.

Les VPN IPSEC utilisent le protocole IKE afin d’établir une communication sécurisé entre deux « peers» à travers un réseau non sécurisé. IKE utilise l’algorithme de DIFFIE-HELLMAN afin d’échange des clés symétriques entre deux « peers » et de configurer les paratres de sécurité associés au VPN. IKE
utilise le port UDP 500 et envoie des « keepalive » toutes les 10 secondes.

IKE:
  •  Elimine le besoin de spécifier manuellement tous les paratres de sécurité sur chaque «peer». 
  • Permet de configurer une durée de vie pour le SA (Security association) de IPSEC. Une SA est un «ensemble de contrat de sécurité ». 
  • Permet de changer les clés de chiffrement pendant la session IPSEC 
  • Permet de fournir des services « anti-replay » 
  • Supporte l’architecture PKI. 
  •  Permet une authentification dynamique de chaque peer.

Apres ces quelques explications nous allons voir comment configurer un VPN IPSEC.

Nous avons deux sites (Paris et Chine). Nous avons déjà une connexion WAN qui fonctionne entre les deux sites. Nous souhaitons configurer une connexion VPN entre PARIS et CHINE qui servira de connexion de secours. Nous décidons d’utiliser notre connexion Internet qui coûte moins cher quune connexion ISDN. Mais pour cela nous devons crypter notre traffic.




Voici les différentes étapes de configuration :

1. Définir les règles de sécurité ISAKMP
2. Configurer les « transform set »
3. Configurer une ACL qui spécifiera quel trafic peut/doit emprunter le VPN.
4. Configurer une « crypto-map »
5. Appliquer la « crypto-map » sur l’interface
6. Configurer une ACL si besoin sur l’interface « outside » (en option)

Nous devrons exécuter ces étapes de configurations sur les routeurs de PARIS et CHINE. 
Définir une règle de sécurité ISAKMP
Nous devons d’abord activer le moteur « isakmp »en utilisant la commande :



CHINA(config)# crypto isakmp enable
PARIS(config)# crypto isakmp enable


Nous utiliserons la commande suivante afin d’activer le moteur « software » au cas où notre routeur ne disposerait pas de moteur « hardware ».

CHINA (config)# crypto engine software ipsec
PARIS (config)# crypto engine software ipsec



Dans cet article nous utiliserons une « clé partagé » (Pre Shared Key) pour l’authentification. Elle doit être associée à un « peer » distant qui utilise la même « clé partagé ». (Ici la PSK est labo-cisco).



CHINA (config)#crypto isakmp key labo-cisco address 192.168.0.6


PARIS(config)# crypto isakmp key labo-cisco address 192.168.0.1


 Nous allons maintenant utiliser les paramètres suivant pour notre VPN sur les deux routeurs:
  • Authentication mode : Pre shared key (Nous pouvons aussi utiliser des « Username & Password »,   OTP, ou des certificats).
  • Hash Method: SHA (md5 or sha)
  •   Encryption type : AES 192 (DES est par défaut, l’encryption AES peut utiliser de 128 à 256 bits)
  •   Diffie-Hellman group à utiliser : 1 or 2 (group 1 est basé sur 768-bit et group 2 est basé sur 1024 bits).
  • Lifetime of the exchanged key : Nous utiliserons 3600 pour 1 heure.(Par défaut 86400 secondes)


  Donc au final nous configurerons nos routeurs comme cela :


CHINA(config)#crypto isakmp policy 1
CHINA (config-isakmp)# encr aes 192
CHINA (config-isakmp)# authentication pre-share
CHINA (config-isakmp)# group 2


PARIS(config)#crypto isakmp policy 1
PARIS (config-isakmp)# encr aes 192
PARIS (config-isakmp)# authentication pre-share
PARIS (config-isakmp)# group 2


Configuration des « transform-set »
Une « transform-set » est une combinaison d’algorithmes et protocoles de sécurité «acceptable». Les « peers » essaieront de trouver la meilleure combinaison possible selon les configurations et
capacités de chaque point de chute du VPN en se basant sur les « transform-set » disponibles

Configuration: 
CHINA(config)#crypto ipsec transform-set TSET esp-aes192  esp-sha1-hmac
PARIS(config)#crypto ipsec transform-set TSET esp-aes192 esp-sha1-hmac



* TSET est le nom du « transform-set » situé sur le routeur (portée locale)
* “esp-aes” précise que nous allons encrypter en utilisant ESP et AES.
* “192” est le nombre de bits utiliser pour le cryptage.
* esp-sha1-hmac comme transform d’authentification

Apres avoir entré cette commande nous avons un nouveau mode de configuration ou nous pouvons configurer notre VPN en mode « Transport » ou « Tunnel »
Le mode « Tunnel » encryptera tout le « datagram » (y compris les IP sources et destination, gênant ainsi la QOS) alors que le mode « Transport » encryptera seulement la donnée présente dans le
paquet IP (peut poser un problème de sécurité car une personne malveillante peut ainsi voir les vrai IP
source et destination de chaque paquet IP).

Ici nous allons utiliser le mode « Tunnel » :



CHINA(config)#mode  tunnel
PARIS(config)#mode  tunnel



Configurer une ACL qui spécifiera quel trafic peut/doit emprunter le VPN

Ici nous allons autoriser le traffic depuis le lan de PARIS vers le lan de CHINE. Il faut utiliser une ACL étendue.

Sur Chine :


CHINE (config)#access-list 101 permit ip 10.0.1.0 0.0.0.255 10.0.2.0 0.0.0.255


Et sur Paris :
PARIS(config)#access-list 101 permit ip 10.0.2.0 0.0.0.255 10.0.1.0 0.0.0.255


Configurer la « crypto-map »

Une « crypto-map » est comme un profil, qui va associer les ACL (crypto-ACL) , « transform-set »
configuré précédemment avec l’adresse IP du « peer » distant.

Sur CHINA nous entrerons les commandes suivante :


CHINA(config-crypto-map)#crypto map VPN-2-MAIN 10 ipsec-isakmp match address 101
CHINA(config-crypto-map)#set peer 192.168.0.6
CHINA(config-crypto-map)#set transform-set TSET


Et sur Paris :
PARIS(config-crypto-map)#crypto map VPN-2-Remote 10 ipsec-isakmp match address 101
PARIS(config-crypto-map)#set peer 192.168.0.1
PARIS(config-crypto-map)#set transform-set TSET


Appliquer la « Crypto-map » sur l’interface
PARIS(config-if)#crypto map VPN-2-Remote


CHINE(config-if)#crypto map VPN-2-MAIN



Voici la maquette utilisée pour tester cette configuration : La version d' IOS utilisé est la 12.4(1).








Comme nous pouvons le voir dans la table de routage tout trafic provenant du LAN 10.0.1.0/24 vers 10.0.2.0/24 utilisera la liaison WAN principale.


Si celle-ci est inutilisable, rien ne se passera même si nous avons configuré le VPN IPSEC sur les deux routeurs.
Nous pouvons ajouter une route statique flottante (AD plus grande que l’AD de RIP) qui peut ainsi relayer la liaison principale arrête de fonctionner.

Il suffit de taper:


PARIS(config)#ip route 10.0.1.0 255.255.255.0 192.168.0.1 140


CHINE(config)#ip route 10.0.2.0 255.255.255.0 192.168.0.6 140


Nous pouvons tester cela:
Sur l’ordinateur A nous faisons un « traceroute » vers l’ordinateur B :
 
Maintenant nous allons tester la route statique flottante quand la liaison principale est non utilisable.


Faisons un autre « traceroute » afin de confirmer que nous utilisons bien notre VPN.


1 commentaire:

  1. Eliam Stephane
    bonjour merci pour cette configuration. mais j’aimerai bien savoir comment configure un vpn ipsec client to site cisco router.

    RépondreSupprimer

Nom
Prénom