Aller au contenu principal

Installation des VMs

Les deux VMs sont installées avec Ubuntu Desktop 22.04. Les scripts QEMU créent un disque qcow2 par rôle et attachent deux cartes réseau à chaque VM.

Ressources QEMU

Chaque VM est lancée avec:

RAM: 4096 MiB
CPU: 2 vCPU
Disque: 20G qcow2
Affichage: GTK
Carte projet: e1000 sur TAP
Carte WAN: e1000 sur QEMU user networking

Disques:

images/attacker.qcow2
images/victim.qcow2

Ubuntu Desktop est utilisé volontairement. Une version serveur aurait demandé plus de travail pour la session graphique, les screenshots, les raccourcis et la page victime.

Identité recommandée

Utiliser les valeurs suivantes pendant l'installation graphique:

VM attaquante
hostname: wlkom-attacker
username: user
password: user

VM victime
hostname: wlkom-victim
username: user
password: user

Le nom d'utilisateur user simplifie les chemins générés par les scripts, mais les scripts essaient aussi de s'adapter à $USER et $SUDO_USER.

Lancement de l'installation

Si les disques n'existent pas, scripts/start-vm.sh passe automatiquement en mode installateur:

./scripts/run-vm-setup.sh

Commande équivalente par VM:

./scripts/start-vm.sh attacker
./scripts/start-vm.sh victim

Une fois Ubuntu installé, éteindre la VM depuis l'installateur, puis la redémarrer en mode normal:

./scripts/start-attacker.sh
./scripts/start-victim.sh

Réseau dans les VMs

Chaque VM a deux interfaces QEMU. Les adresses fixes ne sont pas configurées pendant l'installation Ubuntu, mais par les scripts setup-attacker.sh et setup-victim.sh.

VMMAC projetIP projet
Attaquant52:54:00:12:34:56192.168.100.1/24
Victime52:54:00:22:34:56192.168.100.2/24

Les scripts ciblent les interfaces par MAC, pas par nom Linux. C'est important parce que les noms comme ens3 ou enp0s3 peuvent changer selon l'ordre de détection.

Commandes de setup dans les VMs

Dans l'attaquant:

wget -qO- http://10.0.2.2:8000/setup-attacker.sh | bash

Dans la victime:

wget -qO- http://10.0.2.2:8000/setup-victim.sh | bash

Si wget échoue:

ip route
curl -I http://10.0.2.2:8000/setup-attacker.sh

Puis vérifier côté host que le serveur tourne:

./scripts/serve-host.sh

Noyau après setup

Les deux scripts installent et sélectionnent:

5.15.0-171-generic

Si le noyau courant n'est pas encore le bon, le script demande un reboot. Après reboot:

uname -r

Résultat attendu:

5.15.0-171-generic

Pour plus de détails sur le choix du noyau, lisez Choix du noyau.

Pourquoi ne pas tout automatiser?

Une installation avec autoinstall Ubuntu était prévue au début. Pendant les tests sur plusieurs machines, elle s'est révélée lente et fragile. L'installation graphique est moins élégante sur le papier, mais elle permet de voir directement si la VM démarre, si l'affichage fonctionne et si le réseau de base répond.

On a donc gardé l'installation graphique pour éviter une source de panne supplémentaire. Le projet contient déjà assez de détails kernel pour ne pas ajouter une bataille avec autoinstall.

Pour comprendre pourquoi les deux VMs doivent rester sur le même noyau, lire Choix du noyau et Références techniques.