Atelier SysRes SE4 2025/2026 E5
Compte rendu des commandes effectués
Etape 1 : Connexion SSH
ssh root@capbreton
Mot de passe :
Etape 2 : Créer un fichier dans le répertoire /etc/network/interfaces.d du Dom0 aux noms du binôme concerné
On se déplace à ce répertoire :
cd /etc/network/interfaces.d/
On créer ensuite ensuite un fichier aux noms de notre binôme et on l'édite :
touch SE42026_cpayet_tdelobel
vim SE42026_cpayet_tdelobel
Puis on donne un nom au bridge, ici c'est `pont_pacman`et on met dans le fichier ceci :
auto pont_pacman
iface pont_pacman inet manual
bridge_ports none
up ip link set $IFACE up
down ip link set $IFACE down
Une fois le pont créer, il faut le démarrer :
ifup pont_pacman
Etape 3 : Création des VMs
xen-create-image --hostname=SE4.CachyOS --dhcp --bridge=pont_pacman --dir=/usr/local/xen --size=10G --dist=daedalus --memory=2048M --force
xen-create-image --hostname=SE4.Manjaro --dhcp --bridge=pont_pacman --dir=/usr/local/xen --size=10G --dist=daedalus --memory=2048M --force
xen-create-image --hostname=SE4.LinusTorvalds --dhcp --bridge=pont_pacman --dir=/usr/local/xen --size=10G --dist=daedalus --memory=2048M --force
On adapte les hostnames en fonction des nom de nos machines.
IMPORTANT : Les résultats des commandes sont à noter car ellles contiennent les mots de passe et autres informations importantes.
Nos résultats :
CachyOS :
Installation Summary
---------------------
Hostname : SE4.CachyOS
Distribution : daedalus
MAC Address : 00:16:3E:8B:45:EC
IP Address(es) : dynamic
SSH Fingerprint : SHA256:p+nECGSXOPvFjDjk+/x8adAn8JxTTPjuknCTcFZxJNk (DSA)
SSH Fingerprint : SHA256:YaNMhK5ZFF/TshemMHSmt08R9uBPAnhNK134XEZ0CuY (ECDSA)
SSH Fingerprint : SHA256:qQNuBNfAoySUPOFPplDh8p0ZPtxRulz/vbOq+Pm4gwM (ED25519)
SSH Fingerprint : SHA256:psWV2TNuHsZcRelqipM7TJ/mE4cvFI+oxndg6nvCpCk (RSA)
Root Password : 6nyCiterydiMtnxsPDRsUys
Manjaro :
Installation Summary
---------------------
Hostname : SE4.Manjaro
Distribution : daedalus
MAC Address : 00:16:3E:36:79:D8
IP Address(es) : dynamic
SSH Fingerprint : SHA256:n+ojtWyKBODRtEppjCvAp6nd2cjL/Ily54j0cM03lMc (DSA)
SSH Fingerprint : SHA256:K+Qa9NAU3JIGsMy3LEYCgFbfL3ozuiRKG+U3XsbV5ow (ECDSA)
SSH Fingerprint : SHA256:AJLfxk4Zz8BZflWYOS8mifapH+uAFgGKA3WSj6rN0NA (ED25519)
SSH Fingerprint : SHA256:/6iWOWoii0nJsbScwVYIGQAbuTI1/YIpaRyRdBl8mwE (RSA)
Root Password : PgvMbhYvgtksg8tmiJnVZnQ
LinusTorvalds :
Installation Summary
---------------------
Hostname : SE4.LinusTorvalds
Distribution : daedalus
MAC Address : 00:16:3E:AA:BF:EF
IP Address(es) : dynamic
SSH Fingerprint : SHA256:ouY/2dce0YI/mJD9Qw68oKU0xdw6Cs9ybgJxRm/FKiI (DSA)
SSH Fingerprint : SHA256:p5lZznE0q8j6c68YTF5toYgBugOkc0IopTO+Ce9SiZ8 (ECDSA)
SSH Fingerprint : SHA256:FbqBOG+0bBjuQBOlAytAlbMV/9VoJ8BAlFadG/VaGD4 (ED25519)
SSH Fingerprint : SHA256:FCEtQGUhMhN9DDtTmt5zts/9PeC7ahnmJA7UOhMnGeg (RSA)
Root Password : ekrmCSKb3ZAxXSYvNpjbiSK
Etape 4 :
PHRASE MANQUANTE
xen create /etc/xen/SE4.Manjaro.cfg
xen create /etc/xen/SE4.CachyOS.cfg
xen create /etc/xen/SE4.LinusTorvalds.cfg
On vérifie la liste des machines lancées via :
xen list
Nos résultats :
Name ID Mem VCPUs State Time(s)
SE4.CachyOS 83 2048 1 -b---- 5.6
SE4.Manjaro 85 2048 1 -b---- 5.8
SE4.LinusTorvalds 87 2048 1 -b---- 5.3
Etape 5 : Partition
Sur capbreton
On partionne avec cette commande :
lvcreate -n SE4.CachyOS.var -L 10G virtual
On éteint notre machine :
xen shutdown SE4.CachyOS
Et on modifie :
vim /etc/xen/SE4.CachyOS.cfg
Et on ajoute ceci :
disk = [
[...],
'phy:/dev/virtual/SE4.CachyOS.home,xvda3,w',
'phy:/dev/virtual/SE4.CachyOS.var,xvdb1,w'
]
Sur la machine mandataire
Nous ajoutons les partitions dans /etc/fstab :
/dev/xvda3 /var ext4 defaults 0 2
/dev/xvdb1 /home ext4 defaults 0 2
Nous formatons les partitions avant de les utiliser :
mkfs -t ext4 /dev/xvda3
mkfs -t ext4 /dev/xvdb1
Nous copions le contenu de /var :
mount /dev/xvda3 /mnt
mv /var/* /mnt
umount /mnt
Nous montons ensuite automatiquement les partitions définies dans /etc/fstab :
mount -a
De nouveaux sur capbreton
On redémarre notre machine :
xen create /etc/xen/SE4.CachyOS.cfg
Ensuite on se connecte à notre VM via :
xen console SE4.CachyOS
Machines de Service - CachyOS & Manjaro
Dans notre VM :
On modifie :
vim /etc/network/interfaces
Et on ajoute ceci :
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 192.168.10.3/24
gateway 192.168.10.1
# Pour l'ipv6
auto eth1
iface eth1 inet6 auto
- 172.60.0.3 est l'adresse IPV4 de la VM CachyOS
Machine Mandataire - LinusTorvalds
La machine mandataire agit comme passerelle IPv4 pour les machines de services. Voici sa configuration réseau :
La machine mandataire va posséder trois adresses. Une adresse IPv6 routée, une adresse IPv4 routée et une adresse IPv4 pour le réseau privé avec ces deux machines de services. Pour ce faire, nous devons au préalable configurer une nouvelle interface eth1 pour y intégrer la seconde adresse IPv4.
Sur capbreton, depuis /etc/xen/SE4.CachyOS.cfg :
vif = [[...], 'mac=00:16:3E:8B:45:ED,bridge=SE4']
Pour l'adresse mac on prend celui existant et on fait +1.
Depuis /etc/resolv.conf :
nameserver 8.8.8.8
SSH
apt update
apt upgrade
apt install ssh
apt install bind9
apt install apache2
(Dans TOUTES les VMs)
On active le SSH en ajoutant dans /etc/ssh/sshd_config :
PermitRootLogin yes
Pour redemarrer le service ssh :
/etc/init.d/ssh restart
Pour la machine mandataire, ensuite après avoir reboot on peut faire dans nos machines de services :
iptables -t nat -A POSTROUTING -j MASQUERADE -s 192.168.10.0/24
Mascarade
Sur la mandataire :
iptables -t nat -A PREROUTING -p tcp --dport 2202 -j DNAT --to-destination 192.168.10.3:22
iptables-save
Et on décommente cette ligne dans /etc/sysctl.conf :
net.ipv4.ip_forward=1
Et maintenant nous pouvons nous connecter à notre machine de service en ssh :
#IPV4
ssh root@193.48.57.166 -p 2202
# IPV6
ssh root@2001:660:4401:60a0:216:3eff:fe8b:45ed
DNS
Tout d'abord, il faut modifier /etc/bind/named.conf.local :
zone "archlinuxbtw.lol" {
type master;
file "/etc/bind/myZones/db.archlinuxbtw.lol";
allow-transfer{secondaries;};
notify yes;
};
acl "secondaries"{
192.168.10.2;
2001:660:4401:60a0:216:3eff:fe36:79d9;
};
zone "archlinux.lol" {
type secondary;
file "/etc/bind/backup/db.archlinux.lol";
primaries{2001:660:4401:60a0:216:3eff:fe36:79d9;};
};
J'ai ensuite créée un dossier myZones puis j'ai créer db.archlinuxbtw.lol et j'y ai ajouter :
$TTL 400
@ IN SOA ns.archlinuxbtw.lol admin.archlinuxbtw.lol (
3609 ; Numero de version
21600 ; Rafraichissement (6h)
3600 ; Re-tentative (1h)
2592000 ; Expiration (30j)
86400 ; Cache negatif (24h)
);
IN NS ns.archlinuxbtw.lol.
IN NS ns.archlinux.lol.
@ IN A 193.48.57.166
@ IN AAAA 2001:660:4401:60a0:216:3eff:fe8b:45ed
ns IN A 193.48.57.166
ns IN AAAA 2001:660:4401:60a0:216:3eff:fe8b:45ed
www IN CNAME archlinuxbtw.lol
Ensuite on restart le service via : service named restart
Création d'une clé
openssl req -nodes -newkey rsa:2048 -sha256 -keyout archlinuxbtw.lol.key -out archlinuxbtw.csr
Notre DNS est bien reconnu et la commande dig @8.8.8.8 archlinuxbtw.lol c'est grâce au Glue records.
Génération des clés
Changement nom machine nano /etc/hostname : CachyOS
Et dans /etc/hosts:
127.0.1.1 archlinuxbtw.lol SE4.CachyOS
DNSSEC
Afin de protéger notre DNS contre des possibles attaques nous utiliserons DNSSEC. Ici nous utiliserons la politique DNSSEC : "dnspol"
Ensuite on crée le dossier keys et on donne les droits a bind d'écrire dedans avec :
mkdir /etc/bind/keys
chown bind:bind /etc/bind/keys
chmod 750 /etc/bind/keys
Pour ce faire, dans named.conf.local il faut rajouter les 3 lignes à partir de "key-directory" :
key-directory "/etc/bind/keys";
dnssec-policy "dnspol"; // DNSSEC automatique
inline-signing yes;
[...]
dnssec-policy "dnspol" {
keys {
ksk key-directory lifetime unlimited algorithm 13;
zsk key-directory lifetime unlimited algorithm 13;
};
nsec3param;
};
Pour l'activer, il faut restart bind9 avec systemctl restart bind9
Il ne reste qu'à ajouter la clé KSK sur Gandi et ensite on peut voir s'il fonctionne bien grace au site suivant : https://dnsviz.net
Et on peut voir que nos clefs on bien été générer :
root@CachyOS:/etc/bind# ls keys/
Karchlinuxbtw.lol.+013+24458.key Karchlinuxbtw.lol.+013+56682.key
Karchlinuxbtw.lol.+013+24458.private Karchlinuxbtw.lol.+013+56682.private
Karchlinuxbtw.lol.+013+24458.state Karchlinuxbtw.lol.+013+56682.state
Apache
Dans ce repertoire /etc/apache2/sites-available : touch archlinuxbtw.lol.conf
Je genere un crt via la commande :
openssl x509 -req -days 365 -in archlinuxbtw.csr -signkey archlinuxb
tw.lol.key -out archlinuxbtw.lol.crt
Et je deplace mes fichiers dans :
root@CachyOS:~# mv archlinuxbtw.lol.crt /etc/ssl/certs/
root@CachyOS:~# mv archlinuxbtw.lol.key /etc/ssl/private/
root@CachyOS:~# chmod 600 /etc/ssl/private/archlinuxbtw.lol.key
Utiles
XEN
Liste des VMs allumées :
xen list
Se connecter à la VM :
xen console <nomMachine>
nomMachine : dans notre cas soit SE4.Manjaro | SE4.CachyOS | SE4.LinusTorvalds Sortir de la console xen :
Ctrl + Shift + 5
Eteindre une VM :
xen shutdown <nomMachine>
nomMachine : dans notre cas soit SE4.Manjaro | SE4.CachyOS | SE4.LinusTorvalds Allumer une VM :
xen create /etc/xen/<nomMachine>.cfg