Introduction
Je vous propose un guide pratique pour la mise en place d’un laboratoire systèmes & réseaux personnel, léger, virtuel et open source, basé sur VirtualBox. Cet hyperviseur de niveau 2 est une solution reconnue, fiable et maintenue pour la virtualisation de systèmes.
Ce guide se veut aussi complet, précis et universel que possible, sans trop charger de détails inutiles. Il est revérifié régulièrement au gré des mises à jour des différentes solutions utilisées.
Prérequis
Pour réaliser avec succès tous ces travaux, il faut disposer d’un ordinateur équipé au minimum d’un processeur x64 (Intel ou AMD) avec 4 cœurs physiques, 8 Gio de RAM (16 étant plus confortable), un stockage de type SSD avec au minimum 100 Gio libres et une interface réseau connectée à Internet, de préférence filaire. Sur cet ordinateur hôte, qui n’est pas dédié à ce rôle d’hyperviseur, le système d’exploitation sera probablement MS Windows 10 ou 11. On essaiera d’avoir une installation la plus « propre » possible. Pour plus d’infos à ce sujet, rendez-vous à la fin de ce premier article. VirtualBox est également disponible pour les autres OS courants (distributions GNU/Linux et Mac OS X)
Présentation du labo virtuel
Notre objectif est donc de mettre en œuvre un environnement de travail (labo) virtuel de base pour expérimenter diverses configurations systèmes & réseaux.
Il a été conçu pour demander de moins de ressources possibles, afin d’être déployé sur un PC standard à partir de solutions open source. Pour cela on va s’appuyer sur :
- L’hyperviseur de niveau 2 VirtualBox
- La solution pfSense® pour le cœur de réseau (interface WAN / LAN)
- Debian GNU/Linux pour les systèmes (un serveur en mode console et un client en mode GUI (Interface Graphique pour l’Utilisateur).
Voici le schéma logique du labo virtuel que nous aurons mis en place à la fin de ce guide :
Versions
Elément | Version |
---|---|
OS hôte | Microsoft Windows 11 Professionnel Version 23H2 |
VirtualBox | 7.0.12 |
pfSense | 2.7.2 |
Debian Linux | 12 (BookWorm) |
XFCE | 4.16 |
VirtualBox : l’hyperviseur
Téléchargement et installation
VirtualBox est un logiciel hyperviseur de niveau 2, libre et gratuit, il existe pour les environnements MS Windows, Mac OS X et GNU/Linux notamment.
Rendez-vous sur : https://www.virtualbox.org/ :
Après le téléchargement propre à votre environnement, procéder à l’installation avec les options par défaut proposées.
VirtualBox Extension Pack (optionnel)
Télécharger également le pack d’extensions, qu’il faut lancer après avoir terminé l’installation de VirtualBox ; il apporte des fonctionnalités diverses qui peuvent servir dans certains cas, mais que nous n’utiliserons pas dans la suite de nos travaux.
Personnalisation de VirtualBox
Il peut être intéressant de personnaliser certains paramètres de VirtualBox en fonction de vos habitudes ou environnement. Voici deux exemples importants :
Touche « hôte »
La touche hôte permet de redonner la main à la machine hôte lorsque le clavier et/ou la souris sont « capturés » par la machine virtuelle. Par défaut c’est la touche Ctrl droite du clavier, mais si votre clavier n’a pas cette touche ou encore si vous êtes habitués au couple Ctrl + Alt de VMWare, on peut modifier ; appuyer sur Ctrl+G ou depuis le menu « fichier », cliquer sur « paramètres », puis sur l’onglet « entrée » :
Emplacement par défaut
Autre élément intéressant, l’emplacement par défaut pour enregistrer les fichiers (machines et disques virtuels) ; cette option vous permet de stocker ces fichiers qui peuvent être volumineux sur un emplacement secondaire de votre machine hôte. Il est recommandé toutefois que cet emplacement soit rapide (de type SSD notamment).
Toujours dans les paramètres :
Pourquoi préférer Oracle VirtualBox à VMWare Workstation ?
Voilà une question qui revient souvent quand il s’agit de choisir un environnement de virtualisation sur PC personnel. VirtualBox n’est pas forcément une préférence, c’est ici un choix orienté vers les solutions open source. Il y a des raisons pour préférer parfois VMWare Workstation à VirtualBox (meilleure gestion de la virtualisation imbriquée et des réseaux privés hôte, meilleure stabilité graphique, …). VirtualBox intègre en revanche des fonctionnalités de snapshot et de clonage, qui ne sont disponibles que dans les versions payantes de VMWare Workstation.
Trucs, astuces, limites et problèmes connus
Activer les fonctionnalités de virtualisation du processeur
Les processeurs actuels de la famille x86/x64, Intel ou AMD, intègre un jeu d’instructions complémentaire pour optimiser le fonctionnement de la virtualisation sur le système d’exploitation. Ces fonctionnalités s’appellent VT-x ou AMD-v et doivent être activées dans le micrologiciel du PC (BIOS / EFI). En général, elles le sont par défaut, mais il convient de vérifier au besoin (les hyperviseurs signalent en général assez clairement quand ces fonctions ne sont pas activées).
Activer la virtualisation imbriquée sous VirtualBox
Par défaut la virtualisation imbriquée (« nested virtualization ») n’est pas active sous VB. Si l’on souhaite réaliser une VM capable elle-même de réaliser de la virtualisation, l’option existe mais elle n’est pas accessible :
Pour l’activer, il faut utiliser la ligne de commande Windows :
> cd 'C:\Program Files\Oracle\VirtualBox'
> ./vboxmanage.exe list vms
…
"nom_de_la_VM" {xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}
…
> ./vboxmanage.exe modifyvm "nom_de_la_VM" --nested-hw-virt on
NB : la ligne de commande Windows n’est pas sensible à la casse, mais VirtualBox l’est : respecter la casse pour le nom de la VM.
Et ainsi, l’option « Activer VT-x/AMD-V imbriqué » est est désormais activée pour la VM :
Notons que la virtualisation imbriquée est un « montage » délicat. Depuis quelque temps, installer ProxMoxVE sous VB fonctionne, mais les VM créées sous PVE ne fonctionnent pas (c’est peut-être un bug temporaire). De même, l’installation de VMWare ESXi ne fonctionne pas, et mes derniers essais avec MS Hyper-V ont été plutôt décevants…
Les VM créées sous VirtualBox se plantent au démarrage
Après une installation réussie, certaines VM après le démarrage se plantent avec des messages d’erreur système assez « dramatiques » : kernel panic et autres. Il y a plusieurs choses à faires :
1 – désactiver les fonctionnalités de virtualisation de Windows
Tapez la touche Windows + R, puis appwiz.cpl et Entrée (ceci lance le panneau de configuration, section « programmes et fonctionnalités »)
Cliquer sur « activer ou désactiver des fonctionnalités Windows » :
Dans la liste, décocher ces fonctionnalités si elles sont actives :
- hyperV
- plateforme de l’hyperviseur Windows
- plateforme de machine virtuelle
- sous-système linux
2 – désactiver l’isolation du noyau (core isolation)
Cette fonctionnalité de sécurité Windows assez récente empêche la plupart du temps VirtualBox de fonctionner correctement.
Rechercher « isolation du noyau » dans la barre de recherche de Windows, et désactiver l’option :
Et ensuite ?
Rendez-vous maintenant au prochain article pour l’installation de la première VM de notre labo : pfSense.