Installation pfSense+OpenVPN sur Hyper-V
Installation d’un pfSense pour en tant que routeur, ainsi qu’un OPENVPN Serveur pour connexion VPN client. L’installation se fait ici sur un serveur Hyper-V.
Configuration de la machine virtuelle :
- Processeur : 2 cœurs
- Mémoire RAM : 2 GO
- Espace disque : 50 Go
- Carte réseau : 1 sur WAN et 1 sur LAN
Installation ISO pfSense :
Booter sur l’iso PFSENSE
Accepter les conditions
Appuyer sur « I » pour sélectionner « Install pffSense
Sélectionner la langue du clavier : Attention clavier QWERTY par défault
Sélectionner « AUTO (UFS) »
Patienter pendant l’installation
Cliquer sur « NO » et « Reboot »
Démonter l’ISO de PFsense
Premier démarrage de pfSense
Au redémarrage de la machine virtuelle, vous arrivez sur la première configuration
A la demande de Vlan répondez Non sauf si vous avez des Vlan défini sur votre réseau
Configurer les interfaces WAN sur hn0 et LAN sur hn1, puis valider le process pour lancer la configuration
LAN aura pour config IP soit celle d’un réseau déjà existant ou de votre réseau interne ou voir aucune
Entrer dans l’option (2) afin de définir l’adresse IP de votre réseau local en indiquant le masque de sous réseau et si vous utiliser le pfSense en tant que serveur DHCPla plage de votre .
Pour cela je défini mon adresse IP coté LAN de mon PFSENSE (ici sur sur 10.0.2.1, mon AD -et DNS- est accessible sur 10.0.2.2). Le masque sera de /24 (255.255.255.0)
Lors de la configuration valider « Yes » sur le webconfigurator afin qu’il génère l’accès en mode Web.
Vous pouvez dès à présent vous connecter sur la page web de pfsense via l’adresse LAN.
Configuration via le portail WEB
Se connecter au portail web \\MON_IP_LAN_PFSENSE dans mon exemple \\10.0.2.1
Se connecter avec les identifiants par défaut :
- Login : admin
- Mot de passe : pfsense
Finir la page de configuration et sauvegarder.
Dans un premier temps il faut changer le mot de passe admin. Pour cela, aller dans System/User Manager/user et cliquer sur le crayon pour définir le nouveau mot de passe.
Ensuite aller dans l’onglet « Authentification Servers » pour ajouter votre serveur AD/DNS
Cliquer sur le bouton +ADD
Renseignez les informations concernant votre serveur dans l’exemple mon AD est 10.0.2.2 et pour nom de machine SRVAD
Dans description renseigné le nom netbios de votre serveur ou le serveur correspondant, je choisi de mettre le nom de mon AD « SRVAD »
Définissez la ligne type sur « LDAP » et renseignez l’IP du serveur « 10.0.2.2 » (l’adresse de votre Active Directory)
Ajouter les informations du domaine :
- Base DN : DC= »mon_domaine »,DC=local
- Authentification containers : OU= »dossier_users »,DC= »mon_domaine »,DC=local
- Extended query : cocher la case
- Query : memberOf=CN=GRP_VPN,OU= »dossiers_users »,DC= »domaine »,DC=local
- Bind anonymous : décocher la case « use anonymous binds to resolve distinguished names »
- Bind credentials : Domaine\administrateur + Mot de passe du compte administrateur
- Initial Template : OpenLDAP
- User naming attribute : samAccountname (si vous mettez « cn » ici, le login correspondra au nom complet de l’utilisateur, ex : Antoine Durand)
- Group naming attribute : cn
- Group member attribute : memberOf
Cliquer sur SAVE pour enregistrer les données.
Note : si l’adresse WAN est une adresse publique, ce qui suit n’est pas nécessaire. Mais si votre VPN est un bypass LAN/LAN, il est nécessaire de réaliser le point suivant : Aller dans interfaces, et sur chaque interface WAN et LAN, décocher les cases dans le paragraphe » Reserved Networks »
Paramétrage du serveur OpenVPN
Allez dans le menu System/Package Manager/ Available Packages et rechercher le package nommé : « openvpn-client-export » et installer le.
Puis dans le menu VPN /OpenVPN lancer le « Wizard«
Sélectionner le Type Of Server : LDAP
Sélectionner le votre serveur AD que vous avez précédemment enregistré.
Créer le certificat Authority en cliquant sur ADD new CA
Renseigner les informations :
- Description name : au choix soit renseigné l’adresse Ip publique ou nommé le SERVEUR
- Ley lengh : 2048
- Lifetime : 3650 ou laissez blanc par défaut
- Country Code : FR
- State or Province : FR
- City : FR
- Organization : Domaine ou Nom de la société
Sélectionner à la page suivante le certificat précédemment créer.
Arriver sur étape 9/11 il faut renseigner les informations ci-dessous :
- Interface : WAN
- Protocol : UDP on IPV4 only
- Local Port : 1194 , vous pouvez choisir un autre port mais pensez a faire les ouvertures sur votre box
Laisser les cases cochées et modifier DH Parameters Length sur 2048 bit et Encryption Algorithm : AES-256-GCM , ainsi que Auth Digest Algorithm sur SHA1
Paramétrage du tunnel VPN
Tunnel Network : définissez l’adresse de réseau que les client en VPN auront sur leur poste, exemple ici : les clients auront pour adresse IP 10.0.10.x/24
Local Network : renseigner l’adresse IP du réseau coté LAN dans mon exemple: je reprend mon adresse 10.0.2.0/24 => Cela permet à nos client VPN de communiquer avec ce réseau ! Ajoutez-en plusieurs si nécéssaire.
Dernier paragraphe, j’ajoute les informations pour les client:
- Dynamic IP : case cochée
- DNS Default Domain : zone DNS de mon réseau (domaine.local)
- DNS Server 1 : 10.0.2.2 ici dans mon exemple mon DNS est géré par mon AD
Cocher les options d’ajout des « Firewall Rule » ainsi que les « OpenVPN rule«
Retourner dans le serveur précédemment créer et éditer les paramètres.
Changer le Server mode en « Remote Access (SSL/TLS + User Auth)
Section « Advance client Setting » : cocher les cases « DNS Default Domain » et DNS Serveur enable » et renseignez les valeurs correspondantes.
Sauvegarder les modifications.
Création du certificat utilisateur
Aller dans System > Certificate Manager puis dans l’onglet Certificates.
Créer un nouveau certificat avec les paramètres suivants :
- Descriptive Name : USER
- Certificate Autorithy : votre certificat serveur (crée précédemment)
- Key type : RSA / 2048
- Digest Algorithm : sha256
- Lifetime : 3650 (10 ans)
- Common name : USER
Note : Si vous ne créez pas de certificate user, vous ne pourrez pas exporter la configuration comme indiquée dans la section suivante !
Vous devriez voir cela :
- un certificat pour le webConfigurator
- un certificat « Server Certificate »
- un certificat « User Certificate »
Paramétrage du client VPN
Aller dans le menu Client Export
Modifier les options suivantes :
- Remote Access Server : Serveur UDP4:1194 ou en fonction du port choisis
- Host Name Resolution : Other
- Host Name : indiquer votre adresse publique
- Verify Server CN : Do not verify the server CN
IMPORTANT : dans Host Name, indiquer explicitement votre IP PUBLIQUE sinon la configuration VPN pointera vers l’adresse IP WAN, ce qui fonctionnera si votre adresse IP est publique mais ne fonctionnera pas si cette dernière est derrière un routeur de tête.
Cliquer sur « Save as default » pour enregistrer les modifications
Puis générer votre fichier configuration. Attention, vérifier que vous avez bien votre certificat utilisateur (user certificate) pour générer le fichier.
Installer le dernier client OpenVPN disponible sur le site, importer votre fichier configuration et tester votre connexion.