/ tech

Mise en place OpenVPN Server sous PfSense

J'ai acquis il y a peu un boitier PCEngine APU2 avec Pfsense installé qui permet de faire un Routeur/Firewall performant et pas trop onéreux.

apu2c4

Dans cet article on va mettre en place un serveur Open VPN sur le pfSense.

Prérequis

Je passe la configuration des interfaces qui doit doit etre faite pour vous.

Chez moi j'ai donc 7 interfaces distinctes :

WAN : le reseau freebox, pfsense est derriere ma freebox en mode bridge

LAN : l'interface physique d'admin du pfsense

OPT1 : l'interface qui route tous mes vlans

OPT2 : pour mon VLAN 2 (monté sur OPT1) qui comprend un accès complet au reseau avec mon NAS et mes peripheriques de confiance comme mon pc ou ma shield

OPT3 : pour mon VLAN 3 (monté sur OPT1), avec mes objets domotiques filaire comme le bridge hue et ma domotique composé de VM linux pour Home Asssistant et de container docker

OPT4 : pour le Wifi domotique (Google Home, multiprise Broadlink, Chromecast, Happy Bubbles)

et OPT 5 : qui corrspond au bridge Domotique (aggrégeant OPT3 et OPT4).

A savoir que pour un bridge c'est sur ce dernier que les règles de filtrage se positionnent.

Mise en place d'Open VPN Server

Pour commencer la configuration : VPN > Open VPN

On commence par créer un serveur avec l'assistant qui créera les certificats serveurs et clients.

Une fois créé on doit avoir quelque chose comme cela :

Mode serveur : Accés à distance (SSL/TLS + Authentification utilisateur)

Protocole : TCP IPv4 and IPv6 on all interfaces (multihome)

Mode dispositif : tun - Layer 3 Tunnel Mode

Interface : WAN (c'est de là qu'arrivent les connexions VPN)

Port Local : 1194

Descrition : la description du serveur

Configuration TLS : cocher "utiliser une clé TLS"

Mode d'utilisation de la clé TLS : authentification TLS

Authorité de certification du pair : choisir le serveur VPN

Certificat du serveur : choisir le certificat serveur créé

Longueur du paramètre DH : 2048 bit

Algorithme de chiffrement : AES-256-CBC (256 bit key, 128 bit block)

Activer NCP : cocher

Algorithme de hachage d'authentification : SHA1 (160- bit)

Profondeur du certificat : Un (Client + Serveur)

Réseau Tunnel IPv4 : pour ma part je rejoins le réseau 192.168.30.0/24 qui n'est à attribué à aucune autre interface qu'OpenVPN.

Redirect IPv4 Gateway : Cela permet de sortir toute les connexions via le VPN par exemple sur un test d'ip sur un smartphone on récupére bien l'adresse VPN. donc à cocher.

Activer le Serveur DNS : cocher "Fournisser une liste de serveur DNS pour les clients. Les adresses peuvent être en IPv4 ou IPv6"

et rentrer les serveurs DNS à utiliser

et cocher Forcer une mise à jour du cache DNS

le reste peut rester par défaut.

ne pas oublier de créer un utilisateur :
Systéme > Gestionnaire d'usagers

Une fois cela fait pour faciliter la connexion, on va installer un plugin d'export utilisateur pour ça on va dans Système > Gestionnaire de paquets

On installe le package : openvpn-client-export

Quand c'est installé on retourne dans VPN > OpenVPN

et là on a un onglet Client Export, normallement rien à configurer ici on descend en bas de la page et on peut exporter sa configuration selon nos besoins.

Sous Android la configuration "Inline Configurations" "Android" fonctionne avec OpenVPN client.
Pour MacOS, l'export "Viscosity (Mac OS X and Windows)" "Viscosity Inline Config" fonctionne avec TunnelBlick.

A noter que pour moi l'édition de la configuration est necessaire avant l'import, vu que je suis derrière ma freebox l'adresse serveur n'est donc pas mon ip WAN.

Ne pas oublier de gérer les régles de pare feu pour Open VPN afin de réduire les accès si besoin.

Mise en place OpenVPN Server sous PfSense
Share this