Customize

[Culture] Virtualisation et machine virtuelle + Liens pour aller plus loin

Discussion in 'Tutoriels' started by Menthe, Oct 9, 2013.

  1. Menthe Moderator

    Définition & Principe
    L'une des couches potentielles de sécurité est de simuler la réalité d'un PC : on appelle cela virtualisation. Sous ces termes barbares se cachent en réalité une réplication de ressources réelles par l'informatique. Expliquer cela peut paraître complexe, en réalité imaginez un miroir dans lequel vous projetez le faisceau lumineux d'une lampe torche, ou encore un son qui émane d'une enceinte, et qui passe par votre oreille. La virtualisation, c'est un peu de cela. Elle a ses avantages, et ses inconvénients car elle ne peut avoir la puissance de feu d'une machine physique (réelle) à 100%.
    La virtualisation consiste à faire tourner un ordinateur « virtuel » dans votre ordinateur, cela vous permet de lancer Linux à l'intérieur d'une fenêtre Windows ou Windows à l'intérieur d'une fenêtre Linux, ou encore Linux dans une fenêtre Linux. Dans cet exemple, l'avantage de cette technique est que Linux sera « isolé » dans la machine virtuelle : il ne va pas altérer le bon fonctionnement de Windows (Ouf pour ceux qui ont encore peur de tester Linux et de se lancer dans l'open source).
    Au sens large, la virtualisation consiste à simuler l'existence de plusieurs machines informatiques en utilisant une seule, ce qui permet de diminuer les coûts d'achat de matériel.
    Une machine virtuelle (Virtual Machine ou VM) est une illusion d'un appareil informatique créée par un logiciel d'émulation. Le logiciel d'émulation simule la présence de ressources matérielles et logicielles telles que la mémoire, le processeur, le disque dur, voire le système d'exploitation et les pilotes, permettant d'exécuter des programmes dans les mêmes conditions que celles de la machine simulée. Les machines virtuelles peuvent être utilisées pour exploiter des logiciels d'une machine qui n'existe plus dans le commerce (ordinateur, console de jeu, assistant personnel, ...), pour cacher la machine simulatrice et simuler une machine fictive. Elles sont également utilisées pour exploiter une machine unique comme s'il y en avait plusieurs (virtualisation). Les avantages de la virtualisation en terme de sécurité, de flexibilité et de portabilité en font un allié de choix dans les domaines du test logiciel, du développement et du support utilisateur.
    Replaçons le concept dans la perspective de sécurité qui nous est si chère : votre surf est analysé dans les moindres détails par l'intégralité des sites que vous visitez -c'est ainsi qu'ils gagnent de l'argent-. Vous utilisez comme 99% des utilisateurs Windows ou bien Mac comme système opérateur de votre ordinateur. Vous avez décidé que votre besoin d'intimité vous dictait de ne pas en faire part à toute l'industrie des majors et d'internet ? L'une des solutions est là : un "iso", c'est à dire une image d'un OS quelconque (une distribution Linux, ou autre), un émulateur de machine virtuel, 10 minutes de configuration, et c'est prêt. Vous allez faire croire à tout le monde que vous naviguez avec Linux en utilisant Firefox comme navigateur, alors qu'en réalité votre OS est Windows et votre navigateur est (tristement) Internet Explorer.

    Acteurs Principaux
    VM Ware Player & Virtual Box sont les plus connus des logiciels de virtualisation, mais de nombreux autres acteurs sont disponibles sur Internet de façon ouverte et gratuite: KVM, QEMU, VirtualPC, Xen & autres Bochs sont autant d'outils à votre disposition.

    Cas Pratique Subjectif
    Nous allons prendre comme émulateur VMware Player, qui est un logiciel gratuit qui permet aux utilisateurs de PC d'utiliser des machines virtuelles. VMware crée un environnement clos dans lequel sont disponibles un, deux, quatre ou huit (vSphere) processeur(s), des périphériques et un BIOS virtuel. Selon ses concepteurs, le microprocesseur n'est émulé que quand c'est nécessaire, c’est-à-dire quand la machine virtuelle tourne en mode noyau ou en mode réel. Par ailleurs, cela permet à VMware d'être assez rapide.
    Lorsqu'une VM s'exécute dans un mode qui nécessite une émulation, VMware traduit dynamiquement le code privilégié en un code équivalent en mode utilisateur, le place dans un endroit libre de la mémoire, le rend invisible et inaccessible au code d'origine et l'exécute à la place. Lorsqu'une machine virtuelle fait appel à un périphérique, VMware intercepte la demande et la traduit pour qu'elle soit gérée par le système hôte. Bien que les machines virtuelles tournent en mode utilisateur, VMware nécessite d'installer plusieurs pilotes de périphériques privilégiés dans le noyau du système hôte, qui notamment interchangent les tables GDT et IDT chaque fois qu'on passe la main à une VM.
    VMware assure l'émulation de la carte vidéo, la carte réseau, le lecteur de CD-ROM, le bus USB, des ports série et parallèle et du disque dur de type SCSI ou IDE. Mais laissons là ces termes techniques et barbants.
    Il permet la création d'une ou plusieurs machines virtuelles au sein d'un même système d'exploitation, ceux-ci pouvant être reliés au réseau local avec une adresse IP différente, tout en étant sur la même machine physique (la machine existant réellement). Il est possible de faire fonctionner plusieurs machines virtuelles en même temps, la limite correspondant aux performances de l'ordinateur hôte. La version Linux présente l'avantage de pouvoir sauvegarder les fichiers de la machine virtuelle (*.vmsd) pendant son fonctionnement.

    Installation optimale & complémentarité
    Une fois votre Iso sélectionné, et la machine installée, il vous faudra ajouter certains "add ons" pour plus de fluidité de la VM : admettons que vous avez choisi d'installer Ubuntu dans une machine virtuelle : tout marche bien, mais vous pourriez même améliorer votre système en installant des "pilotes" complémentaires pour améliorer ses performances. Ubuntu n'a pour le moment pas « conscience » qu'il s'agit d'une machine virtuelle. Il s'exécute comme il le ferait sur une vraie machine. Le rôle des additions est de modifier légèrement Ubuntu pour qu'il prenne conscience qu'il est dans une machine virtuelle, ce qui aura pour effet d’améliorer son fonctionnement.
    Parmi les améliorations apportées par cette modification, on note :
    * de meilleures performances graphiques : le déplacement des fenêtres et les animations seront plus fluides ;
    * un meilleur suivi de la souris : la souris réagira de façon plus naturelle
    * un accès à de plus grandes résolutions, capables de suivre en temps réel la taille de la fenêtre de VirtualBox si vous la redimensionnez ou si vous l'affichez en plein écran (avec Ctrl Droite + F) ;
    * le partage du presse-papier entre Windows et Linux. Vous pourrez copier du texte dans Linux et le coller dans Windows, et vice-versa !
    * les répertoires partagés : vous pouvez faire en sorte qu'un répertoire de Windows apparaisse aussi sous Linux dans la machine virtuelle. Tous les changements dans ce dossier seront immédiatement répercutés sur les deux systèmes.
    Pour installer ces additions, rendez-vous dans le menu Périphériques
    → Installer les Additions invité. Vous pouvez aussi faire la combinaison de touches Ctrl Droite + D. Cela provoque l'insertion d'un CD virtuel dans la machine. Vous pouvez accéder au contenu du CD en ouvrant le menu Raccourcis d'Ubuntu.
    → Une fenêtre affichant les fichiers du CD apparaît : double-cliquez sur autorun.sh . Cliquez sur « Lancer dans un terminal » lorsqu'on vous demande ce que vous souhaitez faire.
    → Vous devrez à nouveau indiquer votre mot de passe par mesure de sécurité. Une console s'ouvre et les additions s'installent dans Ubuntu. Patientez jusqu'à ce que l'on vous demande d'appuyer sur Entrée pour fermer la fenêtre.

    Pour aller plus loin
    Un excellent site de vulgarisation informatique que nous vous recommandons:
    http://www.siteduzero.com/informatique/tutoriels/reprenez-le-controle-a-l-aide-de-linux/installer-virtualbox
    http://www.siteduzero.com/informatique/tutoriels/reprenez-le-controle-a-l-aide-de-linux/creer-une-nouvelle-machine-virtuelle
    http://www.siteduzero.com/informatique/tutoriels/reprenez-le-controle-a-l-aide-de-linux/lancer-la-machine-virtuelle

Share This Page

Customize Theme Colors

Close

Choose a color via Color picker or click the predefined style names!

Primary Color :

Secondary Color :
Predefined Skins