Page créée avec « <br> = <span style="color:#1b4f72;">Installation et Configuration OpenVPN sur pfSense</span> = {| style="width:100%; background:#d6eaf8; border:1px solid #85c1e9; padding:15px; border-radius:10px; overflow:hidden;" | <span style="font-size:115%; color:#1b4f72;"> Cette section décrit l'installation et la configuration complète d'un serveur VPN avec OpenVPN intégré à pfSense. <br><br> Elle permet de se connecter à distance à son réseau local et d'accéder... »
 
 
Ligne 189 : Ligne 189 :




== <span style="color:#1e8449;">Étape 1 — Sélection de la CA</span> ==
== <span style="color:#1e8449;">Sélection de la CA</span> ==


Choisir l'autorité de certification créée précédemment :
Choisir l'autorité de certification créée précédemment :
Ligne 201 : Ligne 201 :




== <span style="color:#1e8449;">Étape 2 — Sélection du certificat serveur</span> ==
== <span style="color:#1e8449;">Sélection du certificat serveur</span> ==


Choisir le certificat serveur créé précédemment :
Choisir le certificat serveur créé précédemment :
Ligne 213 : Ligne 213 :




== <span style="color:#1e8449;">Étape 3 — Configuration du serveur VPN</span> ==
== <span style="color:#1e8449;">Configuration du serveur VPN</span> ==


Configurer les paramètres généraux du serveur :
Configurer les paramètres généraux du serveur :
Ligne 242 : Ligne 242 :




== <span style="color:#1e8449;">Étape 3 (suite) — Configuration du réseau VPN</span> ==
== <span style="color:#1e8449;">Configuration du réseau VPN</span> ==


Configurer le tunnel réseau et le réseau local à exposer :
Configurer le tunnel réseau et le réseau local à exposer :
Ligne 266 : Ligne 266 :




== <span style="color:#1e8449;">Étape 3 (suite) — Configuration DNS</span> ==
== <span style="color:#1e8449;">Configuration DNS</span> ==


Renseigner l'adresse DNS que les clients VPN utiliseront :
Renseigner l'adresse DNS que les clients VPN utiliseront :
Ligne 283 : Ligne 283 :




== <span style="color:#1e8449;">Étape 3 (suite) — Options avancées</span> ==
== <span style="color:#1e8449;">Options avancées</span> ==


Option importante à activer selon le besoin :
Option importante à activer selon le besoin :

Dernière version du 23 mars 2026 à 23:26


Installation et Configuration OpenVPN sur pfSense

Cette section décrit l'installation et la configuration complète d'un serveur VPN avec OpenVPN intégré à pfSense.

Elle permet de se connecter à distance à son réseau local et d'accéder aux ressources internes (VMs Proxmox, NAS, Active Directory, etc.) de manière sécurisée.

L'architecture repose sur un tunnel chiffré AES-256-GCM avec authentification par certificats et gestion des utilisateurs intégrée à pfSense.


Prérequis

Vérification de l'environnement avant de commencer la configuration

Environnement nécessaire

Avant de commencer la configuration d'OpenVPN, s'assurer que les éléments suivants sont en place :

  • pfSense installé et opérationnel
  • Accès à l'interface web pfSense disponible à l'adresse :
https://IP_PFSENSE
  • Port ouvert sur la box Internet (redirection de port) :
1194 UDP  →  IP_PFSENSE

Schéma de l'architecture VPN :

                        Internet
                           │
              ┌────────────┴────────────┐
              │                         │
    ┌─────────────────┐       ┌─────────────────┐
    │   Client VPN    │       │    pfSense       │
    │  (PC distant)   │ ════► │  OpenVPN Server  │
    │  .ovpn importé  │       │   Port 1194 UDP  │
    └─────────────────┘       └────────┬─────────┘
                                       │
                          ┌────────────┼────────────┐
                          │            │             │
                     ┌────────┐  ┌──────────┐  ┌────────┐
                     │  LAN   │  │ Proxmox  │  │  NAS   │
                     │ .1.x   │  │   VMs    │  │  AD    │
                     └────────┘  └──────────┘  └────────┘




1 — Créer l'Autorité de Certification (CA)

Création d'une CA interne qui signera tous les certificats du VPN

Accès au gestionnaire de certificats

L'Autorité de Certification (CA) est la racine de confiance du VPN. Elle signera le certificat serveur et les certificats utilisateurs.

Naviguer vers :

System → Cert. Manager → CAs

Cliquer sur :

Add


Configuration de la CA

Remplir les champs de la manière suivante :

Champ Valeur
Method Create an internal CA
Descriptive Name VPN-CA
Key length 2048
Digest Algorithm sha256
Lifetime 3650

Remplir les informations d'identité (valeurs libres) :

Country Code  : FR
State         : (votre région)
City          : (votre ville)
Organization  : (votre organisation)

ℹ INFO : La durée de vie de 3650 jours correspond à 10 ans. La CA sera valable pendant toute cette période pour signer les certificats du VPN.

Cliquer sur Save pour enregistrer la CA.




2 — Créer le Certificat Serveur

Génération du certificat d'identité du serveur OpenVPN, signé par la CA

Accès à la section Certificates

Naviguer vers :

System → Cert. Manager → Certificates

Cliquer sur :

Add / Sign


Configuration du certificat serveur

Remplir les champs de la manière suivante :

Champ Valeur
Method Create internal certificate
Descriptive Name OpenVPN-Server
Certificate Authority VPN-CA
Type Server Certificate
Key length 2048
Digest Algorithm sha256

⚠ ATTENTION : Le type doit impérativement être Server Certificate et non User Certificate, sinon OpenVPN refusera de démarrer.

Cliquer sur Save pour enregistrer le certificat serveur.




3 — Lancer l'Assistant OpenVPN

Configuration du serveur VPN via l'assistant intégré de pfSense

Accès à l'assistant

Naviguer vers :

VPN → OpenVPN → Wizards

L'assistant se déroule en plusieurs étapes successives.


Sélection de la CA

Choisir l'autorité de certification créée précédemment :

VPN-CA

Cliquer sur Next.


Sélection du certificat serveur

Choisir le certificat serveur créé précédemment :

OpenVPN-Server

Cliquer sur Next.


Configuration du serveur VPN

Configurer les paramètres généraux du serveur :

Paramètre Valeur
Server Mode Remote Access (SSL/TLS)
Protocol UDP
Interface WAN
Port 1194
TLS Authentication Cocher (activer)
Encryption Algorithm AES-256-GCM
Auth Digest Algorithm SHA256

ℹ INFO : AES-256-GCM est le chiffrement recommandé — il combine chiffrement et authentification du message en un seul algorithme performant.


Configuration du réseau VPN

Configurer le tunnel réseau et le réseau local à exposer :

Paramètre Exemple
Tunnel Network 10.8.0.0/24
Local Network 192.168.1.0/24

⚠ ATTENTION : Le champ Local Network doit contenir l'adresse de TON réseau LAN réel (ex: 192.168.30.0/24 selon ta configuration pfSense).

Explication des paramètres réseau :

  • Tunnel Network : plage d'adresses IP dédiée aux clients VPN (doit être un réseau inutilisé)
  • Local Network : réseau interne que les clients VPN pourront joindre une fois connectés


Configuration DNS

Renseigner l'adresse DNS que les clients VPN utiliseront :

Paramètre Valeur
DNS Server 1 IP de pfSense (ex: 192.168.1.1)

ℹ INFO : Pointer le DNS vers pfSense permet aux clients VPN de résoudre les noms internes (serveurs, AD, NAS) comme s'ils étaient sur le réseau local.


Options avancées

Option importante à activer selon le besoin :

Redirect Gateway
  • Cocher cette option si l'on souhaite que tout le trafic Internet du client passe par le VPN (full tunnel)
  • Laisser décoché si l'on souhaite uniquement accéder au réseau interne sans modifier le trafic Internet du client (split tunnel)

Cliquer sur Finish pour terminer l'assistant.




4 — Créer un Utilisateur VPN

Création d'un compte utilisateur avec son certificat client pour l'authentification VPN

Accès au gestionnaire d'utilisateurs

Naviguer vers :

System → User Manager

Cliquer sur :

Add


Configuration de l'utilisateur

Remplir les informations du compte :

Champ Valeur
Username uservpn
Password (mot de passe sécurisé)

Cocher l'option :

Click to create a user certificate

Dans le menu déroulant qui apparaît, sélectionner :

VPN-CA

ℹ INFO : En cochant cette case, pfSense va automatiquement générer et signer un certificat client pour cet utilisateur. Ce certificat sera embarqué dans le fichier de configuration .ovpn.

Cliquer sur Save pour créer l'utilisateur et son certificat.




5 — Installer le Package d'Export Client

Installation du package pfSense permettant d'exporter les configurations clients OpenVPN

Accès au gestionnaire de paquets

Naviguer vers :

System → Package Manager → Available Packages


Installation du package

Rechercher et installer le package suivant :

openvpn-client-export

Cliquer sur Install puis confirmer.

ℹ INFO : Ce package ajoute une interface dans pfSense permettant de générer automatiquement les fichiers de configuration pour chaque utilisateur VPN, incluant les certificats et clés embarquées.




6 — Exporter la Configuration Client

Génération et téléchargement du fichier de configuration pour le client VPN

Accès à l'export client

Naviguer vers :

VPN → OpenVPN → Client Export

La liste des utilisateurs configurés apparaît.


Téléchargement de la configuration

Choisir le format de configuration adapté au système du client :

Pour Windows :

Windows Installer (.exe)

Pour Linux / macOS / mobile :

.OVPN file

⚠ IMPORTANT : Le fichier .ovpn contient les certificats, clés et paramètres de connexion. Il est confidentiel : ne pas le partager ni le stocker dans un endroit non sécurisé.

Contenu d'un fichier .ovpn type :

client
dev tun
proto udp
remote IP_PUBLIQUE 1194
resolv-retry infinite
nobind
persist-key
persist-tun
remote-cert-tls server
cipher AES-256-GCM
auth SHA256
<ca>
  ... certificat CA ...
</ca>
<cert>
  ... certificat client ...
</cert>
<key>
  ... clé privée client ...
</key>
<tls-auth>
  ... clé TLS ...
</tls-auth>




7 — Ouvrir le Pare-feu

Création des règles de pare-feu pour autoriser les connexions entrantes sur le port VPN

Règle WAN — Autoriser le port 1194

Naviguer vers :

Firewall → Rules → WAN

Vérifier qu'une règle autorisant le trafic UDP sur le port 1194 existe déjà (l'assistant OpenVPN la crée normalement automatiquement).

Si la règle est absente, la créer manuellement :

Action      : Pass
Interface   : WAN
Protocol    : UDP
Source      : any
Destination : WAN address
Port        : 1194
Description : Allow OpenVPN

Cliquer sur Save puis Apply Changes.


Règle OpenVPN — Autoriser l'accès au réseau interne

Une règle est également nécessaire sur l'interface OpenVPN pour autoriser les clients VPN à joindre le réseau interne.

Naviguer vers :

Firewall → Rules → OpenVPN

Créer une règle permissive :

Action      : Pass
Interface   : OpenVPN
Protocol    : any
Source      : any
Destination : any
Description : Allow VPN clients to LAN

⚠ NOTE : Pour un environnement de production, affiner les règles en limitant la destination au réseau LAN uniquement et en précisant les protocoles et ports autorisés.

Schéma du flux réseau VPN :

┌──────────────────────────────────────────────────────────────┐
│                      pfSense Firewall                        │
├──────────────────────────────────────────────────────────────┤
│                                                              │
│  WAN Rules    : ✓ UDP 1194 → OpenVPN Server                 │
│  OpenVPN Rules: ✓ Any → LAN (clients VPN → réseau interne)  │
│  LAN Rules    : ✓ Trafic habituel                           │
│                                                              │
└──────────────────────────────────────────────────────────────┘

Sauvegarder et appliquer les changements.




8 — Tester la Connexion VPN

Vérification du bon fonctionnement de la connexion OpenVPN depuis un client distant

Installation et import sur le client

Sur le PC distant, télécharger et installer le client OpenVPN officiel :

https://openvpn.net/community-downloads/

Une fois installé, importer le fichier de configuration :

  • Clic droit sur l'icône OpenVPN dans la barre des tâches
  • Sélectionner Import file
  • Choisir le fichier .ovpn téléchargé depuis pfSense


Connexion au VPN

  • Clic droit sur l'icône OpenVPN dans la barre des tâches
  • Sélectionner Connect
  • Saisir les identifiants du compte créé :
Username : uservpn
Password : (mot de passe défini dans pfSense)

L'icône doit passer au vert indiquant une connexion établie.


Vérification de la connectivité

Une fois connecté, vérifier l'accès au réseau interne :

  • Ping vers pfSense (passerelle LAN) :
ping 192.168.1.1
  • Ping vers une VM ou un serveur interne :
ping 192.168.1.x
  • Vérification de l'adresse IP VPN attribuée (doit être dans le tunnel 10.8.0.0/24) :
ipconfig

Résultat attendu :

Carte Ethernet OpenVPN :
   Adresse IPv4. . . . . . . : 10.8.0.x
   Masque de sous-réseau . . : 255.255.255.0
   Passerelle par défaut . . : 10.8.0.1


Vérification côté pfSense

Dans l'interface web pfSense, vérifier les connexions actives :

Naviguer vers :

Status → OpenVPN

La liste des clients connectés s'affiche avec leur adresse IP du tunnel :

┌──────────────┬──────────────┬──────────────┬──────────────┐
│     User     │  Real IP     │  VPN IP      │  Connected   │
├──────────────┼──────────────┼──────────────┼──────────────┤
│  uservpn     │ X.X.X.X      │ 10.8.0.2     │  00:05:32    │
└──────────────┴──────────────┴──────────────┴──────────────┘

✓ SUCCÈS : Si le client apparaît dans cette liste avec une adresse 10.8.0.x, le VPN est pleinement fonctionnel. Vous pouvez maintenant accéder à toutes les ressources internes (Proxmox, NAS, AD) comme si vous étiez sur place.