Home (autres pages) Léa Linux TrustOn Me OpenVPN French Linux Doc Project

Création de la première machine virtuelle

Architecture

Je propose de mettre en oeuvre l'architecture suivante :

On retrouve ce que j'ai cité précédemment. J'ai donc plusieurs sous-réseaux définis et j'ai une passerelle par DMZ. Ma machine physique ne possèdera pas d'adresse IP du côté Internet.


Étapes de création de la machine virtuelle

Les principales étapes sont les suivantes :

  • création d'un volume logique
  • création du système de fichiers
  • copie de l'arborescence système vers le nouveau système de fichiers
  • paramétrage des fichiers de configuration propre à la machine virtuelle
  • configuration du fichier de la machine virtuelle
  • démarrage de la machine virtuelle
  • connexion au domaine pour finalisation du paramétrage
  • Création du système de fichiers de la machine virtuelle

Nous allons créer la machine virtuelle «pare-feu» pour commencer. C'est la plus complexe car elle possède pas mal d'interfaces.

# lvcreate -L 500M -n vmdiskfw vg
# mkfs -t ext3 /dev/vg/vmdiskfw
# mount /dev/vg/vmdiskfw /mnt
# mount -o loop /iso/replicable.iso /media/iso
# cp -ax /media/iso/* /mnt
# sync
# cd /mnt/etc
# echo "domfw" > hostname

Ensuite, on édite le fichier "hosts" pour assigner le nom "domfw" à l'adresse 127.0.0.1.

Puis on édite le fichier "/etc/network/interfaces" pour y mettre les informations suivantes :

InterfaceAdresse ipMasque réseau
br_outsideeth0DHCP
br_insideeth1Static 192.168.100.254255.255.255.0
br_pubeth2Static 172.16.50.254255.255.255.0
br_priveth3Static 172.16.100.254255.255.255.0
br_exploiteth4Static 172.16.150.254255.255.255.0

La route par défaut est donnée lors de l'attribution DHCP.

Dans le fichier interfaces, on doit ajouter le paramétrage pour l'ensemble des interfaces :

auto eth0
iface eth0 inet dhcp


auto eth1
iface eth1 inet static
             address 192.168.100.254
             netmask 255.255.255.0


auto eth2
iface eth2 inet static
             address 172.16.50.254


auto eth3
iface eth3 inet static
             address 172.16.100.254
             netmask 255.255.255.0


auto eth4
iface eth4 inet static
             address 172.16.150.254
             netmask 255.255.255.0

A noter que pour être sûr que les interfaces sont bien connectées sur les bons ponts, privé, public, etc, je me réfère au mac-address que j'attribue dans le fichier de configuration ci-après avec un “ifconfig”.

# umount /mnt


Configuration du domaine

name = "dom_fw"
kernel = "/boot/vmlinuz-2.6.32-5-xen-amd64"
ramdisk = "/boot/initrd.img-2.6.32-5-xen-amd64"
root = "/dev/xvda1 ro"
disk = ['phy:/dev/vg/vmdiskfw,xvda1,w']
memory = 96
vif=[ 'mac=00:16:3e:70:01:02, bridge=br_outside' ,
       'mac=00:16:3e:70:01:03, bridge=br_inside' ,
       'mac=00:16:3e:70:01:04, bridge=br_pub' ,
       'mac=00:16:3e:70:01:05, bridge=br_priv',
]

L'un des changements que j'ai pu voir, c'est que l'on n'a pas "hda" mais "xvda"... donc attention à ne pas se tromper.

On démarre le domaine puis on s'y connecte :

# xm create dom_fw
# xm console dom_fw

Login : root
Mot de passe : ###########

Conclusion

Voilà notre première machine “devrait être” opérationnelle. Pour rendre aussi disponible, au cas où, mon Dom0, j'ai ajouté ceci dans mon rc.local :

ifconfig br_inside 192.168.100.1 netmask 255.255.255.0

Ainsi mon Dom0 est accessible via l'adresse 192.168.100.1.

Vous devriez pouvoir vous connecter en SSH sur l'un ou l'autre. Si vous vous connectez sur Dom0, vous pouvez ensuite passer sur dom_fw en tapant :

# xm console dom_fw
Me contacter | ©2004-2005 Raum