VPN – Client to Site / Site to Site

PROJET VPN site to site et client to site 

Qu’est-ce qu’un VPN ?

– VPN signifie « Virtual Private Network » (réseau privé virtuel en français). C’est une technologie qui permet de créer une connexion sécurisée (Créer un lien virtuel entre deux point) entre un appareil (comme un ordinateur ou un smartphone) et un réseau, généralement Internet.

– Elle permet de chiffrer et isolées les données envoyées et reçues, rendant ainsi la connexion plus sûre, en particulier lorsqu’on utilise des réseaux Wi-Fi publics.

– Un VPN permet aussi de masquer l’adresse IP de l’utilisateur et de contourner des restrictions géographiques, offrant ainsi une plus grande sécurité en ligne.

– Ce lien virtuel est souvent appelé « Un Tunnel VPN »

Les Avantages d’un VPN Client-to-site :

Un VPN Client-to-Site permet une connexion sécurisée entre un utilisateur distant et un réseau privé. Ses avantages principaux incluent :

  • Sécurité renforcée : Cryptage des données pour éviter les attaques.
  • Accès à distance sécurisé : Accès aux ressources internes de l’entreprise de manière protégée.
  • Confidentialité des données : Protection des informations sensibles.
  • Économie de coûts : Utilisation d’Internet plutôt que de lignes dédiées.
  • Simplicité d’utilisation : Facilité de connexion pour l’utilisateur.
  • Gestion centralisée : Contrôle des accès à distance et surveillance par l’administrateur.
  • Protection sur les réseaux publics : Sécurisation des connexions sur des réseaux non sécurisés.

 

Déploiement d’un LAB VPN Site-to-Site

Environnement :

  • 2 Clients Windows 10
  • 2 Pfsense config (défaut)

Architecture du LAB :

image-74 VPN - Client to Site / Site to Site

Mise en place de OpenVPN :

Il existe plusieurs outils et technologies permettant de faire du VPN LAN-to-LAN. On peut par exemple citer OpenVPN,Wireguard,Cisco Meraki,Palo Alto

Voici un petit classement des VPN cités au-dessus au niveau sécurité.

  1. Wireguard
  2. IPsec (avec IKEv2)
  3. OpenVPN
  4. Cisco Meraki
  5. Palo Alto

WireGuard et IPsec/IKEv2 sont les options les plus sécurisées, offrant un excellent compromis entre sécurité et performance. OpenVPN est également très sécurisé mais légèrement plus complexe à configurer. Les solutions d’entreprise comme Cisco Meraki et Palo Alto offrent une sécurité de niveau entreprise, mais elles viennent souvent avec un coût plus élevé et une complexité accrue.

  • Tout d’abord avant de mettre en place notre IPsec, voici notre environnement :

Nous avons deux VM Clients Windows 10 installer avec IP statique et deux VM Pfsense.

Client_1 : 172.16.1.11 /24

Client_2 ; 172.16.2.11 /24

Pfsense_1 : WAN 192.168.12.232 /24 – LAN 172.16.1.254 /24

Pfsense_2 : WAN 192.168.12.233 /24 – LAN 172.16.2.254 /24

Commençons ! je vais mettre en place IPsec sur le Client_1 (172.16.1.11), pour cela je dois me rendre sur l’interface web de mon Pfsense_1

  • J’ouvre une page de navigateur je saisis mon adresse IP //172.16.1.254 dans la barre de recherche
  • Connectez-vous à votre compte, vous voilà sur Dashboard

–       On va se rendre dans VPN puis dans IPsec

image-75 VPN - Client to Site / Site to Site
  • Nous voilà dans la page VPN / IPsec/ Tunnels
  • On va créer un tunnel en cliquant sur le + Add P1
image-76 VPN - Client to Site / Site to Site
  • Il y a plein d’options, mais on va en changer que quelques-unes
  • Description : on va mettre « VPN »
  • Interface : WAN
  • Remote Gateway : l’adresse IP du WAN du pfsense_2 (192.168.12.233)
  • Authentication Method : Mutual PSK
  • Pre-Shared Key : (cliquer pour générer une nouvelle clé Pre-Shared)
  • Encryption Algorithm : AES 256 bits SHA256 DH 14
  • Puis faites SAVE
image-77 VPN - Client to Site / Site to Site
  • Une fois Save, vous verrez votre Tunnel, mais en dessous une bulle bleue cliquer dessus et faites Add P2
image-78 VPN - Client to Site / Site to Site
  • Cette fois on va modifier que :

Local Network : Network (votre réseaux LAN 1 172.16.1.0 /24)

Remote network : Network (Votre réseaux LAN 2 172.16.2.0 /24)

Protocol : ESP

Encryption Algorithm : AES 256

  • Faites Save
  • Ne surtout pas oublier de faire APPLY CHANGES
image-79 VPN - Client to Site / Site to Site
  • Maintenant on se rendre dans l’onglet Status > IPsec
  • Vous allez voir votre Tunnel, il faut l’activer faites « Connect P1 & P2 »
image-80 VPN - Client to Site / Site to Site

Maintenant on passe sur le Client_2

On va se rendre sur l’interface web de mon Pfsense_2

  • J’ouvre une page de navigateur je saisis mon adresse IP //172.16.2.254 dans la barre de recherche
  • Connectez-vous à votre compte, vous voilà sur Dashboard

–       On va se rendre dans VPN puis dans IPsec

image-81 VPN - Client to Site / Site to Site
  • Nous voilà dans la page VPN / IPsec/ Tunnels
  • On va créer un tunnel en cliquant sur le + Add P1
image-82 VPN - Client to Site / Site to Site
  • Comme pour le Client_1 les mêmes options qu’on va modifier.
  • Description : on va mettre « VPN »
  • Interface : WAN
  • Remote Gateway : l’adresse IP du WAN du pfsense_1 (192.168.12.232)
  • Authentication Method : Mutual PSK
  • Encryption Algorithm : AES 256 bits SHA256 DH 14
  • Puis faites SAVE
image-83 VPN - Client to Site / Site to Site
  • Une fois Save, vous verrez votre Tunnel, mais en dessous une bulle bleue cliquer dessus et faites Add P2
image-84 VPN - Client to Site / Site to Site
  • Cette fois on va modifier que :

Local Network : Network (votre réseaux LAN 2 172.16.2.0 /24)

Remote network : Network (Votre réseaux LAN 1 172.16.1.0 /24)

Protocol : ESP

Encryption Algorithm : AES 256

  • Faites Save
image-85 VPN - Client to Site / Site to Site
  • Ne surtout pas oublier de faire APLY CHANGES
image-86 VPN - Client to Site / Site to Site
  • Maintenant on se rendre dans l’onglet Status > IPsec
  • Vous allez voir votre Tunnel, il faut l’activer faites « Connect P1 & P2 »
image-87 VPN - Client to Site / Site to Site

Voila notre Tunnel est prêt.

Tests :

– les clients dans les LAN 1 et 2 doivent pouvoir communiquer entre elles.

  • Ouvrer votre cmd sur vos client 1 et 2
  • Et faites un ping vers le LAN opposer

Exemple :

Client_1 (172.16.1.11) je vais ping le Client_2 (172.16.2.11)

image-88 VPN - Client to Site / Site to Site

Client_2 (172.16.2.11) je vais ping le Client_1 (172.16.1.11)

image-89 VPN - Client to Site / Site to Site

Voila notre VPN Site to Site marche !

Client to SITE avec OpenVPN

  • Pour cette fois on va utiliser OPENVPN

Présentation de l’infrastructure

Avant de commencer, il est important de bien comprendre qu’ici, toute l’infrastructure sera virtuelle. Outre ce petit détail, le fonctionnement restera totalement identique.

Pour ce tuto, j’ai utilisé Hyper-V pour simuler 3 machines que voici :

  • 1 pfsense situé sur internet ET dans le réseau local
  • 1 client (Windows 10) situés sur Interne
  • 1 Serveur (Windows server) situés en DMZ

Comme vous pouvez le voir, on aura donc 3 réseaux différents :

  • Internet (WAN) : 192.168.12.232/24
  • Réseau local (LAN) : 172.16.1.0/24
  • Réseau DMZ(Opt1) : 192.168.100.0/24
  • Tunnel VPN : 192.168.254.0/28
image-90 VPN - Client to Site / Site to Site

Configuration du serveur OpenVPN sur pfSense

  • J’ouvre une page de navigateur je saisis mon adresse IP //172.16.1.254 dans la barre de recherche
  • Connectez-vous à votre compte, vous voilà sur Dashboard

–       On va se rendre dans VPN puis dans OPENVPN

image-91 VPN - Client to Site / Site to Site
  • Nous allons utiliser l’assistant pour configurer OpenVPN car c’est un guide permettant de simplifier la mise en place.
  • Cliquez sur « Wizards ».
  • Type of Server on va sélectionner « Local User Access » puis Next.
image-92 VPN - Client to Site / Site to Site

Il faut commencer par créer une nouvelle autorité de certification (CA). C’est une entité dite de « confiance » chargée d’authentifier les clients tentant d’établir une connexion. Cette entité délivre des certificats permettant de garantir une certaine légitimité (du demandeur et du receveur) afin d’éviter une usurpation ou une altération de la communication.

  • On va modifier
  • Descriptive name : « pfsense_CA »
  • Country Code : FR
  • City : Beynost
  • Organiszation : Online
  •  >> Add new CA
image-93 VPN - Client to Site / Site to Site

Attention, faite juste NEXT

  • Ensuite on aura le même formulaire que celui d’avant, mais ça sera pour une certification SERVEUR
  • On rajoute un nom à notre serveur « VPN_Serv_Cert »
  • DH Parameters Lengh : 4096 Bits
  • Tunnel Network : 192.168.254.0/28 (l’adresse de mon Tunnel)
  • Local Network : 172.16.1.0/24 (Mon adresse IP Local)
image-94 VPN - Client to Site / Site to Site
  • On coche les deux cases, faites Next puis Finish.
image-95 VPN - Client to Site / Site to Site

Voilà notre Serveur OpenVPN est prêt

image-96 VPN - Client to Site / Site to Site

Certificat serveur

  • Sur pfsense aller dans System > Certificates > Onglet Certificat et add
image-97 VPN - Client to Site / Site to Site

 

image-98 VPN - Client to Site / Site to Site

Génération des clients OpenVPN préconfigurés

Lors de la configuration du serveur VPN, nous avons défini la méthode d’authentification via la base d’utilisateurs propre à pfSense. Il faut donc avant de poursuivre créer un utilisateur (autre que l’admin) dans pfSense pour que celui-ci se connecte à distance par la suite.

Pour cela, rendez-vous dans le menu « System », sous-menu « User Manager ».

  • Faites ADD on va créer un utilisateur
image-99 VPN - Client to Site / Site to Site

Username : votre pseudo

Password : votre mot de passe

Full name : Nom Prénom

  • Et bien cocher la case « Certificate »

Descriptive name : votre pseudo_cert (Nico_cert)

image-100 VPN - Client to Site / Site to Site

Le serveur VPN est prêt, l’utilisateur est prêt, il ne nous reste plus qu’à récupérer la configuration pour pouvoir se connecter à distance.

  • Maintenant rendez-vous dans Système>Package Manager> Available Package
  • Et rechercher « openvpn-client-export » et faite « Install », Confirm.
image-101 VPN - Client to Site / Site to Site

Une fois votre Packages installer

image-102 VPN - Client to Site / Site to Site

Retournez dans le menu « VPN », sous-menu « OpenVPN ». Vous verrez une nouvelle catégorie appelée « Client Export ».

Vous pourrez depuis ce point choisir de quelle connexion VPN vous souhaitez récupérer la configuration. Ici nous n’en avons qu’un seul dans « Remote Access Server », ne modifiez rien dans cette partie et descendez jusqu’à « OpenVPN Clients ».

image-103 VPN - Client to Site / Site to Site
  • Vous pouvez scrollez vers le bas, on pourra apercevoir notre client Nico et à droite les Export.
  • On retrouve ici notre utilisateur créé précédemment et bien identifié par un certificat (si cette partie est vide votre côté, c’est que vous avez fait une erreur de configuration, vérifiez l’utilisateur créé précédemment).
image-104 VPN - Client to Site / Site to Site
  • La forme de ces exports va varier en fonction de l’OS client que vous allez utiliser, et ça tombe bien, nous en verrons 3 dans la suite de ce tuto.

Utilisation du client OpenVPN sous Windows 10

Dans la colonne « Export », cliquez sur le bouton « 10/2016/2019 » pour télécharger le client OpenVPN totalement préconfiguré.

image-105 VPN - Client to Site / Site to Site
  • Une fois télécharger, procéder à l’installation
image-106 VPN - Client to Site / Site to Site
  • Le logiciel OpenVPN sera disponible sur le bureau de la machine.
image-107 VPN - Client to Site / Site to Site
  • Faite une Windows + R et exécuter la commande « ncpa.cpl »
image-109 VPN - Client to Site / Site to Site
  • Vous pouvez désormais lancer votre logiciel OpenVPN GUI
image-108 VPN - Client to Site / Site to Site
  • Faites un double-clic sur cet écran cadenassé. La connexion VPN est en train de se mettre en place et les identifiants seront demandés. Lors de la 1ère connexion, Windows vous demandera une exception dans le pare-feu local, cochez les cases et autorisez l’accès.
  • Rentrer votre Identifiant ainsi que votre mot de passe.
image-110 VPN - Client to Site / Site to Site
image-111 VPN - Client to Site / Site to Site
  • Après quelques secondes, un popup vous informera que vous êtes désormais connecté via OpenVPN. Vous pourrez voir qu’une adresse IP vous a été assignée et que celle-ci se trouve bien dans le réseau défini lors de la configuration du serveur VPN.
image-112 VPN - Client to Site / Site to Site
  • Si vous faites une ipconfig, vous verrez bien que votre machine à une adresse sur le réseau Internet ET une adresse sur le réseau VPN.
  • Lançer un ping à destination de l’adresse IP du serveur situé dans le réseau local pour vérifier que le LAN est bien accessible à travers le tunnel VPN
image-113 VPN - Client to Site / Site to Site
  • Le ping abouti, la connexion VPN nomade sur le poste Windows 10 est désormais fonctionnelle !

Pour vous déconnecter, il vous suffit de double-cliquer sur l’icône d’OpenVPN dans la barre des tâches pour ouvrir l’application et cliquez sur Déconnecter, ou effectuer un simple clic droit.

Share this content:

Je m'appelle Nicolas, j’ai 38 ans et je vis dans le département de l’Ain. Actuellement en reconversion professionnelle dans le domaine de l’informatique, je poursuis une formation de Technicien Systèmes et Réseaux (TSSR) afin de transformer ma passion en métier. L'informatique a toujours occupé une place importante dans ma vie, et aujourd'hui je m'investis pleinement pour en faire mon avenir professionnel. Mon objectif : devenir Administrateur Réseau, en obtenant plusieurs certifications reconnues dans le secteur. Ce site présente les projets réalisés dans le cadre de ma formation, et reflète mon engagement et ma progression dans ce domaine passionnant.

Laisser un commentaire