Dans la suite de mon article précédent, nous allons voir comment monter un serveur OpenVPN sur notre routeur pfSense. Pas mal de tutoriels existent déjà, mais avec la nouvelle interface introduite dans la version 2.3, beaucoup de réglages ont bougé.

Configuration OpenVPN Server

pfSense intègre un assistant de configuration du serveur directement dans l’interface d’administration. Nous allons utiliser cet assistant pour commencer.
Pour le démarrer on se rend dans VPN ➜ OpenVPN ➜ Wizards.

Pour chaque étape, on configure comme ceci :
Type of Server : Local User Access

——CA——
Descriptive name : OpenVPN CA
Key Length : 2048 bit
Lifetime : 3650
Pour le Country Code, State, City Organization, Email, on entre les infos correspondants à la région de notre routeur.
wizard_ca
——Certificate——
Descriptive name : OpenVPN

——Server Setup——
Interface : WAN
Protocole : au choix (défaut UDP)
Port : au choix (défaut 1194)
TLS Authentication : coché
Generate TLS Key : coché
DH Parameters Length : 2048 bit
Encryption Algorithm : AES-256-CBC
Auth digest Algorithm : SHA1
Hardware Crypto :
IPv4 Tunnel Network : Un sous réseau non utilisé pour le moment (notation CIDR)
Redirect Gateway : au choix (permet de rediriger tout le traffic du client à travers le tunnel).
IPv4 Local Network : Le sous réseau de notre LAN (derrière le routeur) (notation CIDR)
Concurrent Connections : Le nombre maximum de clients autorisés à se connecter simultanément.
Compression : No Preference
Dynamic IP : coché
Address Pool : coché
Topology : Subnet
DNS Default : votre domaine
DNS Server : vos serveurs DNS
wizard_config

—–Firewall——
Firewall Rule : coché
OpenVPN rule : coché
wizard_firewall
On peut alors sauvegarder.

Dans l’onglet Server, on voit désormais le résultat du wizard. Nous allons l’éditer pour cocher la case Force DNS cache update.
dns_cache
Si vous n’utilisez pas du tout l’IPv6 vous pouvez également cocher la case Disable IPv6.
Pour appliquer des règles de firewall sur l’OpenVPN, il faut les éditer dans Firewall ➜ Rules ➜ OpenVPN

Configuration des utilisateurs

Nous allons désormais voir comment ajouter des utilisateurs autorisés à se connecter au VPN.
Chaque utilisateur possède son propre certificat qui est généré lors de la création de l’utilisateur.
Pour exporter ces certificats, nous allons installer le paquet openvpn-client-export disponible dans System ➜ Package Manager ➜ Available Packages.
package_manager
Ensuite pour créer un utilisateur, on se rend dans System ➜ User Manager ➜ Users.
On y définit le nom d’utilisateur et le mot de passe, puis comme ceci :
Certificate : coché
Descriptive name : OpenVPN Certificate {username}
Certificate authority : OpenVPN CA
Key length : 2048 bits
Lifetime : 3650
Et on sauvegarde.
user_manager
Pour récupérer le fichier de configuration du client, on a plus qu’à se rendre dans VPN ➜ OpenVPN ➜ Client Export et sélectionner le fichier nécessaire en fonction du client que l’on exécute.
user_manager
Nous voilà donc avec un serveur OpenVPN fonctionnel sur notre pfSense, permettant l’accès au LAN.