Paul Jusot

Portfolio développeur

Réseaux TCP/IP

Visualisation des couches du modèle OSI - TCP/IP

Le logiciel Wireshark capture les trames, c'est-à-dire les paquets de la couche ethernet, passant sur le réseau local dans lequel nous nous situons, y compris celles ne passant pas par notre ordinateur. Dans le modèle OSI, la couche externe est la couche ethernet, c'est la première après le cable. Nous allons donc pouvoir intercepter toutes les données passant sur le réseau en ouvrant les couches une par une comme des poupées russes.

La fenêtre comporte 3 zones de haut en bas. La 1ère représente les trames, la seconde le 2de de la trame sélectionnée et la 3è le code correspondant aux informations présente dans la 2è zone.

Nous avons en classe analysé les échanges de paquets intervenant dans une requête ARP, ici une REQUEST qui utilise un broadcast comme adresse MAC de destination. Wireshark permet donc d'observer le fonctionnement des protocoles réseau à la condition de capturer les bonnes trames et de savoir lire leur contenu.

Un réseau et des services avec PacketTracer

PacketTracer est un simulateur de réseau. Nous l'avons utilisé pour créer un réseau contenant des postes de travail et des serveurs autour d'un switch.

Les trois serveurs sont configurés pour remplir un rôle et il est possible de le vérifier avec en accédant à une invite de commande et même à un navigateur disponible pour les postes de travail:

  • les triangles verts indiquent que les cartes réseau ont reçu une réponse à leur requête ARP et que la communication est possible.
  • les IPs des postes de travail sont dynamiques et attribuées par le serveur DHCP.
  • les serveurs sont joignables par leurs noms grâce au serveur DNS dont l'IP est obtenu au retour des requêtes DHCP.
  • un petit site web est visitable (en indiquant son IP ou son nom) sur le serveur HTTP.

Il existe aussi un mode simulation qui permet de visualiser au ralentit le parcourt d'une trame sur le réseau lors d'un ping.

Noter que PacketTracer permet d'aller plus loin et de créer des routeurs, des Vlans et aussi d'utiliser l'ensemble des commandes disponibles dans la console d'un switch ou d'un routeur Cisco.

Console d'un switch

Un switch est une sorte de concentrateur (hub) intelligent qui est capable de lire les trames ethernet des paquets arrivant et de les envoyer à la bonne machine sur un réseau en utilisant sa propre table ARP. Le configurer n'est dans l'absolu pas nécéssaire à son fonctionnement, c'est pourtant une pratique largement répandue. Nous souhaitons en effet pouvoir en sécuriser l'accès, pouvoir le configurer à distance avec SSH et surtout créer des Vlans.

Mot de passe chiffré, telnet et connexion chiffrée avec SSH

Ce TP a été l'occasion d'y taper de nombreuses commandes. Nous avons d'abord créé un utilisateur et crypté son mot de passe avant de trouver sur internet un outil capable de le casser facilement parce que l'algorithme WEAK utilisé a été cassé depuis des années.
https://www.frameip.com/decrypter-dechiffrer-cracker-password-cisco-7/

Nous avons ensuite utilisé telnet à la place du cable sur le connecteur série avant de "sniffer" le mot de passe en clair du compte utilisateur du switch avec Wireshark.

Pour finir, nous avons créé une paire de clés RSA et utilisé SSH à la place de telnet. SSH chiffre toute la couche application avant tout échange de données (donc de codes de connexion) au moyen d'un chiffrement asymétrique.

Création de VLANs

Les Vlans sont une fonctionnalité des switch qui consiste à regrouper les ports dans des groupes. Des machines connectées au switch par des ports de groupes différents ne peuvent donc pas communiquer entre elles (pour bien faire, on donnera aux machines des IP relatives à des sous-réseaux différents).

Les trames sont marquées (tag) par le numéro du Vlan qui est utile lorsque plusieurs switch sont associés en mode "trunk".
On choisit donc un ou plusieurs ports, on le met en mode access (et non en mode trunk) et on l'associe à un Vlan.

Switch>en
Switch#conf t
Enter configuration commands, one per line. End with CNTL/Z.
Switch(config)#int fastEthernet 0/1
Switch(config-if)#switchport mode access
Switch(config-if)#switchport access vlan 100
% Access VLAN does not exist. Creating vlan 100
Switch(config-if)#int fastEthernet 0/2
Switch(config-if)#switchport mode access
Switch(config-if)#switchport access vlan 200
% Access VLAN does not exist. Creating vlan 200