« Atelier SysRes SE4 2024/2025 E5 » : différence entre les versions

De wiki-se.plil.fr
Aller à la navigation Aller à la recherche
Aucun résumé des modifications
Aucun résumé des modifications
Ligne 1 : Ligne 1 :
= Rapport de TP - Kaoutar EL-BACHIRI =
= Projet Virtualisation - Kaoutar EL-BACHIRI =


== Introduction ==
== Création des machines virtuelles ==
Ce TP a pour but de mettre en place un environnement de virtualisation en utilisant **Xen**. Nous avons configuré une machine de service (**SE4.Apollo**) et une machine mandataire (**SE4.Solstice**) avec des adresses IP fixes et un routage réseau adapté.


---
=== Création et connexion aux machines virtuelles ===


= Machine Virtuelle SE4.Apollo =
Dans un premier temps, nous devons créer nos trois VM : 
- **SE4.Apollo** (Machine de services) 
- **SE4.Moon** (Machine de services) 
- **SE4.Solstice** (Machine mandataire)


== Création de la machine virtuelle ==
Nous utilisons la commande `xen-create-image` pour les créer :


Dans un premier temps, nous avons créé la machine virtuelle **SE4.Apollo** avec la commande suivante :
```bash
<syntaxhighlight lang="bash">
xen-create-image --hostname=SE4.Apollo --dhcp --dir=/usr/local/xen --size=10G --dist=daedalus --memory=2G --bridge=pontKS
xen-create-image --hostname=SE4.Apollo --dhcp --dir=/usr/local/xen --size=10G --dist=daedalus --memory=2G --bridge=pontKS
</syntaxhighlight>
xen-create-image --hostname=SE4.Moon --dhcp --dir=/usr/local/xen --size=10G --dist=daedalus --memory=2G --bridge=pontKS
 
xen-create-image --hostname=SE4.Solstice --dhcp --dir=/usr/local/xen --size=10G --dist=daedalus --memory=2G --bridge=pontKS
Une fois la VM créée, nous l’avons démarrée avec :
<syntaxhighlight lang="bash">
xen create /etc/xen/SE4.Apollo.cfg
</syntaxhighlight>
 
Et pour s’y connecter :
<syntaxhighlight lang="bash">
xen console SE4.Apollo
</syntaxhighlight>
 
---
 
== Configuration du stockage avec LVM ==
 
<u>Objectif</u> : Déplacer <code>/var</code> et <code>/home</code> vers les nouvelles partitions LVM et les monter automatiquement.
 
=== Création des partitions LVM ===
1. Création des volumes logiques :
<syntaxhighlight lang="bash">
lvcreate -L10G -n var apollo_vg
lvcreate -L10G -n home apollo_vg
</syntaxhighlight>
 
2. Formatage des partitions en **ext4** :
<syntaxhighlight lang="bash">
mkfs.ext4 /dev/apollo_vg/var
mkfs.ext4 /dev/apollo_vg/home
</syntaxhighlight>
 
---
 
=== Montage des partitions et modification de `/etc/fstab` ===
<u>Montage temporaire :</u>
<syntaxhighlight lang="bash">
mount /dev/apollo_vg/var /mnt
mv /var/* /mnt
umount /mnt
</syntaxhighlight>
 
<u>Ajout des partitions dans `/etc/fstab` :</u>
<syntaxhighlight lang="plaintext">
/dev/apollo_vg/var  /var  ext4 defaults 0 2
/dev/apollo_vg/home /home ext4 defaults 0 2
</syntaxhighlight>
 
<u>Rechargement des partitions :</u>
<syntaxhighlight lang="bash">
mount -a
</syntaxhighlight>
 
<u>Vérification des partitions :</u>
<syntaxhighlight lang="bash">
df -h
</syntaxhighlight>
 
---
 
== Configuration du réseau sur SE4.Apollo ==
 
L’objectif ici est d’attribuer **une adresse IPv4 fixe** et de **permettre l’obtention automatique d’une IPv6**.
 
<u>Modification du fichier `/etc/network/interfaces` :</u>
<syntaxhighlight lang="plaintext">
auto eth0
iface eth0 inet static
    address 172.16.0.2
    netmask 255.255.255.0
    gateway 172.16.0.1
 
iface eth0 inet6 auto
</syntaxhighlight>
 
<u>Rechargement de la configuration réseau :</u>
<syntaxhighlight lang="bash">
systemctl restart networking
ip a
ping 172.16.0.1
ping6 google.com
</syntaxhighlight>
 
---
 
= Configuration de la machine mandataire SE4.Solstice =
 
== Configuration du réseau sur SE4.Solstice ==
 
<u>Objectif :</u> 
✔ Attribuer **une IP fixe sur le réseau privé (172.16.0.1)** 
✔ Attribuer **une IP fixe routée (193.48.57.166/27)** 
✔ Activer le **NAT (Masquerade)** pour permettre aux machines Apollo et Moon de sortir sur Internet 
 
<u>Modification du fichier `/etc/network/interfaces` :</u>
<syntaxhighlight lang="plaintext">
# Interface principale - réseau routé vers l'extérieur (Internet)
auto eth0
iface eth0 inet static
    address 193.48.57.166
    netmask 255.255.255.224  # /27
    gateway 193.48.57.161    # Passerelle du réseau routé
    dns-nameservers 8.8.8.8 1.1.1.1  # DNS Google & Cloudflare
 
# Interface privée - réseau interne des machines de service
auto eth1
iface eth1 inet static
    address 172.16.0.1
    netmask 255.255.255.0
 
# IPv6 automatique via SLAAC
iface eth0 inet6 auto
</syntaxhighlight>
 
<u>Application de la configuration :</u>
<syntaxhighlight lang="bash">
systemctl restart networking
ip a
ping 172.16.0.2
ping -c 4 8.8.8.8
</syntaxhighlight>
 
---
 
== Activation du NAT pour la sortie Internet ==
 
<u>1. Activer le transfert IP sur Solstice :</u>
<syntaxhighlight lang="bash">
sysctl -w net.ipv4.ip_forward=1
echo "net.ipv4.ip_forward = 1" | tee -a /etc/sysctl.conf
sysctl -p
</syntaxhighlight>
 
<u>2. Ajouter une règle de NAT avec `iptables` :</u>
<syntaxhighlight lang="bash">
iptables -t nat -A POSTROUTING -s 172.16.0.0/24 -o eth0 -j MASQUERADE
</syntaxhighlight>
 
<u>3. Sauvegarder la configuration `iptables` :</u>
<syntaxhighlight lang="bash">
iptables-save | tee /etc/iptables/rules.v4
</syntaxhighlight>
 
<u>4. Vérification de la connectivité :</u>
Depuis **Apollo et Moon** :
<syntaxhighlight lang="bash">
ping -c 4 google.com
</syntaxhighlight>
 
Si l’accès ne fonctionne pas, ajouter un serveur DNS :
<syntaxhighlight lang="bash">
echo "nameserver 8.8.8.8" | tee /etc/resolv.conf
</syntaxhighlight>
 
---
 
= **Conclusion** =
 
Pour le moment, nous avons :
✔ **Créé et configuré la machine de service SE4.Apollo** 
✔ **Créé et configuré la machine mandataire SE4.Solstice** 
✔ **Monté et formaté les partitions LVM pour `/var` et `/home`** 
✔ **Attribué des adresses IP fixes en IPv4 et configuré l’IPv6 automatique**

Version du 4 février 2025 à 12:11

Projet Virtualisation - Kaoutar EL-BACHIRI

Création des machines virtuelles

Création et connexion aux machines virtuelles

Dans un premier temps, nous devons créer nos trois VM : - **SE4.Apollo** (Machine de services) - **SE4.Moon** (Machine de services) - **SE4.Solstice** (Machine mandataire)

Nous utilisons la commande `xen-create-image` pour les créer :

```bash xen-create-image --hostname=SE4.Apollo --dhcp --dir=/usr/local/xen --size=10G --dist=daedalus --memory=2G --bridge=pontKS xen-create-image --hostname=SE4.Moon --dhcp --dir=/usr/local/xen --size=10G --dist=daedalus --memory=2G --bridge=pontKS xen-create-image --hostname=SE4.Solstice --dhcp --dir=/usr/local/xen --size=10G --dist=daedalus --memory=2G --bridge=pontKS