Вы находитесь на странице: 1из 12

Xavier ROQUES http://www.bwaa.

fr

Création d'un réseau virtualisé avec VirtualBox

Sommaire

Introduction
Cahier des charges
Architecture
Logiciels
Installation
Serveur hôte
VirtualBox
Réseau
IPCop
Serveurs
Conclusion

Introduction

Dans le but d'améliorer mon réseau Informatique et aussi d'en apprendre plus sur des
architectures dites « sécurisées », j'ai voulu utiliser le serveur le plus puissant de mon parc comme
serveur hôte et créé un réseau virtualisé. Ainsi, une seule machine suffira au lieu de 3 actuellement.
Pour cela, je vais utiliser VirtualBox OSE qui est la version communautaire du logiciel de
virtualisation de machine (racheté par Sun MicroSystem au début de l'année) VirtualBox. Je
conseille quand même de se familiariser avec le logiciel en installant différents OS dessus avant de
tenter l'aventure dans le réseau virtuel ^^.

Xavier ROQUES pour http://www.bwaa.fr - Document libre de droit – 05/05/2009 1


Cahier des charges

Voici les « demandes » pour ce réseau virtuel. Bien entendu, ces demandes sont de moi pour
moi ^^, mais cela donnera les possibilités du réseau à la fin de cette petite doc.

Donc nous disposons d'une machine ayant les caractéristiques suivantes :


− Processeur : Athlon 64 3000+ 2GHz
− Mémoire : 1 Go DDR 400
− Stockage : Western Digital 400Go SATA
− Réseau : 2 cartes réseau F@st-Ethernet 10/100 – 1 carte réseau Gig@bit Netgear
10/100/1000
− De préférence silencieuse et correctement ventilée.
− OS : Ubuntu 8.04 LTS Desktop

Passons maintenant aux machines virtuelles :


− Vserv1 :
− Réseau : 4 interfaces
− OS : IPCop
− Services : inclus dans IPCop (Firewall / DHCP / Proxy / Détection d'intrusions)

− Vserv2 :
− Réseau : 1 interface
− OS : Ubuntu 8.04 LTS Serveur
− Services : PDC Samba

− Vserv3 :
− Réseau : 1 interface
− OS : Ubuntu 8.04 LTS Serveur
− Services : DNS / Web / CA

Xavier ROQUES pour http://www.bwaa.fr - Document libre de droit – 05/05/2009 2


Architecture

Maintenant que le cahier des charges est établis, voici comment notre réseau sera monté (un
petit dessin, parce que sur Internet les petits dessins sont rares ^^) :

Nous retrouvons bien notre machine hôte hébergeant 3 autres serveurs.

Xavier ROQUES pour http://www.bwaa.fr - Document libre de droit – 05/05/2009 3


Logiciels

Au niveau des logiciels, c'est plutôt simple. Pour Vserv1, la distribution dispose déjà de tous
les services dont nous avons besoin, même plus. En effet, IPCop est une distribution basée sur
Slackware demandant que très peu de ressources. Elle est axée sécurité, c'est à dire qu'elle dispose
d'un Firewall « IPtables », d'un serveur mandataire, d'un système de détection d'intrusion « Snort »,
un serveur SSH pour la prise de main à distance, d'un serveur Web pour héberger le site qui permet
de manager les services de l'OS. Nous pouvons aussi ajouter des addons/plugins qui augmenteront
le potentiel de votre machine de sécurité.

IPCop organise le réseau de la manière suivante :

Le réseau RED (rouge) est la liaison vers Internet. Le réseau ORANGE (orange) est la
DMZ, c'est ici que nous plaçons les serveurs afin de les rendre accessibles depuis le réseau
RED/GREEN/BLUE. Le réseau BLUE (bleu) est un réseau peu fiable, généralement utilisé pour le
Wifi maintenant, et le réseau GREEN (vert) est le réseau sûr, le LAN fiable et protégé. Pour se
procurer la distribution, aller sur ce site : http://www.ipcop.org , téléchargez l'image ISO.

Pour Vserv2, nous utiliserons Ubuntu 8.04 LTS version Serveur qui est une distribution
Ubuntu sans interface graphique, sans outils inutile pour un serveur. A son installation, la
distribution demande les services à installer parmi un petit choix. Pour ce serveur, nous choisirons
uniquement Serveur SSH et Samba File.

Puisque notre cahier des charges définis que cette machine sera un contrôleur de domaine,
nous configurerons Samba comme tel.

Enfin, pour Vserv3, nous utiliserons aussi la version Serveur d'Ubuntu 8.04 LTS, et nous y
installerons les services demandés. Pour le DNS, nous utiliserons Bind9 qui est un serveur DNS
relativement performant et plutôt simple à configurer. Nous installerons Apache2+PHP5 pour le

Xavier ROQUES pour http://www.bwaa.fr - Document libre de droit – 05/05/2009 4


serveur Web et utiliserons OpenSSL pour le CA.

Voici les pages de la documentation française Ubuntu pour les paquets utilisés :
Samba : http://doc.ubuntu-fr.org/samba
Bind9 : http://doc.ubuntu-fr.org/bind9
Web : http://doc.ubuntu-fr.org/lamp
OpenSSH : http://doc.ubuntu-fr.org/ssh

Installation
Serveur hôte

Commençons par installer notre machine hôte. Insérer le CDRom d'Ubuntu 8.04 LTS
Desktop (téléchargez l'image CD ici : http://www.ubuntu.com) et bootez dessus. Faites l'installation
comme d'habitude (Via le liveCD ou directement depuis le script d'installation au boot menu).

Voici la table des partitions que j'ai sur mon serveur :

/dev/sda1 10 Go ext3 Partition machine hôte


/dev/sda2 10 Go ext3 Partition Vserv1
/dev/sda3 10 Go ext3 Partition Vserv2
/dev/sda4 10 Go ext3 Partition Vserv3
/dev/sda5 10 Go ext3
/dev/sda6 340 Go ext3 Partition stockage
swap 2 Go
swap 2 Go
swap 2 Go
swap 2 Go
swap 2 Go

Je pensais pouvoir associer une partition swap réelle à une machine virtuelle, mais pour le
moment je n'ai pas trouvé comment faire avec VirtualBox.

Une fois l'installation terminée, logguez vous sur votre session, et installons les applications
minimales et dont nous avons besoin pour le réseau virtuel (pour passer root, tapez sudo -s ou sudo
passwd et tapez le nouveau password root, puis su) :

# apt-get update
# apt-get install openssh-server fail2ban terminator bridge-utils uml-utilities
# apt-get upgrade
# apt-get dist-upgrade

Xavier ROQUES pour http://www.bwaa.fr - Document libre de droit – 05/05/2009 5


Nous avons maintenant un OS tout neuf, mis à jour. A l'avenir, il faudra s'abstenir de mettre
à jour la distribution à l'aide de dist-upgrade, car nous allons installer un module spécifique au
kernel pour virtualbox.

Nous créons l'architecture pour accueillir les disques virtuels :

# cd /home
# mkdir virtualbox
# cd virtualbox
# mkdir stockage
# mkdir vserv1
# mkdir vserv2
# mkdir vserv3

Nous ajoutons les points de montages dans le fichier /etc/fstab :

/dev/sda2 /home/virtualbox/vserv1 ext3 defaults 1 2


/dev/sda3 /home/virtualbox/vserv2 ext3 defaults 1 2
/dev/sda4 /home/virtualbox/vserv3 ext3 defaults 1 2
/dev/sda6 /home/virtualbox/stockage ext3 defaults 1 2

Notre machine hôte est maintenant prête.

Xavier ROQUES pour http://www.bwaa.fr - Document libre de droit – 05/05/2009 6


Réseau

Nous allons maintenant préparer le réseau, pour cela, il nous suffit juste de modifier le
fichier /etc/network/interfaces pour qu'il soit comme celui-ci (adaptez l'interface eth0 en fonction de
votre réseau à vous!) :

auto lo
iface lo inet loopback

auto tap0
iface tap0 inet manual
up ifconfig $IFACE up
down ifconfig $IFACE down
tunctl_user utilisateur

auto eth0
iface eth0 inet manual

auto br0
iface br0 inet static
bridge_ports eth0 tap0
address 192.168.0.4
netmask 255.255.255.0
gateway 192.168.0.1

auto eth1
iface eth1 inet manual

auto tap1
iface tap1 inet manual
up ifconfig $IFACE up
down ifconfig $IFACE down
tunctl_user utilisateur

auto br1
iface br1 inet static
bridge_ports eth1 tap1
address 192.168.4.253
netmask 255.255.255.0

auto eth2
iface eth2 inet manual

auto tap2
iface tap3 inet manual
up ifconfig $IFACE up
down ifconfig $IFACE down
tunctl_user utilisateur

auto br2
iface br2 inet static
bridge_ports eth2 tap2
address 192.168.3.253
netmask 255.255.255.0

Xavier ROQUES pour http://www.bwaa.fr - Document libre de droit – 05/05/2009 7


VirtualBox

Nous allons maintenant installer VirtualBox et les modules dont il à besoin pour fonctionner
convenablement :

# apt-get install virtualbox-ose


# usermod -aG vboxusers utilisateur
# chown -R utilisateur.vboxusers /home/virtualbox

Les commandes précédentes permettent d'installer virtualbox, d'ajouter l'utilisateur dans le


groupe autorisé à lancer le logiciel et de changer de propriétaire le dossier /home/virtualbox afin
d'en rendre l'administration plus facile.

Il nous faut installer maintenant le module de virtualbox rattaché à notre kernel. « uname -r » nous
permet de connaître la version de notre kernel.

# uname -r
# apt-get install virtualbox-ose-modules-'résultat de la commande uname -r'

Nous pouvons maintenant lancer VirtualBox et créer les machines virtuelles.

Lancement de VirtualBox

# VirtualBox

Ensuite, dans l'interface, nous allons créer les disques virtuels. Pour cela, cliquez sur
Fichier / Gestionnaire de disques virtuels.

Ensuite faites Nouveau

Choisissez « taille fixe »

L'emplacement (Pour nous, se sera /home/virtualbox/vserv1-2-3-stockage) et la taille (pour


les Vservs, mettez 8Go, c'est amplement suffisant!)

Puis faites terminer, et le disque est créé (cela peut mettre du temps en fonction de la taille
de votre disque).

Lorsque tous les disques sont créés, fermez le gestionnaire de disques et cliquez sur
« Nouveau » dans la fenêtre principale et nous allons créer nos machines.

Suivez les instructions.


Lorsque les machines sont créées, voici les préférences de chacune d'elles :

Vserv1 :
− Onglet réseau :
− Adaptateur 1 : Attaché d'hôte / nom de l'interface : tap0
− Adaptateur 2 : Réseau interne / nom du réseau : intnet
− Adaptateur 3 : Attaché d'hôte / nom de l'interface : tap1
− Adaptateur 4 : Attaché d'hôte / nom de l'interface : tap2

Xavier ROQUES pour http://www.bwaa.fr - Document libre de droit – 05/05/2009 8


Vserv2 :
− Onglet réseau :
− Adaptateur 1 : Réseau interne / nom du réseau : intnet
− Onglet Disque Dur :
− Cliquez sur Primaire esclave : Choisissez le disque « Stockage » dans la liste de
choix.

Vserv3
− Onglet réseau
− Adaptateur 1 : Réseau interne / nom du réseau : intnet

Notez les adresses MAC car sous IPCop, c'est se qui nous permettra de différencier les
interfaces réseaux.

IPCop

Passons maintenant à l'installation de la machine Vserv1 : IPCop.

Pour cela, je me suis aidé du newbkit disponible sur le site http://www.ixus.net qui explique
très bien l'installation de l'OS. Je vous invite donc à télécharger ce petit PDF et à le suivre pour
l'installation.

Lors de l'installation, il sera demandé quelles interfaces à installer, choisissez GREEN +


ORANGE + BLUE + RED (la dernière ligne dans les choix).

Puis lorsque vous devrez associer les interfaces de couleur à l'interface réseau, mettez
aléatoirement car nous ne pouvons pas différencier les cartes réseaux virtuelles. Ensuite, pour la
configuration réseau, voici les caractéristiques (cf. Architecture) :

Vserv1 :
− RED : (à modifier selon votre réseau)
− adresse IP : 192.168.0.1
− masque : 255.255.255.0
− passerelle : 192.168.0.254
− DNS : 192.168.0.254
− ORANGE :
− adresse IP : 192.168.1.254
− masque : 255.255.255.0
− BLUE :
− adresse IP : 192.168.2.254
− masque : 255.255.255.0
− GREEN :
− adresse IP : 192.168.3.254
− masque : 255.255.255.0

Xavier ROQUES pour http://www.bwaa.fr - Document libre de droit – 05/05/2009 9


Finissez l'installation tranquillement. Nous pouvons maintenant nous connecter sur la machine
IPCop à l'aide du login « root » et du mot de passe que vous avez défini lors de l'installation. Nous
allons associer les adresses MAC aux interfaces d'IPCop à l'aide de la commande « ifconfig ».
Repérez les adresses MAC que vous avez noté lors de la création des machines et associer comme
tel :

− Adaptateur 1 : RED
− Adaptateur 2 : ORANGE
− Adaptateur 3 : GREEN
− Adaptateur 4 : BLUE

Une fois les associations trouvées, nous pouvons modifier le fichier de configuration du
réseau d'IPCop : /var/ipcop/ethernet/settings

# nano /var/ipcop/ethernet/settings

Modifiez vos interfaces réseaux pour avoir toutes les correspondances.

Ctrl+O pour enregistrer et Ctrl+X pour fermer nano. Redémarrez IPCop :

# reboot

Une fois la machine relancée, nous pouvons brancher une machine sur le réseau vert et
tenter de nous connecter sur l'interface Web d'IPCop à l'adresse suivante :
https://192.168.3.254:445/
Si tout va bien, vous aurez une alerte indiquant un certificat nous valable ou périmé. Ajoutez
l'exception (sous Firefox) et vous aurez accès à votre joli IPCop (Login : admin ; Mot de passe
défini lors de l'installation).

Xavier ROQUES pour http://www.bwaa.fr - Document libre de droit – 05/05/2009 10


Serveurs

Maintenant que notre IPCop fonctionne, nous pouvons passer aux serveurs virtuels Vserv2
et Vserv3. Pour cela, il nous faut l'ISO du CD de la version serveur d'Ubuntu 8.04 LTS. L'image est
disponible sur le FTP de Free à l'adresse suivante :

ftp://ftp.free.fr/mirrors/ftp.ubuntu.com/releases/8.04/

Choisissez bien la version i386 server en *.iso!

Au lancement de la machine, choisissez la langue (comme pour la version Desktop) et


choisissez « Installer Ubuntu Serveur ». Laissez vous guider.

Lors de la configuration des partitions de Vserv2, vous mettrez en partitionnement


automatique pour la partition de 8Go. Pour la partition de stockage, vous mettrez le point de
montage /home en ext3. (Pour Vserv3, idem, sauf qu'il n'y a que la partition de 8Go, donc rien de
particulier pour /home!)

Pour le paramétrage du réseau, mettez une adresse IP différente pour chaque serveur dans le
plan d'adressage du réseau ORANGE (soit 192.168.1.0/24). La passerelle (gateway) est l'adresse IP
de l'IPCop (soit 192.168.1.254) ainsi que pour le DNS (192.168.1.254).

Continuez de suivre les indications. Lors du choix des paquets à installer, choisissez pour
Vserv2 : openssh server et samba ; pour Vserv3 : DNS, LAMP, openssh server.

Lorsque l'installation est terminée, rebootez la machine avec l'ISO d'Ubuntu Server et
choisissez cette fois-ci « Réparer un système endommagé ». En effet, VirtualBox ne peut pas lancer
Ubuntu Server car le kernel n'est pas reconnu. Nous allons donc le remplacer par le kernel generic
présent dans Ubuntu Desktop. Suivez les instructions.

Lors du choix de la partitions principale, choisissez /dev/sda1 (généralement la principale),


et choisissez d'exécuter un shell sur la partition. Lorsque vous aurez la main, tapez les commandes
suivantes :

# apt-get update
# apt-get install linux-image-generic
# apt-get autoremove --purge linux-image-server

Ces commandes permettent respectivement de mettre à jour la listes de paquets à partir des
dépôts, d'installer le nouveau kernel, et de supprimer proprement le kernel server.

Vous pouvez maintenant rebooter votre machine serveur et admirer le lancement.


Si vous obtenez toujours une erreur à propos du kernel, au boot de grub, tapez sur « Echap »
et sélectionnez la ligne correspondant au kernel generic dans la liste de choix. Il vous faudra donc
modifier le fichier /boot/grub/menu.lst pour supprimer les lignes correspondant au kernel server.

Voilà, l'installation des machines est terminée. Vous pouvez logiquement pinguer les
serveurs depuis votre réseau GREEN ^^.

Xavier ROQUES pour http://www.bwaa.fr - Document libre de droit – 05/05/2009 11


Conclusion

J'ai terminé avec cette documentation concernant l'installation du réseau virtuel. J'en ferai
une pour chaque service du réseau. Nous pouvons modifier un petit peu le réseau pour permettre à
un serveur physique de se connecter sur la DMZ aussi, en ajoutant une carte réseau, en utilisant un
br3 tap3 et tap4 dans le fichier interfaces. Tout cela reste un jeu d'enfant maintenant ^^.

Je vous dis @ bientôt sur www.bwaa.fr et amusez vous bien avec votre petit réseau tout beau
tout neuf :P

Xavier ROQUES pour http://www.bwaa.fr - Document libre de droit – 05/05/2009 12

Вам также может понравиться