Cette page explique la procédure pour créer une machine virtuelle dans ipfire. Ne pas oublier d’installer le paquet qemu avec pakfire.
Mise à jour le 23 aout 2016.
Je déplace mes fichiers de configuration sur github.com.
Mise à jour le 29 octobre 2016.
Avec l’aide d’un plugin faisant le liens entre SynthaxHighLighter et pastacode, je réaffiche les scripts.
Ajout du drivers virtio pour le disque dur virtuel.
1/ Création de la carte réseau virtuelle tuntap en orange0
Copier le script dans le repertoire /etc/init.d, il sert à créer la carte réseau pour notre machine virtuelle
Le script est téléchargeable ici.
Donner les droits d’exécution, établir les liens symboliques pour le boot, lancer le script et setup pour attribuer la carte virtuelle à la zone orange.
chmod +x /etc/init.d/tap ln -s /etc/init.d/tap /etc/rc.d/rc3.d/S17tap ln -s /etc/init.d/tap /etc/rc.d/rc0.d/K84tap ln -s /etc/init.d/tap /etc/rc.d/rc6.d/K84tap /etc/init.d/tap start setup
2/ Création de(s) bridge(s) en vue du raccordement d’une machine virtuelle
Copier le script dans le répertoire /etc/init.d, il sert à créer un pont réseau. Le script lit les lignes d’un fichier et créée le pont si la variable portant le nom de la carte est à yes.
Le script est téléchargeable ici.
Créer le fichier de configuration des bridges, donner le droits d’exécution du script, établir les liens symboliques pour le boot et lancer le script pour créer le bridge.
cat << EOF > /etc/default/bridge orange=yes EOF chmod +x /etc/init.d/bridge ln -s /etc/init.d/bridge /etc/rc.d/rc3.d/S21bridge ln -s /etc/init.d/bridge /etc/rc.d/rc0.d/K83bridge ln -s /etc/init.d/bridge /etc/rc.d/rc6.d/K83bridge /etc/init.d/bridge start
3/ Création d’une machine virtuelle
Copier le script dans le répertoire /etc/init.d, il sert à créer si besoin le disque dur virtuel et boot dans la foulé sur une iso (à spécifier dans le script), si l’image disque existe déjà, la machine y boot.
Le script est téléchargeable ici.
Créer le fichier d’attribution des bridges, donner le droits d’exécution du script, établir les liens symboliques pour le boot et lancer le script pour créer le bridge.
chmod +x /etc/init.d/vhost ln -s /etc/init.d/vhost /etc/rc.d/rc3.d/S99vhost ln -s /etc/init.d/vhost /etc/rc.d/rc0.d/K01vhost ln -s /etc/init.d/vhost /etc/rc.d/rc6.d/K01vhost
Il est nécessaire de créer un fichier .vhost par machine virtuelle dans le répertoire /etc/vhost/ pour que le script lance une nouvelle virtualisation.
mkdir /etc/vhost cat << EOF > /etc/vhost/une_machine.vhost INDEX=1 RAM=512M DISK=/PATH/TO/IMG/XXX.img SIZE=10G MAC_TAP="01:AA:01:AA:01:AB" MAC_NET="01:AA:01:AA:01:AA" ISO=/PATH/TO/ISO EOF /etc/init.d/vhost start une_machine
Pour que la machine virtuelle puisse communiquer, il ne reste plus qu’à lui attribuer une adresses IP de même réseau.
Pour que la machine virtuelle s’éteigne correctement, il manque un script perl (grand merci à hadfl du forum d’Ipfire).
Le script est téléchargeable ici.
4/ Redirection des ports de red0 vers orange0
Surtout, ne pas ajouter d’autres règles comme ACCEPT en entrée sur red, seul une redirection NAT est nécessaire pour accéder à la machine virtuelle dans la DMZ orange. Remplir le formulaire comme ci-dessous.