GNS3
Le logiciel GNS3 permet de simuler un environnement en réseaux. De base c’est un outil créer pour l’apprentissage d’émulation des iOS (cisco), avec le temps il est devenu compatible : Qemu, VirtualBox et VMware. La connexion des VMs est donc possible.Dans cet article, nous installons GNS3 sous Debian 8 et la partie serveur sera gérer par GNS3 VM sous VMware Workstation 10. Pour terminer une image QEMU de VyOS-1.1.7 (stocké sur le serveur) sera déployé dans GNS3-GUI et disposera d’une liaison de sortie (WAN) via mon hôte Linux. Installation de GNS3
Nous utilisons les dépôts suivant dans le »source.list » :
nano /etc/apt/sources.list
Nous ajoutons les dépôts qui pointe vers Ubuntu :
deb http://ppa.launchpad.net/gns3/ppa/ubuntu trusty main deb-src http://ppa.launchpad.net/gns3/ppa/ubuntu trusty main
Puis, il suffit d’ajouter la clé du dépôt et de faire une update pour procéder à l’installation de GNS3 :
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys A2E3EF7B apt-get update apt-get install gns3-gui
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances
Lecture des informations d'état... Fait
Les paquets supplémentaires suivants seront installés :
cpulimit dynamips gns3-server ipxe-qemu libaio1 libc-ares2 libfdt1 libiscsi2 libqt5clucene5 libqt5dbus5 libqt5designer5 libqt5gui5 libqt5help5 libqt5network5 libqt5printsupport5
libqt5svg5 libqt5test5 libqt5widgets5 libqt5xml5 librados2 librbd1 libseccomp2 libsmi2ldbl libspice-server1 libtcl8.6 libtk8.6 libvdeplug2 libvncserver0 libwireshark-data libwireshark5
libwiretap4 libwsutil4 libxcb-render-util0 libxen-4.4 libxenstore3.0 python3-pyqt5 python3-pyqt5.qtsvg qemu-kvm qemu-system-arm qemu-system-common qemu-system-x86 qemu-utils seabios
sharutils tcl tcl8.6 tk tk8.6 ubridge vpcs wireshark wireshark-common x11vnc x11vnc-data xvfb
Paquets suggérés :
gns3 snmp-mibs-downloader wireshark-doc python3-pyqt5-dbg samba vde2 sgabios ovmf debootstrap tcl-tclreadline
Les NOUVEAUX paquets suivants seront installés :
cpulimit dynamips gns3-gui gns3-server ipxe-qemu libaio1 libc-ares2 libfdt1 libiscsi2 libqt5clucene5 libqt5dbus5 libqt5designer5 libqt5gui5 libqt5help5 libqt5network5 libqt5printsupport5
libqt5svg5 libqt5test5 libqt5widgets5 libqt5xml5 librados2 librbd1 libseccomp2 libsmi2ldbl libspice-server1 libtcl8.6 libtk8.6 libvdeplug2 libvncserver0 libwireshark-data libwireshark5
libwiretap4 libwsutil4 libxcb-render-util0 libxen-4.4 libxenstore3.0 python3-pyqt5 python3-pyqt5.qtsvg qemu-kvm qemu-system-arm qemu-system-common qemu-system-x86 qemu-utils seabios
sharutils tcl tcl8.6 tk tk8.6 ubridge vpcs wireshark wireshark-common x11vnc x11vnc-data xvfb
0 mis à jour, 56 nouvellement installés, 0 à enlever et 2 non mis à jour.
Il est nécessaire de prendre 52,4 Mo dans les archives.
Après cette opération, 240 Mo d'espace disque supplémentaires seront utilisés.
Souhaitez-vous continuer ? [O/n] O
ATTENTION : les paquets suivants n'ont pas été authentifiés.
vpcs dynamips ubridge gns3-server gns3-gui
Faut-il installer ces paquets sans vérification ? [o/N] o
Lors de l’installation de gns3-gui celui ci installera aussi gns3-server (local par défaut). GNS3 : une entrée dans le menu cinnamon
Dans mon cas j’utilise une Debian 8 desktop, voici comment j’ai créer une entrée dans le menu de cinnamon :
touch /usr/share/applications/gns3.desktop
Les informations de base pour le lancement sont :
[Desktop Entry] Encoding=UTF-8 ffExec=/usr/bin/gns3 Icon=/home/jeremie/Images/ico/gns3.png Type=Application Terminal=false Comment=GNS3 1.5.0 Name=gns3 GenericName=gns3 StartupNotify=false
Redémarrer cinnamon sur la session de votre utilisateur :
cinnamon --replace
Configuration de GNS3-VM sous VMware Workstation
Depuis le menu cinnamon, lancer GNS3 ou bien en terminal utiliser la commande « gns3 » :
GNS3 vous demande de choisir entre deux types de serveur, mais en réalité il en existe trois :
Local GNS3 VM : Un serveur sous forme de VM avec une distribution Ubuntu (virtualbox ou Workstation).
Local Server : Là c’est l’hôte qui joue le rôle de serveur (option par défaut).
Remote Server : Dans ce cas, votre serveur GNS3 est distant (exemple sur un VPS ou une VM exterieur).
Nous sélectionnerons un peu plus tard « Local GNS3 VM », pour le moment voici les étapes à suivre :
Télécharger la template (ova) pour VMware Workstation 1.5 à l’adresse : https://github.com/GNS3/gns3-gui/releases
L’importer dans Workstation en modifiant la carte réseau virtuelle 1 en mode bridge. Ne pas démarrer tout de suite la VM car GNS3 la démarrera à notre place plus tard.
Nous sommes désormais prêt pour continuer l’étape de la configuration rapide en cliquant sur « suivant » :
La configuration des vCPU et de la mémoire est exagérée, je vous invite à les modifier à 2vCPU et 2048 en mémoire.
La prochaine étape consiste donc à éditer GNS3-GUI dans « edition/préférence/ » puis « Server » ou l’on active la sélection de VMware et de la VM GNS3 :
Il faut appliquer les changements, relancer GNS3-GUI et désormais votre GNS3-VM est lancez automatiquement : sur l’écran de console de la VM une IP apparaît (si vous êtes en DHCP).
vous avez désormais la possibilité d’importer certain type d’image depuis l’interface : http://gns3vmIP:3080/upload Comment importer une appliance sous GNS3 ?
Le projet GNS3 à mis à disposition un marketplace qui fournit des pré-configurations d’appliances. Nous importerons donc l’appliance de VyOS en version 1.1.7 qui tourne sous QEMU sur le serveur via GNS3-GUI. Rendez vous sur le lien suivant, et télécharger le fichier de configuration en haut à gauche « Download Template » :
De plus, l’ensemble des fichiers de configuration sont disponible ici. Pour continuer il vous faudra :
Executez GNS3-GUI.
Importez le fichier depuis : Files/import Appliance.
Sélectionner le fichier précédemment télécharger.
Les captures suivantes apparaissent :
Si les éléments sont manquants, utiliser le bouton « Download » qui apparaît en bas à gauche puis :
Une pop-up apparait, elle confirme l’installation de VyOS avec les informations d’installation. Une fois les étapes de confirmation valider voici le résultat :
La template VyOS est accessible directement dans GNS3-GUI depuis le panneau gauche « Routers » :
L’images disque (qcow2) ainsi que l’image ISO est présent dans le répertoire « /opt/gns3/images » de la VM GNS3 et les fichiers du projet sont eux présents dans l’hôte de ma machine « /home/jeremie/GNS3/projects ». Nous sommes donc prêt à créer notre premier projet avec GNS3. Simulation d’un essai dans GNS3 avec VyOS
Nous allons fournir à VyOS l’accès à Internet via un « device » qui prends la forme d’un nuage (Cloud). La passerelle de sortie WAN (cloud) sera reliée à notre routeur VyOS. Le seul pré-requis concerne l’usage d’un Switch entre : le Cloud et notre routeur VyOS. Attention il ne peut pas être relié en directe pour une contrainte lié à QEMU.
Voici la marche à suivre :
Ajouter le Cloud et le modifier, clique droit « configure » puis ajouter la carte eth0 :
Une fois fait, ajouter un switch ethernet dans la section « switch »
Puis, déployer un ou deux routeurs VyOS.
Interconnecter l’ensemble à froid comme cela :
Il suffit ensuite de configurer vos Routeurs pour sortir vers le WAN de notre hôte. Nous avons réaliser l’installation et la configuration de GNS3, il existe aussi le déploiement dit « remote » sur un serveur distant que je souhaite prochainement utiliser en le sécurisant avec la liaison VPN ou bien avec SSL.