Mise en place d'un VPN
Apprenez à configurer un réseau privé virtuel (VPN) pour sécuriser vos connexions internet avec le logiciel Packet Tracer.
Introduction
Dans ce tutoriel nous allons apprendre à configurer un VPN avec le logiciel de simulation de réseau Packet Tracer.
Un VPN (Virtual Private Network) est un réseau privé virtuel qui permet de sécuriser les connexions internet en créant un tunnel chiffré entre l'utilisateur et le serveur VPN. Cela permet de protéger les données contre les interceptions et de masquer l'adresse IP de l'utilisateur.
Création
Pour la création de ce tutoriel il nous faudra un ordinateur, un serveur et trois routeurs (modèle pris en exemple le 1811), on utilisera les adresses IP de la classe A & C (10.1.1.0/30 - 10.2.2.0/30 - 192.168.1.0/24 - 192.168.3.0/24).
| Appareil | Interface | Adresse IP | Masque de sous-réseau | Passerelle par défaut |
|---|---|---|---|---|
| PC | FastEthernet 0/0 | 192.168.1.1 | 255.255.255.0 | 192.168.1.254 |
| Routeur R1 | FastEthernet 0/1 | 192.168.1.254 | 255.255.255.0 | - |
| Routeur R1 | FastEthernet 0/0 | 10.1.1.1 | 255.255.255.252 | - |
| Routeur R2 | FastEthernet 0/0 | 10.1.1.2 | 255.255.255.252 | - |
| Routeur R2 | FastEthernet 0/1 | 10.2.2.1 | 255.255.255.252 | - |
| Routeur R3 | FastEthernet 0/0 | 10.2.2.2 | 255.255.255.252 | - |
| Routeur R3 | FastEthernet 0/1 | 192.168.3.254 | 255.255.255.0 | - |
| Serveur | FastEthernet 0/0 | 192.168.3.1 | 255.255.25.0 | 192.168.3.254 |
Dans cette réalisation du VPN, on utilisras le protocole IPsec.
Réalisation
On commence par configurer notre PC et notre serveur en leur attribuant la bonne configuration réseau.
Voici la configuration réseau de notre PC et de notre serveur :
- @IP du PC : 192.168.1.1
- Masque de réseau : 255.255.255.0
- Passerelle : 192.168.1.254
- @IP du serveur : 192.168.3.1
- masque de réseau : 255.255.255.0
- Passerelle : 192.168.3.254
Configuration du routeur R1
Maintenant que notre PC et notre serveur sont configurés, nous allons configurer nos routeurs pour qu'ils puissent communiquer entre eux et permettre au PC d'accéder au serveur à travers le VPN.
Nous allons commencer par configurer le routeur R1, qui est le routeur d'extrémité du réseau local du PC. Nous allons lui attribuer les adresses IP sur les interfaces FastEthernet 0/1 et FastEthernet 0/0, puis configurer le routage pour permettre la communication entre les différents réseaux.
! ── Passer en mode privilégié ───────────
router> enable
router#
! ── Entrer en mode de configuration globale ───────────
router# configure terminal
router(config)#
! ── Changer le hostname ───────────
router(config)# hostname R1
! ── Configurer l'interface FastEthernet 0/1 ───────────
R1(config)# interface FastEthernet 0/1
R1(config-if)# ip address 192.168.1.254 255.255.255.0
R1(config-if)# no shutdown
R1(config-if)# exit
! ── Configurer l'interface FastEthernet 0/0 ───────────
R1(config)# interface FastEthernet 0/0
R1(config-if)# ip address 10.1.1.1 255.255.255.252
R1(config-if)# no shutdown
R1(config-if)# exit
Nos interfaces sont maintenant configurées, il nous reste à configurer le routage. On vas utilisé le routage RIP mais vous pouvez faire un routage soit avec OSPF ou un routage statique ces vous choisissez.
! ── Configurer le routage RIP ───────────
R1(config)# router rip
R1(config-router)# version 2
R1(config-router)# no auto-summary
R1(config-router)# network 192.168.1.0
R1(config-router)# network 10.1.1.0
R1(config-router)# exit
La configuration de base du router R1 est terminer.
Configuration des routeurs R2 & R3
Maintenant que le routeur R1 est configuré, nous allons configurer les routeurs R2 et R3 pour permettre la communication entre le PC et le serveur à travers le VPN. Les routeurs R2 et R3 serviront de routeurs intermédiaires pour acheminer le trafic entre les réseaux locaux du PC et du serveur.
On refait la même procédure sur les routeurs R2 & R3 que pour le routeur R1 avec quelques nuance.
Configuration routeur R2
! ── Passer en mode privilégié ───────────
router> enable
router#
! ── Entrer en mode de configuration globale ───────────
router# configure terminal
router(config)#
! ── Changer le hostname ───────────
router(config)# hostname R2
! ── Configurer l'interface FastEthernet 0/1 ───────────
R2(config)# interface FastEthernet 0/1
R2(config-if)# ip address 10.2.2.2 255.255.255.252
R2(config-if)# no shutdown
R2(config-if)# exit
! ── Configurer l'interface FastEthernet 0/0 ───────────
R2(config)# interface FastEthernet 0/0
R2(config-if)# ip address 10.1.1.2 255.255.255.252
R2(config-if)# no shutdown
R2(config-if)# exit
La configuration de base du router R2 est terminée.
! ── Configurer le routage RIP ───────────
R2(config)# router rip
R2(config-router)# version 2
R2(config-router)# no auto-summary
R2(config-router)# network 10.2.2.0
R2(config-router)# network 10.1.1.0
R2(config-router)# exit
La configuration du routage du router R2 est terminée.
Configuration routeur R3
Attaqu'ons la configuration du routeur R3, qui est le routeur d'extrémité du réseau local du serveur. Nous allons lui attribuer les adresses IP sur les interfaces FastEthernet 0/1 et FastEthernet 0/0, puis configurer le routage pour permettre la communication entre les différents réseaux.
! ── Passer en mode privilégié ───────────
router> enable
router#
! ── Entrer en mode de configuration globale ───────────
router# configure terminal
router(config)#
! ── Changer le hostname ───────────
router(config)# hostname R3
! ── Configurer l'interface FastEthernet 0/1 ───────────
R3(config)# interface FastEthernet 0/1
R3(config-if)# ip address 192.168.2.254 255.255.255.0
R3(config-if)# no shutdown
R3(config-if)# exit
! ── Configurer l'interface FastEthernet 0/0 ───────────
R3(config)# interface FastEthernet 0/0
R3(config-if)# ip address 10.2.2.1 255.255.255.252
R3(config-if)# no shutdown
R3(config-if)# exit
La configuration de base du router R3 est terminée.
Configuration du routage du routeur R3
! ── Configurer le routage RIP ───────────
R3(config)# router rip
R3(config-router)# version 2
R3(config-router)# no auto-summary
R3(config-router)# network 10.2.2.0
R3(config-router)# network 192.168.3.0
R3 (config-router)# exit
Configuration du VPN
Maintenant que tous nos routeurs sont configurés, nous allons configurer le VPN pour sécuriser les connexions entre le PC et le serveur. Nous allons utiliser le protocole IPsec pour créer un tunnel sécurisé entre les routeurs R1 et R3, qui sont les routeurs d'extrémité du réseau local du PC et du serveur.
On vas configurer le VPN, mais il faut savoir que le VPN se configure juste sur les routeurs d'extrémités dans notre cas ces les routeurs R1 et R3 et par conséquence il ni auras aucune modification du routeur R2.
Première étape - configuration du routeur R1. Vous devez vérifier que l'IOS de vos routeurs supporte le VPN.
Pour configurer le VPN sur le routeur R1, nous allons utiliser les commandes suivantes :
! ── Passer en mode privilégié ───────────
router> enable
router#
! ── Entrer en mode de configuration globale ───────────
router# configure terminal
router(config)#
! ── Configurer le VPN ───────────
R1(config)# crypto isakmp enable
R1(config)# crypto isakmp policy 10
R1(config-isakmp)# authentication pre-share
R1(config-isakmp)# encryption 3des
R1(config-isakmp)# hash md5
R1(config-isakmp)# group 5
R1(config-isakmp)# lifetime 3600
R1(config-isakmp)# exit
group 5 : Spécifie l'identifiant Diffie-Hellman
lifetime : Spécifie le temps de validité de la connexion avant une nouvelle négociation des clefs.
R1(config)#crypto isakmp key mot_de_passe address 10.2.2.1
Sur certain routeur avec certains IOS la commande ne fonctionne pas car le routeur demande si le mot de passe doit être chiffré ou pas, alors tapez cette commande.
R1(config)#crypto isakmp key 6 mot_de_passe address 10.2.2.1R1(config)#crypto ipsec transform-set 50 esp-3des esp-md5-hmac
esp : signifie Encapsulation Security Protocol
Utiliser les mêmes protocoles d'encryptions et de Hash que vous avez utilisé plus haut.
Dans ce TP :
- Encryption :
3des - hash :
md5
On vas fixer ensuite une valeur de Lifetime :
R1(config)#crypto ipsec security-association lifetime seconds 1800
Création d'une ACL qui va déterminer le trafic autorisé.
R1(config)#access-list 101 permit ip 192.168.1.0.0 0.0.0.255 192.168.3.0 0.0.0.255
Fin de la configuration du routeur R1
Configuration de la crypto map
Nous allons configurer la crypto map qui vas être associé à l'access-list, le trafic et la destination.
Voici la configuration de la crypto map :
! ── Configurer la crypto map ───────────
R1(config)# crypto map nom_de_map 10 ipsec-isakmp
R1(config-crypto-map)# set peer 10.2.2.1
R1(config-crypto-map)# set transform-set 50
R1(config-crypto-map)# set security-association lifetime seconds 900
R1(config-crypto-map)# match address 101
R1(config-crypto-map)# exit
Terminons la configuration sur R1 en appliquant la crypto map sur l'interface de sortie.
! ── Appliquer la crypto map sur l'interface de sortie ───────────
R1(config)# interface FastEthernet 0/0
R1(config-if)# crypto map nom_de_map
*Jan 3 07:16:26.785: %CRYPTO-6-ISAKMP_ON_OFF: ISAKMP is ON
Ce message doit vous indiquez que la crypto map fonctionne.
Configuration du routeur R2
Maintenant que le routeur R1 est configuré, nous allons configurer le routeur R2 pour permettre la communication entre le PC et le serveur à travers le VPN. Le routeur R2 servira de routeur intermédiaire pour acheminer le trafic entre les réseaux locaux du PC et du serveur.
On refait la même configuration que sur le routeur R1
! ── Configurer le VPN ───────────
R1(config)# crypto isakmp enable
R1(config)# crypto isakmp policy 10
R1(config-isakmp)# authentication pre-share
R1(config-isakmp)# encryption 3des
R1(config-isakmp)# hash md5
R1(config-isakmp)# group 5
R1(config-isakmp)# lifetime 3600
R1(config-isakmp)# exit
! ── Configurer la clé pré-partagée ───────────
R2(config)# crypto isakmp key mot_de_passe address 10.2.2.1
! ── ou ───────────
R2(config)# crypto isakmp key 6 mot_de_passe address 10.2.2.1
! ── Configurer les protocoles d'encryption et de hash ───────────
R2(config)# crypto ipsec transform-set 50 esp-3des esp-md5-hmac
! ── Fixer la valeur de Lifetime ───────────
R2(config)# crypto ipsec security-association lifetime seconds 1800
! ── Création d'une ACL qui va déterminer le trafic autorisé ───────────
R2(config)# access-list 101 permit ip 192.168.3.0 0.0.0.255 192.168.1.0 0.0.0.255
Fin de la configuration du routeur R2
Maintenant que la configuration du routeur R2 est terminée, nous allons configurer la crypto map pour permettre la communication entre le PC et le serveur à travers le VPN.
! ── Configurer la crypto map ───────────
R2(config)# crypto map nom_de_map 10 ipsec-isakmp
R2(config-crypto-map)# set peer 10.1.1.1
R2(config-crypto-map)# set transform-set 50
R2(config-crypto-map)# set security-association lifetime seconds 900
R2(config-crypto-map)# match address 101
R2(config-crypto-map)# exit
R2(config)# interface FastEthernet 0/0
R2(config-if)# crypto map nom_de_map
C'est ce message que vous verrez : *Jan 3 07:16:26.785: %CRYPTO-6-ISAKMP_ON_OFF: ISAKMP is ON ou un symilaire.
Pour savoir si tout fonctionne, utiliser à l'invite de commande du Pc vers le Serveur, la commande "ping" suivi de l'adresse IP du serveur.
Conclusion
Vous avez appris à configurer un VPN et à comprendre son fonctionnement à travers une mise en pratique sur Packet Tracer. Grâce à la mise en place du protocole IPsec, vous avez pu sécuriser les communications entre deux réseaux distants en créant un tunnel chiffré entre les routeurs.
Ce type de configuration est essentiel dans le monde professionnel, notamment pour interconnecter des sites distants ou permettre un accès sécurisé aux ressources d’une entreprise. Vous avez également vu l’importance du routage, des ACL et des paramètres de sécurité dans la réussite de cette mise en place.
N’hésitez pas à approfondir en testant d’autres protocoles de routage comme OSPF ou en renforçant la sécurité avec des algorithmes plus récents. La pratique reste la clé pour maîtriser pleinement les VPN et les réseaux.