Réaliser un réseau local avec NAT sous pfSense et VMWare

Réaliser un réseau local avec NAT sous pfSense et VMWare

Aujourd’hui et après plusieurs mois sans nouveaux tutoriels, nous allons voir comment créer un réseau virtuel sous VMWare Workstation et y placer un firewall pfSense pour gérer le tout.

Ce tutoriel qui de prime abord pourrait s’avérer complexe l’est en réalité beaucoup moins. Pour vous faciliter l’aperçu, voici un schéma réalisé sous draw.io :

 

 

Comme on peut donc le voir, nous aurons donc:

  • 2 machines clientes sous Linux qui seront en DHCP ;
  • Notre pfSense, avec une adresse IPv4 statique pour l’interface LAN mais aussi la WAN ;
  • Du Network Adress Translation va donc être opéré sur notre interface LAN ;
  • Qui elle-même va les envoyer à la carte réseau physique de notre hyperviseur (WAN), pour qu’il fasse à nouveau du NAT ;
  • Et la BBox-2 va « NATer » elle aussi l’hyperviseur pour enfin accéder au « vrai » WAN, càd Internet.

Bref, sans plus attendre, passons à la pratique !

 

1) Création et configuration des LAN Segments

La première étape consiste donc a créer un réseau virtuel isolé de notre réseau actuel, et pour cela nous allons utiliser les Lan Segments de VMware.
On se rend donc sur n’importe quelle machine virtuelle (par exemple ici ce sera ma machine cliente Fedora) et l’on va dans ses options pour modifier sa carte réseau:

 

Comme vous pouvez le voir, il nous suffit de cliquer sur LAN Segment, puis Add et de renommer si besoin. Ici, j’ai simplement choisi de créer un réseau virtuel isolé du nom de LAN-01.

 

2) Installation de la machine virtuelle pfSense

Les firewall en général ne demandent pas de grosse configuration, surtout ici étant donné que nous aurons moins de 10 clients. 4Go de RAM, disque de 10Go, bref, tout ça est déjà bien supérieur aux recommandations de base.
Avant de finaliser, il vous faudra ajouter une seconde carte réseau virtuelle, qui nous servira pour le LAN, et qui doit donc être dans le Lan Segment créé au début. Pour l’instant nous n’allons rien faire de plus.

 

 

Une fois la VM créée, il ne reste plus qu’à la démarrer !

Ici on retrouve une installation classique: Accept, Choix du clavier, Partitionnement automatique…
Une fois l’installation terminée, il vous sera demandé si vous désirez ouvrir un Shell pour effectuer d’autres réglages (maintenant ou au redémarrage), pour nous, un simple redémarrage classique conviendra.

 

 

Nous voilà donc avec un pfSense fraichement installé !

 

Bien, avant de commencer à nous connecter à l’interface web, il faut autoriser les connexions à destination de notre interface WAN. Pour cela, on ouvre un Shell en sélectionnant l’option numéro 8.

Une fois fait, on passe notre clavier en azerty via la commande suivante:

kbdcontrol -l /usr/share/syscons/keymaps/fr.iso.kbd

Et l’on peut donc désormais autoriser l’accès à l’interface web depuis le WAN via cette commande :

pfSsh.php playback enableallowallwan

 

3) Installation logiciel

Connectons-nous à présent à l’interface web, avec comme credentials par défaut admin et pfsense comme mot de passe. 
Une fois fait, nous devons renseigner toute les valeurs de base pour finir la configuration principale, c’est-à-dire le nom d’hôte, les valeurs DNS, le nouveau mot de passe admin, etc.

 

Pour ce qui est de la configuration de l’interface WAN, nous allons tout laisser par défaut pour l’instant.

 

 

Vient ensuite l’assignation d’adresse IP pour notre interface LAN, ici on va donc choisir 192.168.2.1/24.

 

 

Puis vient donc le fameux changement de mot de passe, le reload de l’interface web et tadaaaa, nous y sommes !

 

 

C’est donc la page d’accueil de notre interface web, ici nous pouvons obtenir toutes les informations concernant notre pfSense: sa consommation, le statut de nos interfaces, la version système installée etc (le tout étant personnalisable).

 

4) Configuration des interfaces et du pare-feu

Bien, c’est dans cette partie que nous allons réellement commencer à mettre en place notre lab. La première étape est donc d’assigner les adresses IP correctes à nos deux interfaces, LAN et WAN (à noter que lors de l’installation nous avions déjà choisi l’adresse IP pour le LAN).

Pour ce faire, il faut se rendre dans l’onglet Interfaces, puis sélectionner celle que l’on désire modifier. Ici nous allons simplement choisir l’interface WAN et lui assigner une adresse IPv4 statique comme décrit sur le schéma en début d’article.

*A noter que lorsque vous allez changer l’adresse IP de l’interface WAN, il faudra forcément vous reconnecter à l’interface web à partir de la nouvelle adresse IP.

 

 

Une fois cela fait, on peut éventuellement rapidement jeter un coup d’oeil à notre serveur DHCP sur l’interface LAN, pour vérifier que sa configuration est correcte (bon range d’adresses IP, bonne gateway distribuée, nom de domaine…) :

 

 

Tout est correct ! Nous pouvons donc continuer avec la mise en place de quelques règles de pare-feu sur nos différentes interfaces.

Pour commencer, nous nous rendons sur Firewall, puis RulesWAN et enfin Add. Ici, c’est simplement pour aider dans un éventuel troubleshooting: nous allons juste autoriser les requêtes PING du LAN vers le WAN:

 

 

On en profite aussi pour supprimer la règle IPv6 concernant le LAN:

 

Nous pouvons aussi commencer à créer de « vraies » règles de sécurité, comme bloquer tel port ou telle range d’adresses, mais étant donné que nous sommes dans un Lab, restons le plus simple possible.

 

5) Vérification du NAT

Et oui ! Les adresses du LAN ne vont pas se translater toutes seules… ou bien peut être que si, car en réalité, dans les options par défaut de pfSense le NAT Outbounding est en automatique, comprenez que le NAT sortant de type LAN to WAN est activé par défaut.

Donc ici, rien de spécial à effectuer !

 

6) Configuration et tests des postes clients

Dans cet article je ne vais pas revenir sur l’installation d’une Fedora car un article lui est déjà consacrée (voir ici) ni sur l’installation d’une OpenSUSE. Penchons-nous directement sur la configuration réseau de ces derniers:

Il nous suffit de dire à VMware Workstation de mettre la carte réseau de la VM dans le bon Lan Segment, en l’occurence LAN-01 et de redémarrer:

 

Bien, désormais la VM va directement trouver votre serveur DHCP sur le port LAN et donc recevoir une adresse IP, une gateway, et autre.

On peut d’ailleurs voir ici que l’adresse IP qui a été attribuée à notre client Fedora est bien la première IP disponible dans le range de notre DHCP configuré en début d’article:

 

 

On peut tester la connectivité au travers d’un ping, ou en allant directement sur internet via un navigateur quelconque:

 

 

Et bien voilà voilà, nous avons réalisé un réseau virtuel isolé dans VMware grâce à un routeur/pare-feu pfSense, le tout étant entièrement fonctionnel !

Bien entendu, ce premier article est une sorte d’avant goût de ce que l’on peut réaliser avec pfSense, je rédigerai d’autres articles expliquant par exemple comment créer une adresse IP virtuelle pour le WAN et l’utiliser pour atteindre un serveur WEB qui se trouverait dans notre réseau local, ou encore comment créer un second réseau virtuel et faire communiquer ces deux-ci via un tunnel VPN…

Bref, en espérant vous avoir éclairé ou fait découvrir ce merveilleux firewall open-source et les nombreuses possibilités de VMware Workstation.

7 comments

comments user
Uzzi SEM

Très bien expliquer. Merci pour ce tutoriel. Bravo à vous!

    comments user
    Mairien Anthony

    Merci à vous pour avoir pris le temps de le lire ! 🙂

comments user
Thierry

Merci beaucoup très bien explique

    comments user
    Mairien Anthony

    Merci à vous Thierry ! 🙂

comments user
Remtech

Bonjour,
Je débat avec mes collègues, sur la possibilité de mettre en NAT/Bridge la machine virtuel hébergeant le pfsense.
Dans ton schémas et texte d’intro tu mentionnes bien NAT mais tu utilise Bridge dans ta procédure.
Pourrais tu élaborer.
Merci

    comments user
    Mairien Anthony

    Hello Rem,

    En réalité quand je parle de NAT, je parle du NAT que le pfSense va exécuter ; depuis son LAN Segment vers mon LAN réel. Il s’agit bien de NAT.

    Après, pour la machine virtuelle elle-même, son interface « WAN » qui correspond donc à mon LAN physique, est en bridge, de sorte à avoir une IP bien à elle. En mettant l’interface « WAN » du pfSense en mode NAT ça aurait fonctionné de la même manière, mais faire du double NAT, bof bof…

    En général, on utilise toujours ou presque le mode Bridge de VMware pour s’éviter des problèmes inutiles. Mais les deux fonctionnent.

    J’espère avoir pu répondre à ta question 🙂

      comments user
      Remtech

      Merci pour ta réponse

Laisser un commentaire