Atelier SysRes SE4 2024/2025 E1

De wiki-se.plil.fr
Révision datée du 6 mars 2025 à 12:30 par Sdeparis (discussion | contributions) (→‎Creation des machines virtuelles)
(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)
Aller à la navigation Aller à la recherche

Projet Virtualisation Sarah DEPARIS - Machine Moon

L'objectif de ce projet est d'installer et configurer des machines virtuelles destinées à héberger des services sur un environnement Xen

Création des machines virtuelles

Nous avons commencé à créer nos 3 machines virtuelles sur Capbreton en utilisant la commande suivante :

root@capbreton:~# xen-create-image --hostname=SE4.Moon --dhcp --dir=/usr/local/xen --size=10G --dist=daedalus --memory=2G --bridge=pontKS
root@capbreton:~# xen-create-image --hostname=SE4.Solstice --dhcp --bridge=pontKS --dir=/usr/local/xen --size=10GB --dist=daedalus --memory=2048M --force

2 machines de services ( Moon et Apollo ) qui joueront un rôle clé dans l'hébergement des services, et 1 machine mandataire ( Solstice ) qui assurera la gestion du réseau et l'interconnexion avec l'extérieur,

Architecture VM.png
  • Nom de la machine de service : SE4.Moon
  • Taille du disque : 10G

Configuration de la VM dans : /etc/network/interfaces


XEN LIST

Affiche des informations sur les machines virtuelles (VM) qui sont actuellement gérées par Xen. Cette commande fournit des détails sur l'état de chaque machine virtuelle, comme : si elle est en cours d'exécution, son nom, son identifiant (ID), et d'autres informations.

root@capbreton:~# xen list
Name                                        ID   Mem VCPUs	State	Time(s)
Domain-0                                     0  3970     4     r-----   83423.2
SE4.Solstice                                39  2048     1     -b----    2560.1                                 113  2048     1     -b----    1390.1
SE4.Apollo                                 118  2048     1     -b----     462.7
SE4.Moon                                   119  2048     1     -b----     452.3

Liste des commandes utiles :

Fonction Commande
listes des VMs allumées xen list
Allumer la VM xen create /etc/xen/SE4.Moon.cfg
Connexion à la VM xen console SE4.Moon
Eteindre la VM xen shutdown SE4.Moon
Configuration du réseau Modification du fichier /etc/network/interfaces

Le mot de passe de la VM est dans /var/log/xen-tools/SE4.Moon.log

Remarque :

Problème login : Ctrl + AltGr + ] => vi => :q! => reconnexion


ip -l dans vm cap breton pour voir les ponts

Configuration de la machine de services Moon

1. Création de partitions LVM pour /var et /home

Objectif : Afin de séparer les données utilisateur et applicatives du système principal, nous avons créé deux partitions LVM de 10G chacune, dédiées respectivement à /var et /home. Cette séparation facilite la gestion, la sauvegarde et la récupération des données en cas de problème.

Pourquoi ?

  • LVM (Logical Volume Manager) permet une gestion flexible du stockage, facilitant l’extension ou la réduction des partitions si nécessaire.
  • Séparer /var et /home permet d’isoler les données des utilisateurs et les fichiers système critiques, réduisant les risques en cas de panne ou de saturation de l’espace disque.

Actions :

  • Création de deux partitions LVM de 10G pour /var et /home afin de séparer les données utilisateur et applicatives du système principal, facilitant ainsi la gestion, la sauvegarde et la récupération des données en cas de problème.
  • Modifier la configuration de la machine virtuelle pour monter ces partitions sous /var et /home.
  • Transférer les fichiers de /var avant de modifier le point de montage pour éviter la perte de données.
  • Mettre à jour /etc/fstab pour un montage automatique des partitions au démarrage.


Partitions

Modification du fichier /etc/fstab pour un montage automatique au démarrage :

On modifie le fichier /etc/fstab, qui contient la liste des partitions.

Ouvrir le fichier /etc/fstab :

vim /etc/fstab

Ajouter les nouvelles partitions LVM au fichier /etc/fstab :

Ajoutez les lignes suivantes à la fin du fichier pour monter les partitions LVM /var et /home au démarrage. Vous devez spécifier le type de système de fichiers (ici ext4), les options de montage et l'ordre dans lequel les partitions doivent être montées.

  • /dev/xvdb /var ext4 defaults 0 2
  • /dev/xvdc /home ext4 defaults 0 2

mettre capture d'écran

# /etc/fstab: static file system information.
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
proc            /proc           proc    defaults        0       0
devpts          /dev/pts        devpts  rw,noexec,nosuid,gid=5,mode=620 0  0
/dev/xvda1 none swap sw 0 0
/dev/xvda2 / ext4 noatime,nodiratime,errors=remount-ro 0 1
/dev/xvdb /var ext4 defaults 0 2
/dev/xvdc /home ext4 defaults 0 2

Préparer les partitions et déplacer les données :

  1. Montage temporaire des partitions dans /mnt : Pour pouvoir déplacer les données, nous avons du monter les nouvelles partitions LVM dans un répertoire temporaire /mnt. On a créé 2 partitions une pour /var et une /home sous les noms xvdb et xvdc dans /dev ,que l'on monte avec  :
    1. mount /dev/xvdb /mnt
    2. mount /dev/xvdc /mnt
  • Montage temporaire des partitions
  • mount /dev/xvdb /mnt  # Montage temporaire pour /var mount /dev/xvdc /mnt  # Montage temporaire pour /home

Déplacer les fichiers de /var et /home vers les nouvelles partitions : On déplace les données des répertoires /var et /home vers les nouvelles partitions LVM. Les commandes suivantes nous permettent de transférer le contenu des répertoires vers les nouvelles partitions :

  • Déplacer les fichiers de /var :
  • mv /var/* /mnt
  • Déplacement des fichiers existants

mv /var/* /mnt  # Déplacement des fichiers de /var vers la nouvelle partition

umount /mnt      # Démontage après transfert des données

mount -a         # Remontage des partitions définies dans fstab

Démonter les partitions temporaires :

Avant de configurer les montages permanents, on démonte les partitions des répertoires temporaires (/mnt) :

umount /mnt

Monter les partitions définies dans fstab :

Pour monter toutes les partitions définies dans le fichier /etc/fstab  :

mount -a

Cette commande monte toutes les partitions qui ne sont pas encore montées et qui sont définies dans /etc/fstab

remet les données dans le fichier déplacer.


Préparation des partitions

  • Création et formatage des partitions
  • mkfs -t ext4 /dev/xvdb  # Formatage de la partition pour /var mkfs -t ext4 /dev/xvdc  # Formatage de la partition pour /home

Configuration des montages permanents

Pour garantir que les nouvelles partitions soient montées automatiquement à chaque démarrage, nous avons modifié le fichier /etc/fstab en y ajoutant les lignes suivantes :

Ces entrées assurent que les partitions LVM sont correctement prises en charge par le système.

Vérification des partitions montées

Après avoir configuré le montage automatique et remonté les partitions, nous devons vérifier que les partitions sont correctement montées. Nous avons utilisé la commande df -h pour afficher l'espace disque utilisé et disponible sur les partitions montées.Cela nous permet de confirmer que les partitions /var et /home sont correctement montées et qu'il n'y a pas de problème d'espace disque.

2. Configuration du Réseau

Afin de permettre une communication efficace avec la machine mandataire et d’assurer une connectivité IPv6 stable, nous avons modifié le fichier /etc/network/interfaces pour :

  • Attribuer automatiquement une adresse IPv6 routée
  • Fixer une adresse IPv4 statique sur le réseau privé

Mise à jour du fichier /etc/network/interfaces

Nous avons ajouté les paramètres suivants :

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
        address 172.16.0.3/24
        gateway 172.16.0.1
#IPv6 automatique
iface eth0 inet6 auto

auto eth1
iface eth1 inet6 auto

2. Configuration du réseau

Pourquoi ?

  • Assurer une connectivité IPv6 stable et routée pour permettre l’accès direct à Internet.
  • Fixer une adresse IPv4 sur le réseau privé permet aux machines de services de communiquer efficacement avec leur machine mandataire.

Actions :

  • Modifier /etc/network/interfaces pour :
    • Activer l’obtention automatique d’une IPv6 routée.
    • Attribuer une IPv4 fixe sur le réseau privé de la machine mandataire.


Configuration du réseau dans /etc/network/interfaces :

  • Attribution automatique d’une adresse IPv6 routée.
  • Adresse IPv4 statique sur le réseau privé.

3. Installation des services essentiels

Pourquoi ?

  • SSH : Permet l’accès à distance sécurisé à la machine pour l’administration et la maintenance.
  • Apache2 (serveur Web) : Héberge des applications et sites web accessibles aux utilisateurs.
  • Bind (serveur DNS) : Assure la résolution de noms de domaine, essentielle pour le bon fonctionnement des services sur le réseau.

Actions :

  • Installer les paquets nécessaires :
  • Vérifier que les services sont bien démarrés et configurés pour s’exécuter au démarrage.

Ces étapes garantissent une infrastructure fonctionnelle, optimisée et sécurisée pour l’hébergement des services sur l’environnement Xen.

Résumé des Commandes Utilisées

Étape Commande
Création et formatage des partitions mkfs -t ext4 /dev/xvdb

mkfs -t ext4 /dev/xvdc

Montage temporaire des partitions mount /dev/xvdb /mnt

mount /dev/xvdc /mnt

Déplacement des données mv /var/* /mnt
Démontage après transfert umount /mnt
Ajout dans /etc/fstab Ajout des entrées pour /var et /home
Montage automatique des partitions mount -a
Vérification des partitions montées df -h
Configuration du réseau Modification du fichier /etc/network/interfacespour configurer IPv6 et IPv4

Choix des addresse IP

Nom machine services IPv4 privée machine services Nom de domaine Nom machine mandataire IPv4 privée et routée machine mandataire
SE4.Moon 172.16.0.3/24 moonrises.online SE4.Solstice privée (172.16.0.1/24)

routée (193.48.57.166/28)

Routeur en 193.48.57.161/28

rq : pas sur eth0 car pas d'ipv6 sur eth0

Modification du fichier /etc/network/interfaces

ajout des addresses privé et public

( on retire dhcp car pb avec ifup (erreur dhcp dicscover))

rq on peut ping nos machines entre elles entre Moon et Appollo



pour les vif

=> vi /etc/xen/SE4.Solstice.cfg

Configuration de la machine mandataire

Modification du fichier /etc/network/interfaces ajout des adresses

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

#Interface IPv4 priv   pour le r  seau interne (passerelle pour Apollo et M>auto eth0
iface eth0 inet static
        address 172.16.0.1/24

#Interface IPv4 rout  e pour l'acc  s Internet
auto eth1
iface eth1 inet static
        address 193.48.57.166/27
        gateway 193.48.57.161                   #passerelle routeur
#IPv6 automatique
iface eth1 inet6 auto

post-up nft -f /etc/nftables.conf


Ajout pour interface eth1:

ajout bridge : SE4

vi /etc/xen/SE4.Solstice.cfg


ping =>

Configuration Cisco

Mise en Place d’un Serveur DNS

Nous avons configuré un serveur DNS pour gérer les noms de domaine de nos machines virtuelles : apollo-exploration.online et moonrises.online.

La première étape était d'acquérir les noms de domaine pour Apollo et Moon sur Gandi. La seconde étape était d'acquerir les certificats.

Après avoir suivi le tutoriel, nous obtenons deux fichiers : myserver.key (la clé privée) et server.csr (la demande de certificat).

Configuration du Serveur DNS Maître et Secondaire

Sur Moon, nous avons configuré les zones DNS dans /etc/bind/named.conf.local :

zone "moonrises.online" {
    type primary;
    file "/etc/bind/zones/apollo-exploration.online";
};


zone "apollo-exploration.online" {
    type secondary;
    file "/etc/bind/backup/apollo-exploration.online";
    primaries { 172.16.0.2; };
};

Exemple de Fichiers de Zone ___A TESTER___

Fichier /etc/bind/zones/moonrises.online.:

Un fichier similaire a été créé pour apollo-exploration.online.

---

Les configurations DNS et réseau permettrons un fonctionnement stable des machines et respectent les exigences du sujet.

Prochaine étapes : finir le serveur DNS et Interconnexion avec Internet (IPv6).