« Atelier SysRes SE4 2024/2025 E5 » : différence entre les versions
Aucun résumé des modifications |
|||
Ligne 1 : | Ligne 1 : | ||
= Projet Virtualisation - Kaoutar EL | = Projet Virtualisation - Kaoutar EL BACHIRI = | ||
== 1. Introduction == | == 1. Introduction == |
Version du 5 février 2025 à 08:55
Projet Virtualisation - Kaoutar EL BACHIRI
1. Introduction
Dans ce TP, nous avons mis en place une infrastructure de **virtualisation sous Xen** sur le serveur **Capbreton**. L’objectif est de :
- Créer et configurer plusieurs machines virtuelles (VM) : **Apollo, Moon, Solstice**.
- Séparer les espaces de stockage avec **LVM** et monter `/var` et `/home` sur des partitions dédiées.
- Configurer l’adressage réseau IPv4 et IPv6 en respectant l’architecture réseau.
- Mettre en place une **machine mandataire (Solstice)** pour assurer le routage et l’accès Internet.
- Configurer le routeur de promotion et les VLAN pour permettre la communication et l’accès Internet.
- Mettre en place le NAT et les règles de redirection de ports pour assurer l’accessibilité des services.
Toutes les manipulations ont été effectuées en **SSH** sur Capbreton :
ssh user@capbreton.plil.info
---
2. Création des machines virtuelles
2.1 Commande de création des VM
Nous avons utilisé la commande `xen-create-image` pour créer nos VMs :
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
2.2 Lancement et connexion aux VM
Une fois les VMs créées, nous les avons démarrées et avons accédé aux consoles :
sudo xl create /etc/xen/SE4.Apollo.cfg
sudo xl create /etc/xen/SE4.Moon.cfg
sudo xl create /etc/xen/SE4.Solstice.cfg
sudo xl console SE4.Apollo
sudo xl console SE4.Moon
sudo xl console SE4.Solstice
---
3. Configuration du stockage et montage de /var et /home
3.1 Objectif
Nous avons déplacé les répertoires `/var` et `/home` vers des partitions dédiées avec **LVM** pour optimiser la gestion du stockage.
3.2 Création des partitions LVM
Nous avons initialisé **LVM** sur chaque VM :
Sur Apollo :
sudo lvcreate -L10G -n var apollo_vg
sudo lvcreate -L10G -n home apollo_vg
Sur Moon :
sudo lvcreate -L10G -n var moon_vg
sudo lvcreate -L10G -n home moon_vg
3.3 Formatage des partitions
Nous avons formaté les volumes en **ext4** :
sudo mkfs.ext4 /dev/apollo_vg/var
sudo mkfs.ext4 /dev/apollo_vg/home
sudo mkfs.ext4 /dev/moon_vg/var
sudo mkfs.ext4 /dev/moon_vg/home
3.4 Ajout dans /etc/fstab pour montage automatique
Sur Apollo :
/dev/apollo_vg/var /var ext4 defaults 0 2
/dev/apollo_vg/home /home ext4 defaults 0 2
Sur Moon :
/dev/moon_vg/var /var ext4 defaults 0 2
/dev/moon_vg/home /home ext4 defaults 0 2
3.5 Vérification des montages
Nous avons testé le montage automatique :
sudo mount -a
df -h
---
4. Configuration réseau
4.1 Configuration des VLAN et du Routeur
Afin d’assurer la connectivité des machines virtuelles et leur accès à Internet, nous avons participé à la configuration du routeur de la promotion.
VLAN mis en place :
- **VLAN 1** : Réseau de service
- **VLAN 50** : VLAN regroupant toutes les machines XEN
- **VLAN X (100+n)** : Réseaux individuels pour chaque machine de service
- **VLAN 530** : Interconnexion avec SR52 de l’école pour la sortie Internet.
Nous avons affiché la configuration des VLANs avec :
show run
Après plusieurs ajustements, la configuration a été modifiée pour respecter le cahier des charges, notamment en **corrigeant le routage IPv4**.
4.2 Configuration du SSH sur le routeur
Pour sécuriser l’accès SSH, nous avons créé une **access-list** qui accepte uniquement les connexions depuis notre réseau :
access-list 10 permit 193.48.57.160 0.0.0.15
access-list 10 deny any
Puis, nous avons appliqué cette access-list à la **line vty** pour filtrer les connexions SSH :
line vty 0 15
access-class 10 in
Connexion en SSH :
ssh admin@193.48.57.161 -o KexAlgorithms=diffie-hellman-group-exchange-sha1,diffie-hellman-group14-sha1 -o HostKeyAlgorithms=ssh-rsa
4.3 Mise en place du routage OSPF
Le routeur utilise **OSPF** pour échanger les tables de routage avec **SR52** :
router ospf 1
network 193.48.57.160 0.0.0.15 area 10
summary-address 172.16.0.0 255.255.255.0 not-advertise
Après cette configuration, nous avons vérifié que le routeur pouvait ping **Google**.
---
5. Configuration de la machine mandataire (Solstice)
5.1 Configuration réseau
Nous avons défini les interfaces réseau :
# Interface principale (Internet)
auto eth0
iface eth0 inet static
address 193.48.57.166
netmask 255.255.255.224
gateway 193.48.57.161
dns-nameservers 8.8.8.8 1.1.1.1
iface eth0 inet6 auto
# Interface privée pour les machines de services
auto eth1
iface eth1 inet static
address 172.16.0.1
netmask 255.255.255.0
Redémarrage du réseau :
sudo systemctl restart networking
5.2 Configuration SSH
Nous avons modifié le fichier `/etc/ssh/sshd_config` pour autoriser la connexion SSH root :
PermitRootLogin yes
Puis, nous avons redémarré SSH :
sudo systemctl restart ssh
5.3 Redirection de ports avec nftables
Pour permettre l’accès SSH via la machine mandataire, nous avons mis en place une redirection de ports :
nft add table ip NAT
nft add chain NAT PREROUTING { type nat hook prerouting priority 0\; }
nft add rule NAT PREROUTING tcp dport 2202 dnat to 172.16.0.2:22
---
6. Prochaines étapes
Nous avons maintenant un accès Internet et une configuration réseau fonctionnelle. Les prochaines étapes incluent :
- **Installation des services** : Apache2, Bind9.
- **Mise en place du serveur DNS et du proxy inverse**.
- **Tests de connectivité et routage avancé**.