Skip to content

Tutoriel : installation d'une VM pfSense sur Proxmox avec une seule IP publique

Demandez votre démo gratuite de la solution

Installation pfSense sur Proxmox

Vous venez d’acquérir un superbe hyperviseur Proxmox hébergé mais vous ne disposez que d’une seule adresse IP. Comme vous souhaitez héberger plusieurs machines virtuelles, dont certaines exposées sur Internet, le doute s’empare de vous… Pourrez-vous réaliser votre projet ? Ce tutoriel va vous guider dans l’installation pfSense sur Proxmox, même avec une seule IP publique.

La mise a disposition d’une adresse IP unique est de mise chez la majorité des hébergeurs (comme Scaleway par exemple) et même s’il est possible d’acheter des adresses supplémentaires, cela n’est pas forcément nécessaire. Il est tout à fait possible d’installer une machine virtuelle assurant les rôles de routeur, firewall et serveur VPN (comme une Appliance pfSense) afin de router les flux vers les différentes VMs et de ne pas exposer la totalité de cette infrastructure.

Une fois n’est pas coutume, cet article ne parlera donc pas de sauvegarde mais sera un tutoriel d’installation d’une machine virtuelle pfSense dans une infrastructure virtualisée avec Proxmox avec une unique adresse IP.

Architecture cible pour l'installation pfSence

Le contexte est le suivant :

  • Vous disposez d’un serveur Proxmox hébergé avec une seule adresse IP publique
  • Vous souhaitez héberger plusiques VMs sur un réseau privé (LAN)
  • Vous souhaitez router certains flux vers vos VMs et protéger votre infrastructure privée

Dans le présent article, nous allons utiliser une machine virtuelle pfSense et la configuration réseau du serveur Proxmox sera telle qu’on la trouve chez Scaleway par exemple.

L’architecture cible sera donc :

IP Publique <—> LAN intermédiaire <—> pfSense <—> LAN privé

En ajoutant un accès VPN au LAN via pfSense, cela permettra d’accéder aux machines “en direct” sans les exposer publiquement. Cette partie ne sera pas abordée dans le présent article.

Réseau

Contraintes

L’interface de gestion de Proxmox est accessible via le port 8006.

L’adresse IP publique du serveur Proxmox n’est pas associée à un port physique mais au bridge vmbr0.

Il ne faut donc pas router ce port sur la VM pfSense, sous peine de ne pouvoir accéder à l’interface de gestion qu’à travers cette VM fille… Cela pourrait être une mauvaise idée car s’il y le moindre problème avec la VM pfSense, l’accès à l’hyperviseur serait alors impossible 😊

Configuration du serveur Proxmox pour l'installation pfSense

Scaleway fournit une seule adresse IP pour la machine physique. Pour les besoins de l’article, nous utiliserons les informations suivantes :

  • IP : 1.2.3.4/24
  • Passerelle : 1.2.3.254

La configuration réseau par défaut du serveur, stockée dans /etc/network/interfaces est la suivante :

# The loopback network interface
auto lo
iface lo inet loopback
iface eno1 inet manual

auto vmbr0
iface vmbr0 inet static
   address 1.2.3.4
   netmask 255.255.255.0
   hwaddress b0:83:fe:d0:e3:ee
   gateway 1.2.3.254
   bridge_ports eno1
   bridge_stp off
   bridge_fd 0

Réseau intermédiaire

Nous allons utiliser un réseau intermédiaire comme réseau de sortie pour pfSense (WAN, de son point de vue).

Ce réseau va être “branché” sur le bridge vmbr1.

Configuration IP pévue :

  • Réseau : 10.11.12.0/24
  • Passerelle : 10.11.12.254 (adresse du bridge)
  • pfSense : 10.11.12.1

Afin de simplifier l’installation initiale de pfSense, et potentiellement d’autres VMs (😡), nous allons mettre en place un routage sortant pour tous les clients de ce LAN.

Réseau local (LAN)

C’est le réseau qui sera utilisé par les VMs.

Il va être banché sur le bridge vmbr2 et les flux entrants et sortants seront routés par la VM pfSense.

Configuration IP pévue :

  • Réseau : 192.168.1.0/24
  • Passerelle : 192.168.1.254 (pfSense)
  • Bridge : 192.168.1.250
  • Plage DHCP : 192.168.1.200 à 192.168.1.220 (pour les installations et clients VPN)

Procédure pour l'installation pfSense

Maintenant que le contexte est clair, nous pouvons passer à la pratique !

Une fois le serveur Proxmox fraichement installé, se connecter à l’inteface : https://1.2.3.4:8006/

Réseau local (LAN)

Dans le menu de l’interface Proxmox (à gauche), cliquer sur Datacenter, sélectionnez le serveur, puis allez dans System > Network.

Réseau Intermédiaire

Créer un Linux Bridge :

  • Nom : vmbr1
  • IPv4/CIDR : 10.11.12.254/24
  • Commentaire : Intermédiaire

Réseau Local

Créer un Linux Bridge :

  • Nom : vmbr2
  • IPv4/CIDR : 192.168.1.250/24
  • Commentaire : LAN

Réseau wan

Modifier le bridge vmbr0 et ajouter WAN en Commentaire.

Cliquer sur Appliquer la configuration pour prendre en compte l’ensemble des modifications.

Routage pour l'installation pfSense

Nous rentrons à présent dans le coeur de ce tutoriel.

Nos objectifs sont de :

  • Router le traffic sortant depuis le réseau Intermédiaire vers Internet en présentant l’IP publique de l’hyperviseur Proxmox.
  • Router le traffic entrant depuis Internet vers la VM pfSense.
  • Conserver le traffic entrant vers le port 8006 au niveau de l’hyperviseur (pour ne pas perdre le contrôle direct de Proxmox).

Pour cela, nous allons utiliser iptables. Attention, l’ordre des directives est important !

Connectez-vous au Shell du serveur Proxmox et éditer la configuration dans /etc/network/interfaces.

Ajouter les lignes suivantes après la définition de vmbr0 :

pre-up iptables -t nat -A PREROUTING -i vmbr0 -p tcp --dport 8006 -j ACCEPT
pre-up iptables -t nat -A PREROUTING -i vmbr0 -j DNAT --to-destination 10.11.12.1
pre-up iptables -t nat -A POSTROUTING -s 10.11.12.0/24 -o vmbr0 -j MASQUERADE
post-down iptables -t nat -D PREROUTING -i vmbr0 -p tcp --dport 8006 -j ACCEPT
post-down iptables -t nat -D PREROUTING -i vmbr0 -j DNAT --to-destination 10.11.12.1
post-down iptables -t nat -D POSTROUTING -s 10.11.12.0/24 -o vmbr0 -j MASQUERADE

Recharger la configuration réseau et vérifier la prise en compte des règles de NAT :

ifreload -a
iptables -t nat -L

Nous pouvons à présent passer à la mise en place des VMs !

Création des VMs

Pour créer les VMs, il va vous falloir des ISO des systèmes d’exploitation (oui, vous n’y auriez certainement pas pensé si nous ne l’avions pas précisé 😁).

Pour déposer des ISO sur le serveur Proxmox, il faut aller dans le menu <serveur> > local > ISO Images puis cliquer sur Upload.

Dans le cadre de ce tutoriel, nous vous recommandons d’uploader un ISO de pfSense et de Debian.

VM pfSense

Création de la VM

Voici la configuration à utiliser pour créer une VM pfSense utilisant l’UEFI :

  • Options générales :
    • Nom : Médor (vous avez le droit de choisir un autre nom… 😊)
    • Start at boot coché
  • OS :
    • Choisir le fichier ISO de pfSense
    • Type d’OS : Autre
  • Système :
    • Carte graphique : SPICE
    • Machine : q35
    • BIOS : OVMF
    • Stockage : local
  • Disque :
    • Bus : VirtIO Block
    • Taille : 8 Go
  • CPU
    • Sockets : 1
    • Cores : 4
  • Memoire
    • Mettre 4096
  • Réseau :
    • Bridge : vmbr1
    • Modèle : VirtIO

Après création :

  • Ajouter une deuxième carte réseau :
    • Bridge : vmbr2
    • Modèle : VirtIO
  • Et un port série… Très important, sinon ça ne boote pas 🤯

Démarrer la VM et désactiver le Secure Boot

Configuration réseau

Configurer l’interface WAN :

  • IPv4/CIDR : 10.11.12.1/24
  • Gateway : 10.11.12.254
  • Serveur DNS : Utilisez le serveur public de votre choix, ils sont légion…

Configurer l’interface LAN :

  • IPv4/CIDR : 192.168.1.254/24
  • Début DHCP : 192.168.1.200
  • Fin DHCP : 192.168.1.220

Configuration réseau, bis

Maintenant que l’on s’est bien amusé à saisir la configuration réseau au moment de l’installation, il va falloir la refaire une fois le produit installé. Lors d’une installation pfSense sur Proxmox, l’objectif est de permettre le déploiement avec un accès Internet, ce qui ne veut pas dire qu’il s’agira de sa configuration de production… Vous trouvez ça idiot ? Nous aussi ! 😁

Identifiants par défaut

Les identifiants par défaut de votre VM pfSense sont admin / pfsense.

Si vous tentez de vous y connecter depuis l’interface WAN, vous vous rendrez compte que l’accès est bloqué par défaut, pour des raisons évidentes de sécurité…

VM Linux

Pourquoi diable créer une VM Linux tout de suite, me direz vous ?

Parce que comme nous l’écrivions au dessus, la configuration de pfSense par le WAN est désactivée par défaut. Ce serait certainement trop simple autrement 🤬

Il faut :

  • Créer la VM Linux avec une carte réseau connectée au réseau intermédiaire. Cela permettra de l’installer avec un accès Internet disponible.
  • Ajouter une interface graphique et un navigateur (pour la configuration pfSense)
  • A la fin de l’installation du système, ajouter une deuxième carte réseau connectée au LAN.

Avec ça, vous devriez pouvoir réaliser la configuration initiale de votre routeur pfSense. Cette méthode est particulièrement utile dans un contexte d’installation pfSense sur Proxmox sans accès direct via l’interface WAN.

Une fois la configuration réalisée, cette VM pourra rester éteinte sagement.

le mot de la fin

Une fois l’architecture claire, il n’est pas difficile de paramtérer les règles de routage sur le réseau Proxmox.

Le tutoriel va un peu plus loin que ce simple paramétrage afin de vous donner le maximum de clés pour la mise en place de cette infrastructure virtualisée. Grâce à cette méthode d’installation pfSense sur Proxmox, vous pouvez bâtir un environnement sécurisé, flexible et optimisé.

Si vous recherchez une solution pour sauvegarder proprement vos VMs Proxmox, pensez à Arx One Backup ! La solution est souveraine, sécurisée (avec un stockage immuable) et certifiée (ISO 27001 et HDS). Le tout pour un très bon tarif et avec un excellent service 😊.

Données protégées,

Confidentialité respectée

décor burger blanc

Parcourez toutes nos dernières actualités

Pour tout savoir sur nos nouveautés, nos événements et l’actualité backup

Pour partager nos articles sur vos réseaux sociaux