Comment installer pfSense sur un serveur ESXi ?

Mise en place d’un routeur pfSense en frontal sur un dédié avec ESXi

Mettre un pfSense en dit « en frontal » sur un serveur dédié vous assure d’avoir une sécurité en plus pour protéger vos VM et naturellement votre serveur.

Il est très fortement recommandé d’effectuer ce genre de pratique pour s’assurer d’avoir un serveur fiable et robuste contre la majorité des attaques. Attention, ce n’est pas parce que vous mettez en place ce genre de  système que votre serveur est implacable ! Veillez toujours à regarder vos fichiers de logs de temps à autre pour être sûr du bon fonctionnement de vos machines.


I. Pré-requis

  • Un serveur dédié actif (*) ;
  • VMware ESXi 6.5 installé et prêt à l’emploi ;
  • 1 x IP FailOver + son adresse MAC virtuelle « VMware » (**) ; ;
  • De la patience et de l’envie.
 * = La procédure suivante est saisie pour un serveur dédié chez OVH, mais vous pouvez utiliser cette même procédure pour mettre en place l’architecture dans votre serveur chez Online.net ou autre – quelques modifications peuvent être à prévoir en fonction des hébergeurs.
** = L’adresse IP FailOver est INDISPENSABLE. Sans elle, vous ne pourrez pas avoir internet dans votre réseau privé. Assurez-vous d’avoir votre IP FailOver active, disposant d’une adresse MAC virtuelle pécifique pour VMware ESXi et attribuée dans votre serveur dédié.

Une fois ces pré-requis remplis, vous pouvez donc étudier l’architecture à mettre en place !

NB : Pour l’exemple, les IP ci-dessous sont fictives. Vous devez les remplacer par vos IP.

  • IP Serveur ESXi = 62.62.62.62
  • IP Passerelle ESXi = 62.62.62.254
  • IP FailOver = 212.212.212.212
  • Adresse MAC (virtuelle) de l’IP FailOver = 00:50:56:11:11:11

II. Récapitulatif de l’architecture à mettre en place

Ce que nous souhaitons mettre en place, c’est un serveur ayant un réseau privé (qui deviendra votre réseau LAN privé pour toutes vos VM) disposant d’internet par le biais d’un routeur (pfSense dans notre exemple/procédure) sur une seule et même adresse IP FailOver.

Avantages :

  • Vous n’avez qu’une seule IP FailOver à louer ;
  • Votre réseau privé « LAN » sera invisible pour quiconque sur le net puisqu’il est « natté » ;
  • Tous les PC dans le réseau privé « LAN » disposerontd’internet par le biais de votre routeur pfSense.

Inconvénients :

  • Pas de redondance IP possible (puisqu’un seul achat a été effectué dans cette procédure)
  • La connexion internet est mutualisée pour l’ensemble des VM -> la connexion internet de toutes les VM passent par un seul goulot : pfSense.

Connectez-vous (de préférence en root) à votre ESXi sur le WebPanel, et entrez directement dans la configuration réseau de ce dernier :

  • Cliquer sur « Mise en réseau » dans la panneau Navigateur;
  • Puis rendez vous dans le second onglet « Commutateurs virtuels ».

Vous avez par défaut un premier « vSwitch0 » (un vSwitch). Ce premier vSwitch est connecté à votre interface réseau physique de votre serveur ESXi. C’est par cette carte réseau que vous allez accéder à l’internet. Notre routeur pfSense prochainement créé devra donc avoir une « patte » sur ce vSwitch, mais aussi sur un autre vSwitch que vous allez créer maintenant.

Pourquoi faut-il créer ce nouveau vSwitch ?

Cette création est nécessaire pour bien cloisonner vos réseaux d’une part, mais aussi pour permettre d’avoir un réseau privé (donc pour toutes vos VM). Vous pourrez gérer tout ce qui se passe sans aucune bride quelconque.

Création des groupes de ports

Une fois les vSwitchs créés, il faut leur attribuer un groupe de ports afin d’y connecter les VMs :

  • Rendez vous dans le premier onglet « Groupes de ports ».

Ici vous retrouverez le groupe de port VM Network relié au vSwitch0, il va falloir créer un groupe de ports pour notre nouveau vSwitch.

Une fois la création terminée, vous pouvez passer à la création de la VM pfSense.

Création de la VM pfSense :

Lors de la création de la VM, vous devez personnaliser les paramètres de la façon suivante :

En rouge : votre adaptateur réseau 1 connecté au vSwitch0 et donc au groupe de ports VM Network. ATTENTION : mettre l’adresse mac de l’ip FailOver !

En vert : votre adaptateur réseau 2  connecté au vSwitch précédemment créé.

En bleu : l’ISO de pfSense pour l’installation.


III. Configuration post-installation de pfSense

Je passe volontairement l’installation de pfSense – Je considère que vous avez déjà préparé vos VM de tests (pfSense comme routeur, et un Windows ou GNU/Linux pour avoir un client de test de connexion internet).

1°) Configuration de l’interface « WAN »

Une fois votre pfSense installé, vous pouvez dès à présent configurer le routage « préliminaire » au bon fonctionnement du réseau.

Rappel :

  • IP Serveur ESXi = 62.62.62.62
  • IP Passerelle ESXi = 62.62.62.254
  • IP FailOver = 212.212.212.212
  • Adresse MAC (virtuelle) de l’IP FailOver = 00:50:56:11:11:11

Lorsque pfSense est installé, l’interface « WAN » (« em0« ) n’a pas d’adresse IP: logique puisque votre hébergeur n’a pas de DHCP dans le réseau vous permettant d’accéder à Internet. Nous allons donc lui (interface « em0 ») attribuer une adresse IP, mais pas n’importe laquelle. Dans la console de pfSense, entrez le chiffre « 2 » pour attribuer une adresse IP à une interface donnée – Vous aurez la liste des interfaces disponibles.

Il faut configurer l’adresse IP de l’interface WAN de votre pfSense. Saisissez donc le chiffre « 1 » (ou tout autre chiffre correspondant à votre interface WAN) pour pouvoir mettre un adressage IP fixe. L’assistant de configuration est très simple d’utilisation : Vous devez entrer l’adresse IP, le nombre de bits concernant le masque… STOP.

Dans un premier temps, une première question vous est posée pour savoir si il faut configurer cette interface en DHCP – Il faut y répondre non, en saisissant « n ».

Une configuration spécifique est nécessaire pour cette interface :

  • L’adresse IP à saisir pour cette interface virtuelle est votre adresse IP FailOver (Dans notre exemple, il s’agit donc de 212.212.212.212) ;
  • Le masque à mettre pour cette adresse IP est « /24 » (Saisissez seulement « 24 »).

Vous ne devez pas entrer d’adresse de passerelle / routeur ; Continuez l’assistant en cliquant sur la touche « Entrée ». Une fois l’interface WAN configurée, nous pouvons maintenant passer au routage.

2°) Configuration du routage « préliminaire »

Il faut passer une nouvelle fois par le shell de pfSense pour pouvoir y passer les commandes nécessaires au routage statique. Si une des manipulations ci-dessous ne sont pas bonnes, vous ne pourrez pas avoir internet dans votre LAN !

/!\ ÉTAPE CRUCIALE /!\

Appuyez sur la touche « 8 » pour entrer dans le shell.

Il y a maintenant deux commandes à passer :

route add -net ip_server_public.254/32 -link -iface em0

route del default

route add default ip_server_public.254

Quelques explications :

– La première commande permet d’ajouter la route à utiliser sur l’interface « EM0 », c’est-à-dire l’interface connectée à l’Internet (et donc l’interface qui a votre IP FailOver, ainsi que la Mac Virtuelle). Il faut y saisir l’adresse IP Passerelle de votre ESXi, soit 62.62.62.254 dans notre exemple (A remplacer naturellement par votre « IP ESXi et terminer par .1 ») ;

– La seconde commande impose la route à utiliser par défaut par pfSense – Soit l’adresse IP passerelle de votre ESXi (62.62.62.254 pour notre cas / exemple).

Lorsque les commandes sont effectuées, nous avons accompli une bonne part du travail ! Le routage est effectif, il ne reste plus qu’à terminer la configuration de nos interfaces réseaux et mettre en place le NAT par le biais de l’interface web !

3°) Terminer l’installation de pfSense

Par défaut, lorsque pfSense est installé sur votre machine, vous devez terminer l’installation par le biais de son interface web pour accéder pleinement à toutes les fonctionnalités proposées par pfSense.

La seconde interface réseau de pfSense est (en principe) dans votre réseau « LAN » – Vous devez donc accéder à l’interface web de pfSense en utilisant votre machine client, et en vous connectant sur l’adresse IP donnée (dans la majorité des cas, il s’agit de « 192.168.1.1 » si vous n’avez pas encore changé cette adresse). Vous n’êtes pas obligé de mettre le préfixe « https:// » devant l’adresse IP – l’interface sera découverte automatiquement par votre navigateur.

Lorsque vous arrivez sur l’interface web pour la première fois, une erreur SSL apparaît – Poursuivez sur le site en vous connectant (login = « admin » | mot de passe = « pfsense« ). Vous allez être obligés de continuer par l’installation « Wizard »…

4°) Configuration du NAT dans pfSense

Dans l’interface web de pfSense, dirigez-vous dans le menu « Firewall /Pare Feu» (tout en haut), puis sur la rubrique « NAT » :Dans la fenêtre qui s’est ouverte, il faut se diriger sur l’onglet gris « Outbound / Sortant » – C’est dans cette partie que nous allons créer la règle NAT nous permettant d’avoir un accès internet dans notre réseau LAN.

 

Avant d’ajouter notre règle, il y a une option primordiale à activer –> Le mode MANUAL. Ce mode vous permet d’utiliser vos propres règles en lieu et place de celles de pfSense par défaut. Vous prenez ainsi le contrôle (quasi) total de votre pare-feu concernant ces règles.

Cochez donc la case « Manual Outbound NAT rue generation », et cliquez sur le bouton « Save » pour recharger la configuration ; Une fois la tâche effectuée, nous pouvons créer notre règle NAT.

Pour ajouter une nouvelle règle, vous devez cliquer sur le bouton vert “ajouter” sur la droite. Un assistant va s’ouvrir pour que vous puissiez créer cette règle — Vous devez avoir la même configuration que l’image ci-dessous :

Quelques explications sont nécessaires pour comprendre cette configuration / création de règle :

  • L’interface sur laquelle la règle NAT va être effectuée est l’interface WAN ;
  • Nous souhaitons faire passer tous les protocoles ; « any » dans « Protocol » est donc de mise ;
  • La source est aussi de type « any » –> Tout ce qui vient d’Internet est accepté (logique, c’est ce que nous souhaitons : avoir internet sans aucune bride) ; Il n’y a pas non plus de port source de spécifié, pour la même raison que celle évoquée juste au dessus.
  • La destination est de type « any » –> Par défaut, tout ce qui entre par le WAN sera redistribué sur toutes les autres interfaces réseaux et réseaux de pfSense. C’est utile de laisser cette option telle quelle pour bénéficier de l’Internet partout dans vos différents réseaux privés LAN.
  • Il n’y a pas de « Destination port », pour ne pas avoir de brides.
  • « Translation = interface address » signifie que les paquets vont être « masqués » / « mappés » dans l’adresse IP WAN, c’est-à-dire votre IP FailOver. Il faut donc laisser cette option sur « Interface Address ».

Lorsque la règle est prête à être enregistrée, vous devez cliquer sur le bouton « save » tout en bas. Pourtant, le NAT ne sera toujours pas effectif à ce moment… Un message d’avertissement sera alors affiché :

 

Message assez explicite : « La configuration NAT a été changée – Vous devez appliquer les modifications pour qu’elles puissent prendre effet » — Pour se faire, cliquez sur le bouton « Apply changes« . La page va alors se recharger automatiquement et très rapidement.

Vous devez donc avoir un récapitulatif similaire à celui-ci :

Le tableau récapitulatif vous permet de bien visualiser ce qu’il se passe grâce au NAT : Tout (qu’importe l’IP et le protocole) ce qui vient de l’interface WAN auront comme destination « Tout », sur tous les protocoles sur lesquels ils sont envoyés. L’adresse « NAT » correspond à votre adresse IP du WAN, c’est-à-dire que l’IP visible sur l’Internet sera donc votre IP FailOver…

Si tout s’est bien passé, vous devriez donc avoir Internet sur votre machine cliente !

5°) Dernière étape !

A chaque redémarrage, la route est réinitialisée. Pour éviter de devoir reconfigurer la route à chaque fois, un paquet existe pour automatiser la tâche : Shellcmd.

Pour l’installer, rendez vous dans : “Système / Gestionnaire de Paquets

Dans le second onglet “Paquets disponibles“, descendez jusqu’à trouver le paquet Shellcmd et installez le.

Une fois installé, Shellcmd sera accessible dans le menu “Services / Shellcmd“.

Il ne reste plus qu’à ajouter les deux commande de route précédemment utilisées : Et voilà, votre routeur est fonctionnel ! Les routeurs pfSense sont très puissant, il reste plein de chose à voir sur ce sujet.

Was this article helpful?

Articles en relations

Leave A Comment?

You must be logged in to post a comment.