ESXI & PfSense comme firewall

http://forum.online.net/index.php?/topic/1240-tuto-esxi-pfsense-comme-firewall/

 

Bonjour à tous,

Petit Long tuto fastidieux pour ceux qui souhaiterai comme moi, mettre en place PfSense sur leur serveur dédié Dedibox.
A priori rien de bien compliqué sauf qu'en fait si, d'où ce tuto !

Ce que vous devez avoir avant de commencer :
- Un serveur dédié chez Online.net
- Vous avez acheté une IP supplémentaire via le portail Online.net (IP Failover) et l'avez associée à votre serveur.
- Avoir obtenu une adresse MAC virtuelle pour VMware (toujours via le portail Online.net)
- Vous avez déployé ESXI sur votre serveur (toujours via le portail Online.net)

L'objectif est d'avoir une architecture de la sorte :



INTERNET ------ ESXI ----- PfSense (VM1) -|--- SERVEUR LAN 1 (VM2)
                                          |--- SERVEUR LAN 2 (VMx)

L'IP publique (la 1ère) sert uniquement à administrer l'ESXI.
L'IP publique (failover) sera utilisée pour la patte WAN de votre firewall (PfSense).

Configuration d'ESXI (désolé c'est en FR :/)
Dans "Configuration/Mise en réseau"
Cliquer sur "Ajouter gestion réseau...", sélectionnez "Machine virtuelle" puis "Créer un commutateur virtuel", appelez-le comme vous voulez ("VM Network LAN" dans mon exemple) et surtout, renseignez un VLAN ID autre que 0 (1 par exemple).

Sur ce commutateur virtuel seront reliés tous vos serveurs ainsi que la patte LAN du firewall.

Création des VM
C'est ici que ça se complique, vous le verrez ensuite, PfSense doit donc être installé mais surtout un package doit être rajouté une fois l'installation terminée. Pour obtenir ce package il faut bien évidemment une connexion internet chose qui ne fonctionne pas tant que ce package n'est pas installé (:D).

J'ai procédé de la sorte (un peu bourrin mais ça marche) :
Création d'une VM PfSense (disque en thin provisionning, important pour la suite) sur un autre ESXI (un ESXI sur lequel la passerelle est dans le même subnet que l'ip publique car c'est ça qui nous pose problème chez Online.net)

Je ne vous fait pas le détail de l'installation de PfSense ... pensez juste à mettre 2 cartes réseau (LAN + WAN).
Personnellement j'ai fait ça sur mon poste de travail avec VMware Workstation.
L'installation de PfSense terminée configurer les 2 interfaces LAN et WAN et accéder à l'interface web de configuration.

Sur cette interface allez dans "Système/Packages" et installez le package "Shellcmd".
Une fois installé vous pouvez éteindre votre VM et installer VMware Converter sur votre poste de travail.

Vous avez compris la suite, sauvegarder via VMware converter la VM que vous venez de créer sur VMware Workstation et déplacer là sur l'ESXI de Online.net (d'ou le Thin provisionning, vous avez ~300Mo à envoyer).

Une fois votre VM récupérée de l'autre coté, avant de la démarrer, retournez dans la conf des cartes réseaux de la VM :
Carte 1 : 
Adresse MAC Manuelle : saisissez l'adresse MAC fourni sur le portail Online.net (00:50:56: ...)
Etiquette réseau : "VM Network" (le vSwitch principal, PAS celui que vous avez créé tout à l'heure)

Carte 2 :
Adresse MAC Automatique
Etiquette réseau : "VM Network LAN" (ou autre selon le nom que vous avez donné à votre vSwitch secondaire)

Démarrez votre VM PfSense
Reconfigurer vos interfaces LAN et WAN depuis la ligne de commande via la console ESXI et accéder ensuite à l'interface web de management de PfSense depuis un de vos serveur LAN présent sur l'ESXI (oui je sais c'est un peu contraignant mais de toute façon si vous faite tout ça c'est bien pour mettre d'autres VM derrière non ? :D).

Une fois sur l'interface web de management :
- Vérifiez que le module "Shellcmd" est bien présent (il n'y a pas de raison m'enfin bon ...)
- Aller dans "Interfaces/WAN" et spécifiez votre adresse MAC virtuelle dans le champs "MAC address"
- Le champ IP address doit contenir votre ip publique failover (/32)
- Le champ Gateway est pour l'instant vide.

Deux choses à faire :
- Configurer "Shellcmd"
- Spécifier la gateway

Shellcmd
Aller dans "Services/Shellcmd" et ajoutez les 2 commandes suivantes :
route add -inet 88.190.30.1/32 -link -iface em0 
route add default 88.190.30.1 

"88.190.30.1" doit être remplacé par VOTRE passerelle (à priori votre ip publique principale avec un 1 à la fin)

Gateway
Allez dans "System/routing", dans l'onglet "Gateways", ajoutez votre passerelle. 
Problème ici, PfSense n'accepte pas que l'on renseigne une passerelle qui n'appartient pas au même sous réseau que l'ip publique. Soit, saisissez donc votre IP publique failover ! (ce n'est que temporaire pas de panique).
Cochez bien l'option "Default Gateway" à la création.

Allez dans "Diagnostics/Backup-Restore" et sauvegardez votre configuration. Editez là en remplaçant votre ip failover par votre passerelle (attention l'ip failover apparait 2 fois dans la conf, modifiez au bon endroit).
Sauvegardez votre conf et rechargez là via "Diagnostics/Backup-Restore". Votre firewall redémarre.

Après redémarrage, retournez dans "Interfaces/WAN" et sélectionnez votre passerelle dans la liste, cliquez sur "Save" puis "Apply" en haut de la page. Là PfSense ne répond plus sur l'interface web, aller sur la console ESXI et faite un redémarrage du serveur.

Et voilà (ouf), ça devrait être bon.
(Pensez à renseigner les DNS dans "System/General Setup" !)

Vos VM auront donc une adresse LAN uniquement (attention à bien rattacher la carte réseau de vos serveur sur le vSwitch créé manuellement), la passerelle à renseigner étant l'adresse LAN du serveur PfSense.

J'espère n'avoir rien oublié !

Un grand merci à Scruffy, qui m'a mis sur la bonne voie pour la mise en place de PfSense.

Il y a sûrement des méthodes plus simple, n'hésitez pas à les proposer ! (en tout cas la mienne fonctionne


Warning: count(): Parameter must be an array or an object that implements Countable in /var/www/vhosts/shan.info/httpdocs/templates/gk_publisher/html/com_k2/templates/default/item.php on line 169
  • Published in Pfsense
  • Read 1653 times
More in this category: « PF - pfctl命令备忘

Notice: Only variables should be assigned by reference in /var/www/vhosts/shan.info/httpdocs/templates/gk_publisher/html/com_k2/templates/default/item.php on line 478
back to top