Atelier SysRes SE4 2024/2025 E15
Création de la VM
Partitions
Nous commençons par nous mettre en ssh sur capbreton et à rentre cet commande pour créer nos machines virtuelles (2 VM services + 1 VM mandataire) :
xen-create-image --hostname=SE4.Gtr --dhcp --dir=/usr/local/xen --size=10G --dist=daedalus --memory=2G --bridge=alloco_wahran
Ensuite nous assignons les partitions dans le fichier /etc/xen/SE4.Gtr.cfg:
phy:/dev/virtual/SE4.Jinx-home,xvdb1,w,
phy:/dev/virtual/SE4.Jinx-var,xvda3,w,
Pour démarrer notre VM nous exécutons la commande suivante:
xen create SE4.Gtr.cfg
Ensuite nous pouvons vérifier si la VM est démarrée avec:
xen list
Par la suite nous nous connectons à la VM de cette manière:
xen console SE4.Gtr
Nous devons maintenant implémenter /var et /home dans nos partitions LVM, on se place donc dans le fichier /etc/fstab pour y ajouter nos disk:
/dev/xvda3 /home ext4 defaults 0 2
/dev/xvdb1 /var ext4 defaults 0 2
(J'ai fais une petite erreur sur cette partie car j'ai assigné /dev/xvdb1 à /var alors que ce n'était pas le bon, /var était sur xvda3, cette erreur n'est pas si grave je vais juste devoir faire attention à bien différencier /var et /home par la suite)
Et nous formatons ces disk avec ces deux commandes:
mkfs -t ext4 /dev/xvda3
mkfs -t ext4 /dev/xvdb1
Il faut maintenant Mount les fichiers à implémenter le /var (xvda3 pour moi), or j'ai Mount le xvdb1 par mégarde comme énoncé ci-dessus:
mount /dev/xvdb1 /mnt
On copie les données et on démonte le fichier copié:
mv /var/* /mnt
unmount /mnt
Nous pouvons maintenant observer les changement:
mount -a
IP
Nous voulons maintenant assigner des adresse IPv4 et IPv6 à nos VM, chaque VM de service aura une IP privée, la VM mandataire aura une IP privée + une IP routée, pour cela nous modifions le fichier /etc/network/interfaces de nos VM:
VM de service
Pour configurer le réseau, nous modifions le fichier /etc/network/interfaces afin d’attribuer une adresse IPv4 et une adresse IPv6.
Tout d'abord nous devons mettre nos machines sur le commutateur de la promo en modifiant le fichier .cfg:
# Networking
#
dhcp = 'dhcp'
vif = [ 'mac=00:16:3E:08:13:E7,bridge=allocowahran',
'mac=00:16:3E:08:13:E8, bridge=SE4' ]
L’adresse IPv6 ne pose aucun problème : il suffit d’ajouter la ligne suivante :
iface eth0 inet6 auto
Concernant l’adresse IPv4, nous avons choisi une adresse privée pour l’utilisation de notre binôme : 192.168.0.0/24.
De plus, la machine mandataire joue le rôle de passerelle (gateway) pour les deux machines de services. Nous lui avons attribué l’adresse IPv4 192.168.0.1.
Nous complétons donc le fichier avec une adresse statique :
iface eth0 inet static
address 192.168.0.2
netmask 255.255.255.0
gateway 192.168.0.1
VM mandataire
Ensuite, il est nécessaire d’attribuer une seconde adresse IPv4 sur eth1. Toutefois, cette interface n’existe pas par défaut sur les machines virtuelles (VM). Il faut donc la créer en modifiant le fichier .cfg de la machine sur Capbreton.
Dans la section Networking, on trouve une ligne vif à modifier. Nous l’ajustons pour ajouter une interface eth1 sur le bridge SE4, tout en conservant eth0.
Après avoir redémarré la machine, l’interface eth1 sera disponible. Nous pouvons alors mettre à jour le fichier /etc/network/interfaces :
auto eth0
iface eth0 inet static
address 192.168.0.1
netmask 255.255.255.0
#iface eth0 inet dhcp
# post-up ethtool -K eth0 tx off
iface eth0 inet6 auto
auto eth1
iface eth1 inet static
address 193.48.57.162/28
gateway 193.48.57.161
Après avoir fait un ifdown et un ifup nous pouvons envoyer des pings entre nos VM de service et avec la VM mandataire:
Ping de SE4.Gtr (192.168.0.2) vers SE4.Gyro (192.168.0.3):
Ping de SE4.Gtr (192.168.0.2) vers SE4.Pegase (192.168.0.1):