* ESIL TP réseau n 2 Réseaux *



Documents pareils
TP2 - Conguration réseau et commandes utiles. 1 Généralités. 2 Conguration de la machine. 2.1 Commande hostname

L3 informatique Réseaux : Configuration d une interface réseau

NOTE D'APPLICATION CONCERNANT LA MISE EN SERVICE DE MATERIELS SUR RESEAU IP

Présentation du modèle OSI(Open Systems Interconnection)

Capture, Filtrage et Analyse de trames ETHERNET avec le logiciel Wireshark. Etape 1 : Lancement des machines virtuelles VMWARE et de Wireshark

GENERALITES. COURS TCP/IP Niveau 1

Installation de Windows 2003 Serveur

TP 1 : LES COMMANDES RESEAUX Matière: RESEAUX LOCAUX

Université Pierre Mendès France U.F.R. Sciences de l Homme et de la Société Master IC²A. TP réseau firewall

DIFF AVANCÉE. Samy.

But de cette présentation

SYSTEME DE GESTION DES ENERGIES EWTS EMBEDDED WIRELESS TELEMETRY SYSTEM

L exemple d un serveur Proxy sous Windows NT 4 SERVER MICROSOFT PROXY SERVER 2 Installation et configuration Auteur : Eliane Bouillaux SERIA5

SOMMAIRE : CONFIGURATION RESEAU SOUS WINDOWS... 2 INSTRUCTIONS DE TEST DE CONNECTIVITE... 5

TP c Fonctions des listes de contrôle d'accès multiples (TP avancé)

Installation de Windows 2000 Serveur

TP : Introduction à TCP/IP sous UNIX

II/ Le modèle OSI II.1/ Présentation du modèle OSI(Open Systems Interconnection)

Assistance à distance sous Windows

TP Sur SSH. I. Introduction à SSH. I.1. Putty

Introduction. Adresses

1/ Introduction. 2/ Schéma du réseau

TAGREROUT Seyf Allah TMRIM

L annuaire et le Service DNS

Sécurité des réseaux Les attaques

COMMANDES RÉSEAUX TCP/IP WINDOWS.

TP Linux : Firewall. Conditions de réalisation : travail en binôme. Fonctionnement du parefeu Netfilter. I Qu est ce qu'un firewall?

FreeNAS Shere. Par THOREZ Nicolas

Activité 1 : Création et Clonage d'une première machine virtuelle Linux OpenSuSE.

Protocoles réseaux. Abréviation de Binary Digit. C'est la plus petite unité d'information (0, 1).

Microsoft Windows NT Server

Configuration réseau Basique

Nmap (Network Mapper) Outil d exploration réseau et scanneur de ports/sécurité

CONFIGURATION IP. HESTIA FRANCE S.A.S 2, rue du Zécart TEMPLEUVE +33 (0) (0) Site internet:

WINDOWS NT 2000: Travaux Pratiques. -Boîtier partage d'imprimante- Michel Cabaré Janvier 2002 ver 1.0

I. Adresse IP et nom DNS

UltraVNC, UltraVNC SC réglages et configurations

Résolution des problèmes de connexion XDMCP aux hôtes UNIX et Linux

BIND : installer un serveur DNS

Installation d'un serveur DHCP sous Windows 2000 Serveur

WEBMESTRE : CONCEPTION DE SITES ET ADMINISTRATION DE SERVEURS WEB

ETI/Domo. Français. ETI-Domo Config FR

Les possibilités de paramétrage réseau des logiciels de virtualisation sont les suivantes quant à la connexion réseau :

TP : STATION BLANI 2000 SIMULATION DU RESEAU INFORMATIQUE

UFR de Mathématiques et Informatique Année 2009/2010. Réseaux Locaux TP 04 : ICMP, ARP, IP

Configurez votre Neufbox Evolution

Travaux pratiques : dépannage de la configuration et du placement des listes de contrôle d'accès Topologie

laissez le service en démarrage automatique. Carte de performance WMI Manuel Désactivé Vous pouvez désactiver ce service.

Protocoles DHCP et DNS

Module 1 : Introduction à TCP/IP

Configurer ma Livebox Pro pour utiliser un serveur VPN

Couche application. La couche application est la plus élevée du modèle de référence.

Figure 1a. Réseau intranet avec pare feu et NAT.

Installation d un serveur DHCP sous Gnu/Linux

Mr. B. Benaissa. Centre universitaire Nâama LOGO

2. MAQUETTAGE DES SOLUTIONS CONSTRUCTIVES. 2.2 Architecture fonctionnelle d un système communicant.

COMMENT AUTORISER LES PARTAGES RESEAUX ET IMPRIMANTE SOUS L ANTIVIRUS FIREWALL V3

KAJOUT WASSIM INTERNET INFORMATION SERVICES (IIS) 01/03/2013. Compte-rendu sur ISS KAJOUT Wassim

Formateurs : Jackie DAÖN Franck DUBOIS Médiapôle de Guyancourt

Installation de la messagerie EMWAC IMS Sur Windows NT4 serveur ou Windows 2000 serveur

Administration Réseau sous Ubuntu SERVER Serveur DHCP

TP DNS Utilisation de BIND sous LINUX

1 Configuration réseau des PC de la salle TP

Le service FTP. M.BOUABID, Page 1 sur 5

TP 3 Réseaux : Subnetting IP et Firewall

Fonctionnement de Iptables. Exercices sécurité. Exercice 1

Bind, le serveur de noms sous Linux

Réseaux CPL par la pratique

Cisco Certified Network Associate

Cours admin 200x serveur : DNS et Netbios

Partie II PRATIQUE DES CPL

DHCP et NAT. Cyril Rabat Master 2 ASR - Info Architecture des réseaux d entreprise

Internet Protocol. «La couche IP du réseau Internet»

Administration UNIX. Le réseau

Protocoles IP (2/2) M. Berthet. Les illustrations sont tirées de l ouvrage de Guy Pujolle, Cours réseaux et Télécom Contributions : S Lohier

Les réseaux informatiques

Live box et Nas Synology

Packet Tracer : configuration des listes de contrôle d'accès étendues, scénario 1

Dynamic Host Configuration Protocol

Transmission de données

Procédure d utilisation et de paramétrage (filtrage) avec IPFIRE

LAB : Schéma. Compagnie C / /24 NETASQ

Un peu de vocabulaire

Contrôle de la DreamBox à travers un canal SSH

Installer une imprimante réseau.

L accès à distance du serveur

Principes de DHCP. Le mécanisme de délivrance d'une adresse IP à un client DHCP s'effectue en 4 étapes : COMMUTATEUR 1. DHCP DISCOVER 2.

RX3041. Guide d'installation rapide

acpro SEN TR firewall IPTABLES

LANDPARK NETWORK IP LANDPARK NETWORK IP VOUS PERMET D'INVENTORIER FACILEMENT VOS POSTES EN RÉSEAU

Rappels réseaux TCP/IP

MANUEL D'INSTALLATION

IP & Co. 1. Service DHCP. L'objectif de ce TP est de voir l'ensemble des services élémentaires mis en oeuvre dans les réseaux IP.

Travaux pratiques Configuration d une carte réseau pour qu elle utilise DHCP dans Windows Vista

Domain Name System. F. Nolot

Introduction au DNS. Les noms de domaine s'écrivent de la gauche vers la droite, en remontant vers la racine et sont séparés par un "." (point).

TCP/IP, NAT/PAT et Firewall

Serveurs de noms Protocoles HTTP et FTP

TER Réseau : Routeur Linux 2 Responsable : Anthony Busson

2010 Ing. Punzenberger COPA-DATA GmbH. Tous droits réservés.

Transcription:

Pour ce TP, nous allons utiliser un poste Windows et un shell Linux sur un serveur de l'école. Connectez vous donc sur un PC sous Windows et ouvrez une session SHH sur votre serveur préféré avec Putty. Exercice 1 : Commande arp La commande permettant de consulter ou de modifier le cache ARP, sous Unix (Linux) et Windows, est arp. 1.1. Cache ARP sous Unix La commande arp sous unix est généralement située dans le répertoire /sbin ou /usr/sbin. remarque : la commande whereis sous Unix (Linux) permet en générale de trouver le PATH de la commande recherchée. Si necessaire, vous pouvez modifier votre PATH en tapant : setenv PATH ${PATH}:/sbin Consulter le manuel en ligne Linux de arp (par man arp) pour indiquer les lignes de commandes permettant : 1. d'obtenir la liste de toutes les associations présentes dans le cache ARP de votre machine? 2. d'obtenir la même chose qu'en 1) mais où les adresses IP des machines apparaissent à la place de leurs noms? 3. d'obtenir l'adresse physique d'une machine non présente dans le cache? 4. de rajouter l'association (172.16.5.51, 08:00:69:04:dd:e8) dans un cache ARP? 5. de supprimer cette association? Remarque : cette commande vous permet de découvrir l'existence d'un certains nombre de machine sur le réseau. 1.2. Cache ARP sous Windows Ouvrir une fenêtre MS-DOS (l'interpréteur de commandes Windows) soit par le Menu Démarrer => Exécuter => Taper cmd et Entrée ou par Menu Démarrer => Programmes => Invite de Commandes. Consulter l'aide de arp sous Windows en tapant arp /?. Remarque : Il est peut être utile d'augmenter la mémoire de la fenêtre MS-DOS et avoir un ascenseur pour voir le début de l'affichage des commandes. Pour cela, effectuer un clic droit sur la barre du haut de la fenêtre MS-DOS puis sélectionner Propriétés. Dans l'onglet Disposition (onglet Configuration sur Windows XP), on peut spécifier le nombre de lignes de la fenêtre en modifiant le champ Hauteur de la taille de la zone de mémoire tampon écran (mettre environ 200 lignes). Quelle est la commande MS-DOS permettant d'obtenir la liste de toutes les associations présentes dans le cache ARP de votre PC? Remarque : sous Windows, le chemin menant aux commandes réseau est déjà dans le PATH (qui est une variable existant aussi sous Windows). Configuration d'une station (ou routeur) Exercice 2 : Configuration des interfaces (ifconfig et ipconfig) Rappels sur les interfaces Une interface identifie un périphérique permettant de se connecter à un réseau ainsi que les méthodes d'accès à ce réseau. Ce peut être un modem, une carte réseau, un port série, un port USB, ou autre. Une station ne possède et n'utilise généralement qu'une seule carte réseau. Les routeurs possèdent en revanche une interface par réseau auquel ils sont connectés. Sur Unix, une interface correspond à un point d'entrée dans le noyau (cœur du système). Envoyer des messages via les interfaces réseaux revient à passer des données à des procédures spéciales du noyau chargées d'effectuer les opérations d'entrées-sorties physiques. Une interface est généralement identifiée par un nom logique indiquant le type d'interface et le numéro d'ordre de la carte. Typiquement, une carte Ethernet classique sera identifiée par : eth0 pour la première carte eth1 pour la seconde etc... Une exception concerne l'interface loopback identifiée par lo suivi ou non d'un numéro. Cette interface correspond aux adresses IP commençant par 127. La plus communément utilisée étant l'adresse 127.0.0.1. Généralement, les stations sont configurées pour que cette interface puisse être désignée par le nom localhost (cas des stations Unix et Windows). L'interface loopback n'est pas rattachée à une carte réseau. C'est en fait une adresse permettant de tester en local uniquement des programmes utilisant TCP/IP, sans même disposer d'une liaison réseau. Cela permet donc de réaliser des tests sans pour autant provoquer de transmission sur le réseau.

Une interface possède (généralement) une adresse physique. C'est cette adresse qui est utilisée pour les communications dans le réseau. Pour que cette interface puisse être une destination dans l'internet, il faut lui associer une adresse IP (une seule suffit). Ainsi, une station va posséder une seule adresse IP alors qu'un routeur va posséder une adresse IP par réseau auquel il est connecté. Pour réaliser cette association, il faut configurer l'interface. La commande permettant de configurer une interface sous Unix est ifconfig (interface configuration). Son homologue sous Windows est ipconfig. La configuration d'une interface comprend : l'adresse IP qui lui sera associée ; le masque de sous-réseau ; l'adresse IP de diffusion (si possible) dans le réseau concerné. Un datagramme envoyé vers cette adresse est aussi destiné à cette interface ; un état actif (up) ou inactif (down) ; un certain nombre d'options : Remarques : Exercices le MTU (Maximum Transmission Unit : taille maximale d'une trame émise sur le réseau concerné) ; la possibilité de diffuser ou non via l'interface (BROADCAST) ; la possibilité de recevoir des messages émis en multi-diffusion (MULTICAST) ; l'activation du mode promiscuous, donnant la possibilité de recevoir toutes les trames émises sur le réseau, même celles n'étant pas destinées à l'adresse physique de cette interface... sous Linux, la commande ifconfig se trouve dans le répertoire /sbin. ipconfig /? affiche l'aide de ipconfig sous Windows. Consulter le manuel en ligne Linux de ifconfig et l'aide de ipconfig sous Windows pour répondre aux questions suivantes : 1. Quelle est la ligne de commande permettant d'obtenir la configuration de toutes les interfaces? 2. Quelle est l'adresse Ethernet de votre machine (il s'agit de l'information HWaddr)? 3. Et son adresse IP associée? 4. Quel est le MTU de notre réseau local? 5. Quelle est la ligne de commande permettant de configurer l'interface Ethernet eth1 (une deuxième carte) avec : l'adresse IP 192.168.10.20 et le masque de sous-réseau de la classe B et l'adresse IP de diffusion (à déduire des deux précédents points), et l'état actif? Important : vous n'êtes pas forcément autorisés à modifier la configuration de votre machine; il faut être root (administrateur) pour cela. Même si la commande tapée est correcte, elle peut provoquer les erreurs suivantes : SIOCSIFNETMASK: Permission non accordée SIOCGIFADDR: Aucun périphérique de ce type SIOCSIFBROADCAST: Permission non accordée SIOCSIFBRDADDR: Permission non accordée eth1: interface inconnue: Aucun périphérique de ce type eth1: interface inconnue: Aucun périphérique de ce type SIOCSIFADDR: Permission non accordée eth1: interface inconnue: Aucun périphérique de ce type Exercice 3 : Configuration d'une table de routage La configuration de la table de routage se fait au moyen de la commande route sur Unix et Windows. Cette commande permet d'ajouter ou de supprimer des routes vers des réseaux ou des stations. Les informations importantes à spécifier lorsqu'on rajoute une route sont : le type de destination (réseau ou hôte) ; son adresse IP ; le masque de cette adresse (afin de prendre en compte des regroupements de réseaux) s'il est différent de celui de la classe du réseau ; le routeur associé (0.0.0.0 si la destination est directement accessible) ; l'interface permettant de contacter le routeur (lo, eth0,...). Remarques : il est possible d'interdire une destination en utilisant l'option reject.

sous Linux, la commande route se trouve dans le répertoire /sbin. Sous windows, taper route /? pour obtenir de l'aide sur route. Exercices : Consulter le manuel en ligne Linux et l'aide Windows de route pour répondre aux questions suivantes : 1. Quelles sont les routes connues sur votre station? 2. Quelle est la commande Unix et Windows permettant d'ajouter le routeur 194.199.116.250 pour l'adresse de réseau 139.124.0.0 (masque normal), qui est accessible par l'interface eth0? 3. Quelle est la commande Unix et Windows permettant d'ajouter le routeur 194.199.116.250 pour l'adresse du sousréseau 194.199.220.128, où l'identifiant de sous-réseau a été prélevé aux 2 premiers bits de l'identifiant station pour réaliser le subnetting du réseau 194.116.220.0? 4. Quelle est la commande Unix et Windows permettant d'ajouter les adresses de l'interface loopback ainsi qu'elle est définie dans la table? Exercice 4 : Vérification de l'état du réseau 4.1. Commande ping Cette commande est disponible sur les systèmes Unix et Windows. Elle permet de tester l'acheminement de trames sur le réseau et, accessoirement, de vérifier qu'une machine est bien présente sur le réseau. Elle permet aussi de réaliser des statistiques sur les temps de réponse ainsi que sur le pourcentage de paquets perdus. Pour cela, elle utilise le protocole ICMP en envoyant des messages (ICMP) de type "Demande d'echo" qui requière de la part de l'icmp destinataire de répondre par un "Réponse d'echo". Sur la plupart des systèmes, ping effectue plusieurs envois puis s'arrête en fournissant des statistiques sur le temps de propagation aller-retour (Round Trip Time). Sur d'autres systèmes, il faut arrêter ping en tapant Ctrl-C. Ainsi, lorsqu'une réponse arrive, on est assuré que l'ordinateur qu'on utilise est correctement configuré, de même que l'ordinateur intérrogé, et que le réseau qui les sépare est opérationnel. Remarques : sous Linux, la commande ping se trouve dans le répertoire /bin. sous Windows, si ping /? et help ping ne fonctionnent pas, taper simplement ping pour avoir la syntaxe de la commande. Consulter le manuel en ligne Linux et l'aide Windows de ping. À partir de votre machine, tester l'accessibilité et la présence de : a) son interface loopback (une des adresses 127.x.y.z). Taper Ctrl-C pour arrêter la commande. b) d'une autre machine (de la même salle), en précisant 10 tentatives c) toutes les stations du réseau, accessibles en broadcast (diffusion). Pour cela, préciser uniquement 2 tentatives. d) la machine 192.168.10.30 e) d'un serveur du réseau f) www.free.fr g) www.nasa.gov 4.2. Commande traceroute Cette commande est disponible sur Unix et Windows. Elle s'appelle tracert sous Windows. Elle permet de connaître la route que suivra un datagramme que vous enverrez vers une machine donnée. Elle permet ainsi de savoir à quel endroit bloque la transmission d'un paquet que l'on tente d'envoyer sans succès (malheureusement, ça arrive). Elle provoque une erreur d'acheminement sur chaque relais par lequel passe le datagramme IP en agissant sur le champ TTL de ce dernier. En effet, traceroute commence par envoyer un datagramme UDP véhiculé par un datagramme IP avec un TTL positionné à 1. Le premier routeur rencontré détruit le datagramme et renvoie une erreur ICMP de TTL expiré. On obtient ainsi l'adresse du premier routeur de la route. traceroute envoie ensuite un datagramme UDP dans un datagramme IP avec un TTL à 2 pour connaître le second routeur, et ainsi de suite, jusqu'à atteindre la destination spécifiée (mais sur un port non attribué pour recevoir un message ICMP de port inaccessible). Remarque : sous Linux, la commande traceroute se trouve dans le répertoire /usr/sbin. Consulter le manuel en ligne Linux de traceroute et l'aide Windows de tracert. : NB : Il semblerait que les paquets traceroute en partance des serveurs soient filtrés (testez quand même), ce qui rend la commande inutilisable sous Linux pour nous. Heureusement que l'on peut obtenir les résultats à partir de Windows. 1. Indiquer la route permettant de contacter un serveur de votre réseau 2. Indiquer la route permettant de contacter www.free.fr 3. Indiquer la route permettant de contacter saphir.lidil.univ-mrs.fr 4. Indiquer la route permettant de contacter www.nasa.gov 5. Indiquer la route permettant de contacter la station d'adresse 192.168.10.25 6. Reprendre la question 2 en demandant à ce que les cinq premiers routeurs n'apparaissent pas (il faut agir sur le TTL du premier datagramme envoyé par traceroute)

4.3. Commande netstat Cette commande est disponible sur Unix et Windows. Elle donne des renseignements très complets sur les fonctionnalités réseau de la station, notamment sur l'état des connexions TCP, des ports (TCP ou UDP) utilisés par les applications, et bien d'autres choses. Elle admet de nombreuses options comme on peut le constater en consultant le manuel Linux. Remarque : sous Linux, la commande netstat se trouve dans le répertoire /bin. 1. Consulter le manuel en ligne Linux de netstat : a) afficher toutes les informations disponibles ; b) afficher la table de routage uniquement ; c) idem qu'en b) mais où les destinations sont des adresses IP ; d) l'état des connexions TCP uniquement (regarder le synopsis de la commande). 2. Consulter l'aide Windows de netstat et, à partir de la fenêtre MS-DOS : a) afficher toutes les informations disponibles ; b) afficher la table de routage uniquement ; c) l'état des connexions TCP uniquement. Exercice 5 : Noms de stations et de domaine Les adresses IP ne sont pas forcément très lisibles. C'est pourquoi, il est possible d'associer à une station, un ensemble de noms qui sont plus facile à retenir. Cette association peut être officieuse ou officielle. Si elle est officieuse, elle ne sera reconnue que par les stations qui ont été configurées pour cela. Si elle est officielle, elle sera reconnue par toute station pouvant faire appel à un serveur de noms (quasiment toutes les machines connectées à Internet). Mais cela nécessite une déclaration au DNS (Domain Name Service). Les configurations officielle et officieuse diffèrent quelque peu dans la flexibilité du nommage. Si officieusement, on peut se laisser aller à quelques fantaisies, il n'en est pas de même officiellement. 5.1. Noms officieux Les noms officieux sont simplement renseignés sous Unix dans le fichier /etc/hosts et sous Windows dans le fichier c:\windows\system32\drivers\etc\hosts pour les noms de stations. Dans le même répertoire on trouve aussi le fichier networks pour les noms de réseaux. Les noms déclarés dans ces fichiers ne sont connus que de la station qui les héberge. Ces fichiers sont constitués de lignes commençant par une adresse IP suivie d'un ou plusieurs noms. Toutes les commandes réseaux consultent ces fichiers et remplacent lorsqu'il y a lieu les noms qui leur sont passés en arguments par les adresses correspondantes. En consultant simplement les fichiers indiqués ci-dessus, répondre aux questions suivantes : 1. Quels sont les noms de stations et de réseau officieusement reconnus par votre machine? 2. Modifiez le fichier hosts pour que lorsque dans votre navigateur préféré vous entrez l'adresse «goo», vous arriviez sur la page de www.google.fr. (Vous pouvez tester ca chez vous mais ici vous n'avez pas les droits de modifications) 5.2 Noms officiels Le format du nom officiel d'une station est station.domaine. Dans cette écriture, domaine ne correspond pas forcément à un réseau. C'est en fait un nom de domaine qui est géré par une organisation. Elle est chargée de mettre à disposition un serveur de noms qui doit répondre aux requêtes provenant du réseau et concernant des caractéristiques de ce domaine : adresse IP d'une station de ce domaine, adresse IP du serveur de mail de ce domaine, adresse électronique du responsable de ce domaine... 5.2.1. Commande hostname Les noms officiels d'une machine sont consultables avec la commande hostname sous Linux et Windows. Remarque : sous Linux, la commande hostname se trouve dans le répertoire /bin. Consulter le manuel en ligne Linux de hostname pour utiliser ses options afin d'obtenir : 1. le nom complet de votre machine ; 2. le nom court de votre machine ; 3. le nom de domaine de votre machine. Sous Windows utilisez hostname pour obtenir le nom de la machine.

5.2.2. Configuration DNS Afin d'interroger le DNS pour reconnaître les noms officiels de toutes les stations déclarées, il faut configurer le fichier /etc/resolv.conf. Ce fichier comprend en première ligne le nom du domaine auquel appartient la station. La deuxième ligne (celle commençant par nameserver) spécifie l'adresse du serveur de noms primaire (celui qui sera interrogé en priorité), les autres lignes de ce type désignant d'autres serveurs. Lorsqu'on utilise un nom de station qui ne se trouve pas dans le fichier /etc/hosts, la station contacte le serveur de nom afin de lui demander l'adresse IP qui lui est associée. Si le serveur ne connaît pas cette association, il demandera à un autre serveur ce renseignement. Quel est le serveur de noms que nous utilisons? 5.2.3. Interrogation du DNS avec host, dig et nslookup Certaines commandes permettent d'interroger des serveurs DNS. Il s'agit notamment de host, dig et de nslookup. Ces commandes ne sont pas toujours disponibles sur Windows. Elles admettent un bon nombre de paramétrages, notamment le serveur de nom à utiliser pour l'interrogation. Historiquement, nslookup était la plus utilisée. Elle est plutôt conviviale et interactive. Actuellement, son utilisation n'est plus recommandée et le code n'est plus maintenu. Il faut lui préférer host dont l'utilisation est moins aisée, ou dig dont l'utilisation est encore plus délicate. Remarque : sous Linux, host, dig et nslookup se trouvent dans le répertoire /usr/bin. Prendre connaissance du manuel en ligne Linux de ces commandes et : 1. Utiliser la commande host pour connaître l'adresse IP de jade.lim.univ-mrs.fr 2. Utiliser la commande host pour connaître le serveur de mail du domaine lim.univ-mrs.fr (il faut spécifier un type de question particulier : mx) 3. Utiliser la commande nslookup pour obtenir la liste de tous les noms reconnus dans le domaine lim.univmrs.fr. Par défaut, nslookup utilise le serveur de nom du domaine local. Celui-ci ne pourra pas répondre à cette requête. Il faudra donc passer par un serveur gérant le domaine concerné. La première chose à faire est d'obtenir le nom d'un serveur de noms en charge du domaine lim.univ-mrs.fr puis demander à ce serveur la liste des noms de ce domaine. Pour des raisons de sécurité évidentes, beaucoup de serveurs refusent de répondre à cette question. Attention : nslookup n'est plus disponible sous Linux, il faudra donc utiliser nslookup sous Windows, ou utiliser la commande host sous Linux. Comme l'aide en ligne Windows est souvent assez sommaire, voici quelques explications sur nslookup : Avec nslookup en mode interactif : taper : nslookup (Entrée) pour rentrer dans le mode interactif si l'on tape : ls lim.univ-mrs.fr (Entrée) pour obtenir la liste des noms du domaine lim.univ-mrs.fr, le serveur par défaut ne saura pas répondre. Il faut donc interroger un serveur en charge de ce domaine. taper : set q=ns (Entrée) pour indiquer que la (les) question(s) suivante(s) demande(nt) un serveur de noms taper : lim.univ-mrs.fr (Entrée) qui demande donc les serveurs de noms en charge de lim.univ-mrs.fr. Ici, il s'agit de saphir.lidil.univ-mrs.fr et de riluminy.univ-mrs.fr. taper : server riluminy.lidil.univ-mrs.fr (Entrée) pour interroger par la suite le serveur saphir.lidil.univ-mrs.fr enfin, taper : ls lim.univ-mrs.fr (Entrée) pour obtenir la réponse souhaitée. et exit pour sortir de nslookup.

5.2.4. WHOIS : informations sur les gestionnaires d'un domaine Il est possible d'obtenir un certain nombre de renseignements sur les gestionnaires d'un nom de domaine par ce qu'on appelle "une requête whois". Si la requête est formulée auprès d'une autorité compétente. L'autorité compétente pour les domaines se terminant par.fr et.re est l'afnic (www.afnic.fr). C'est une association chargée d'attribuer et de gérer les domaines.fr et.re. Elle fournit la possibilité d'interroger en ligne (www.afnic.fr/outils/whois) sa base de données. Un grand nombre de domaines tels que.arpa,.biz,.com,.edu,.org, etc. sont gérés par l'internic (www.internic.net) bien que.com et.net soient en fait l'exclusivité de la société VeriSign (www.verisign-grs.com). On peut aussi interroger en ligne (www.internic.net/whois.html) ces gestionnaires. Enfin, on peut utiliser un site comme http://network-tools.com qui regroupe plusieurs des services que nous avons étudiés au cours de ce TP. Sous linux, on peut interroger les serveurs whois en utilisant la commande whois. Utilisez-la pour obtenir des renseignements sur différents domaines tels que : univ-aix.fr, univ-mrs.fr, free.fr, orange.fr, gouv.fr, etc. 6 Telnet 6.1. Terminal virtuel Telnet est à l'origine conçu comme un Terminal Virtuel, c'est à dire qu'il sert à se connecter à distance sur une station. Le terminal d'où est lancé telnet sert alors aux entrées-sorties avec un shell de la station distante. Tout se passe comme si l'utilisateur était installé devant cette station distante. Telnet fonctionne en mode texte. Par ailleurs, il normalise les échanges de texte qui sont effectués afin que les différences de codage entre les deux stations ne soient pas gênants. Il est possible de lancer des applications graphiques lorsqu'on est logé avec Telnet sur une station. Mais il faut alors disposer d'un serveur X (afficheur de fenêtres) actif en local et paramétrer quelques variables et autorisations d'accès. Nous n'étudierons pas cette possibilité. Techniquement, telnet se présente comme un client et un serveur. Nous n'étudierons pas le serveur au cours de ce TP. Sachez simplement qu'il accepte des connexions et lance un shell qui reçoit ses commandes de la connexion et qui envoie ses sorties sur la connexion. Pour lancer un client telnet afin de se loger sur une station distante disposant d'un serveur telnet, il faut simplement taper la ligne de commande : telnet nom_du_serveur où nom_du_serveur est l'adresse IP ou un nom officiel de la station serveur. Le client telnet tente alors d'établir une connexion TCP sur le port 23 de la machine nom_du_serveur, qui est réservé aux serveurs telnet. Le shell lancé demandera alors à l'utilisateur de s'identifier (nom et mot de passe). Le rôle du client est de servir d'interface entre l'utilisateur et le serveur de manière à ce que (presque) tout ce que l'utilisateur tape soit envoyé au serveur et que (presque) tout ce que le serveur répond soit affiché sur le terminal de l'utilisateur et ce, jusqu'à ce que la connexion soit rompue. Cependant, il est possible de taper des commandes que le client telnet doit interpréter, soit pour le paramétrer, soit pour terminer une connexion ou en ouvrir une autre. Pour cela, lorsque le client telnet est lancé, il faut taper la séquence de caractères d'échappement pour rentrer dans le mode commande. Cette séquence est indiquée en début de session telnet et consiste souvent à maintenir appuyé la touche Control, suivie du caractère ] (crochet fermant que l'on saisit à l'aide de la touche Alt Gr), ou parfois du $ (cas du client telnet de Windows). On rentre alors dans le mode de commande du client telnet. On peut ensuite taper help pour avoir une liste de commandes disponibles, et il suffit de taper deux fois sur la touche Entrée pour revenir au terminal virtuel. Remarque : Telnet est un service non sécurisé ni crypté. En particulier le nom de l'utilisateur et son mot de passe circulent "en clair" dans le réseau. Par conséquent, le service telnet est de moins en moins permis par les administrateurs réseaux qui le remplacent par ssh (secure shell). Il n'est donc souvent pas possible de se connecter sur un machine sur son réseau par telnet, il reste utilisé en tant que simple client TCP ou pour se connecter sur routeur.

6.2. Telnet comme simple client TCP Un client telnet peut être utilisé dans un autre but. En effet, il permet de communiquer avec des serveurs (en utilisant le protocole approprié) qui utilisent TCP comme protocole de transport. Ceci parce que telnet peut se comporter comme un client TCP ordinaire. Il suffit de lui indiquer après l'hôte, le port utilisé par le serveur par la ligne de commande suivante : telnet hôte port Le client telnet va alors établir une connexion TCP avec le serveur lié au port port. Tout ce que l'utilisateur tapera sera transmis au serveur qui l'interprétera généralement comme un requête. Tout ce que le serveur enverra sera alors affiché sur le terminal de l'utilisateur et correspondra généralement à une réponse à une requête. Un grand nombre de serveurs utilisent les caractères ASCII dans leurs échanges avec les clients et peuvent être donc contactés avec telnet. De plus, ces serveurs utilisent ou requièrent généralement que les fins de lignes soient exprimées par le caractère '\r' suivi de '\n', ce que fait justement telnet. Les différents serveurs à contacter dans cet exercice utilisent un port que l'on a indiqué en cours et que l'on peut trouver aussi dans le fichier / etc/services. Les serveurs peuvent être contactés à partir de Windows ou de Linux, essayez vous aux 2 telnet. 1. Contacter un serveur daytime (port 13) en utilisant telnet (essayez vos différents serveurs classiques, vous pouvez vérifier les ports en attente sur ces serveurs avec la commande netstat en utilisant les options au, aun, at ou atn). Celui-ci se contente de renvoyer la date et l'heure qu'il possède puis ferme la connexion ou reste muet. Entrez dans le mode de commandes de telnet pour terminer la connexion si le serveur ne l'a pas fait. 2. Contacter un serveur WEB (genre www.free.fr). Une fois connecté tapez get puis entrée. Le protocole n'étant pas respecter correctement vous recevez une page d'erreur. 3. Contacter un serveur time (port 37) souvent présent à l'endroit d'un serveur daytime. La réponse obtenu est moins lisible que celle obtenue par le daytime, en effet ici vous recevez une valeur binaire et non pas texte de l'heure!! On utilisera Telnet dans un prochain TP pour explorer les protocoles applicatifs HTTP, POP, FTP, SMTP,... 7. Nmap : scanner un réseau L'un des logiciels favoris des pirates est un scanner de ports. En effet, les pirates cherchent les services qui sont susceptibles de posséder une faille de sécurité afin de pénétrer un système. Pour cela, il ont besoin d'un bon scanner dans leur trousse à outil. Le plus célèbre est certainement nmap (téléchargeable sur le site http://www.insecure.org) mais peut être déjà installé sur votre machine... Mais le scanner ne sert pas seulement aux pirates!! Il permet aux administrateurs réseaux de vérifier les ports ouverts sur leurs systèmes et s'il n'y a pas de service inutile actif ni de backdoor. Remarque : nmap est aussi disponible pour Windows (voir site). NB : nmap n'est pas disponible sur les machines de l'école!! Exercice (à faire chez vous pour scanner une de vos machines, un scan sur le réseau est souvent interprété comme une attaque!): 1. Utiliser nmap pour vérifier les services ouverts sur une machine du réseau à laquelle vous avez accès. Comparer avec le résultat de netstat -at sur la machine que vous avez scanné (l'état d'un serveur en écoute et donc actif est LISTENING). Ici vous pouvez tester quand même les ports d'une machine avec un scanner de port en ligne par exemple http://www.frameip.com/scan/ Puisqu'on décrit des outils interessants à tester chez vous, vous pouvez essayer un forgeur de paquet sous linux HPING, Nessus, SendIP ou sous Windows Frameip.exe (http://www.frameip.com/frameip/) et observer le résultat avec un sniffeur comme Ethereal (www.ethereal.com). Attention ces outils doivent être utilisé avec attention à des fins pédagogiques pour comprendre les comportements des protocoles, les utiliser pour causer un problème à autrui peut entraîner des conséquences importantes.

8. Netcat : un client/serveur à tester Il existe d'autre logiciels que telnet pour contacter un serveur quelconque, notamment le logiciel netcat. Sous Linux, l'exécutable se nomme nc et est généralement situé dans /usr/bin. L'avantage de nc est qu'il permet non seulement d'envoyer des caractères ASCII sur une connexion mais aussi des données binaires. Il peut aussi servir de client UDP (alors que telnet ne marche qu'avec TCP). Enfin, il peut aussi servir de serveur, c'est à dire qu'il peut être "lié" à un port (TCP ou UDP selon le choix fait) et attendre que des clients lui envoient des données. Exercice (sous Linux): 1. Utiliser nc pour contacter le serveur TCP daytime 2. Utiliser nc pour lancer un serveur sur un port que vous choisirez (au dessus de 10000). Utiliser ensuite telnet (depuis un autre serveur ou depuis Windows) pour vous connecter à ce serveur. 3. Utiliser nc pour lancer un serveur UDP sur un port que vous choisirez (au dessus de 10000). Essayer d'utiliser telnet pour le contacter (ça ne marchera pas). Le contacter en laçant un client nc. 4. Utiliser nc pour lancer un serveur sur un port choisi avec l'option -e /usr/bin/whoami. La commande whoami permet de savoir qui est logé sur la machine, l'option -e permet d'exécuter une commande lorsqu'un client se connecte sur le serveur et de renvoyer la sortie standard vers ce client. Il faut mettre le chemin complet de la commande cat nc n'ira pas voir votre variable PATH. Observez le résultat. 5. Utiliser un serveur nc pour visualiser la table de routage d'un serveur en étant logé sur un autre serveur. 6. Utiliser un serveur nc pour visualiser les ports TCP ouverts d'un serveur en étant logé sur un autre serveur. 7. Utiliser un serveur nc pour visualiser le cache ARP d'un serveur en étant logé sur un autre serveur. Vous venez d'explorer la réalisation d'une backdoor, il faut bien sur utiliser des ports non filtré par le firewall et lancer ce processus en tache de fond permanente mais le principe y est... 8. Examiner les différentes possibilités de nc en tant que serveur. On utilisera nc dans un prochain TP pour explorer les protocoles applicatifs HTTP, POP, FTP, SMTP,... Exercice (sous Windows): NC est disponible sous Windows, vous en trouverez une version qui ne nécessite pas d'installation à l'adresse : http://frederic.dumas.myspace.esil.univmed.fr/outils/nc11nt.zip Le Zip contient l'exécutable NC mais aussi le fichier d'aide et les sources du programme. 1. Télécharger puis dézipper nc pour Windows dans un dossier personnel. 2. Créer un script windows nommé telnetd pour lancer nc : un script Windows est simplement un fichier texte dont l'extention est.bat, un fichier batch (extention.bat) lance les commandes décrit dans le fichier. Ce fichier comportera une première ligne avec la commande nc, sur la seconde ligne sera simplement écrit pause. Cette seconde ligne permet de conserver la console afficher même la commande terminé. 3. Utiliser telnetd pour contacter le serveur TCP daytime. 4. Utiliser telnetd pour écouter un port puis contacter ce port avec telnet sous Windows, puis sous Linux. 5. Utiliser telnetd pour écouter un port avec l'option -e cmd.exe puis contacter ce port avec telnet sous Windows. Que se passe t il? Contacter ce port avec telnet sous Linux. Contacter ce port depuis un autre utilisateur et constater les possibilités... 6. Que dire de l'option -d? DEVOIR A RENDRE POUR LA NOTE DE TP : Utilisez les commandes vus dans le TP pour faire un schéma le plus exhaustif possible du réseau de l'école et des réseaux qui l'entourent. Vous préciserez la liste des machines connues, les serveurs, les services disponibles sur ces serveurs, les réseaux qui nous entourent, les passerelles, les serveurs DNS, mails, Web,... et toutes informations liées de près ou de loin aux réseaux. C'est une sorte d'enquête dans laquelle vous préciserez vos sources d'informations (comment avez vous déduit tel ou tel information, à partir de quelles commandes, etc.). La source : «j'ai demandé à G» n'est pas valable!!