Firewall dans un environnement virtualisé

Le premier élément de la sécurisation d’un environnement est la présence d’un firewall entre Internet, et votre environnement. Cet élément doit être le seul point d’entrée de votre environnement, protégeant ainsi toutes vos machines d’attaques possibles
Expert technique JEEMis à jour le 3 Déc 2012
Capture1.jpg

Le premier élément de la sécurisation d’un environnement est la présence d’un firewall entre Internet, et votre environnement.

Cet élément doit être le seul point d’entrée de votre environnement, protégeant ainsi toutes vos machines d’attaques possibles venant de l’extérieur.

Prenons le cas d’un environnement classique comprenant un ou plusieurs serveur HTTP Apache, un ou plusieurs clusters de serveurs d’applications, et un SGBD, quelque soit le moteur. 

Capture1.jpg

Il parait évident qu’aucun n’accès direct doit être possible entre Internet et un serveur d’application, ou la base de données. C’est là; que le firewall joue son rôle en filtrant tous les flux. Pour que la mise en place du firewall ne soit pas inutile, il est nécessaire de s’assurer qu’aucune machine autre que le firewall ne peut avoir d’accès direct vers internet.

Sur de nombreux environnements virtualisés notamment, il n’est pas possible de faire appel à un firewall physique, il faudra alors se tourner vers d’autres solutions:

  • Mettre un firewall basique sur chaque machine de type IPTABLES, ce qui peut être efficace mais va mener a de multiples configuration sur chaque machine, et ne permet pas d’isoler les machines d’internet.

  • Mettre un firewall logiciel de type PFSENSE, permettant d’isoler le sous réseau de l’environnement, de mettre en place un VPN pour accéder aux machines à l’intérieur du réseau (c’est souvent utile!). Nous n'aurons alors plus à nous préoccuper des ports ouverts entre chaque machine du sous réseau local. Cela permet également d'éviter de mettre un firewall entre les serveurs d'application et la base de données qui peut être source de problèmes de performances.

Nous allons donc nous pencher sur PFSENSE et sa mise en place dans un environnement virtualisée; de type Private CloudLe Cloud consiste à accéder à des ressources informatiques, à partir d'internet, via un fournisseur. VMWare vSphere.

 

Installation PFSENSE 
logo_pfsense.jpg

L'installation se fait assez simplement, on ne détaillera que les étapes principales.

Nous partons ici avec la release suivante : pfSense-2.0.1-RELEASE-i386.iso.gz

  • Préparer une machine virtuelle dédiée à pfSense sous vSphere: 
    newVm1.jpg

Créer une nouvelle machine virtuelle avec les paramètres suivants:

  • Système d'exploitation FreeBSD (32-bits ou 64bits selon ce que vous souhaitez installer)

  • 512 Mo RAM et 1 CPU suffiront pour l'instant (à dimensionner ensuite selon l'utilisation)

  • Mettre deux cartes réseaux à votre machine virtuelle parait également indispensable pour un firewall ! 

    Capture21.jpg

Il vous suffit ensuite de démarrer votre nouvelle machine virtuelle sur le fichier iso que vous avez téléchargée;.

Suivez les instructions à l'écran:

  • Boot on pfSense

  • Launch the installer

  • Accept these settings

  • Quick/Easy install

  • Continuez à valider les écrans et choisissez Symetric multiprocessing kernel (more than one processor)

pfSense va ensuite vous demander de redémarrer, ce que vous pouvez faire après avoir démonter l'ISO pfSense dans vSphere pour ne pas que la machine redémarre sur l'ISO.

Vous avez à présent installée; votre pfSense et vous retrouvée; devant la console: 

console.jpg

La première chose à faire est de vérifier les informations et les adresses IP que pfSense affiche.

Si elles sont erronées, pas de panique vous pouvez toujours les changer très facilement via le menu 2.

Tout le reste se fait par l'interface d'administration web de pfSense qui est accessible seulement par le réseau local et non par internet.

Deux possibilités:

  • Vous avez monté votre VM en local, et donc aucun problème pour accéder sur une interface ou sur l'autre.

  • Vous avez monté votre VM sur un environnement distant, et ca risque dêtre beaucoup moins facile. La solution la plus simple est de monter une deuxième carte réseau temporairement sur une des machines interne à votre réseau local pour lexposer à Internet. Ceci vous permettra daccéder à linterface web via un tunnel sur la machine locale, le temps de configurer le VPN du firewall et de pouvoir accéder par la suite à votre firewall sans problème.

Il reste plus qu'à configurer les règles de firewall en autorisant le trafic entre WAN et LAN seulement sur le port 80 et 443, et seulement vers les machines frontales.

Les détails de la configuration du VPN et de la configuration du firewall dans de futurs articles!