Sie sind auf Seite 1von 9

* ESIL

TP rseau n2

Rseaux *

Nota : Ce TP est fortement inspir d'un TP ralis l'IUT d'Aix en Provence rdig par Cyril Pain Barre. Seuls quelques ajouts et adaptations y ont t apports pour correspondre son objectif : dcouvrir le rseau sur lequel vous travaillez. 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 SSH sur votre serveur prfr 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 gnralement situe dans le rpertoire /sbin ou /usr/sbin. remarque : la commande whereis sous Unix (Linux) permet en gnrale de trouver le PATH de la commande recherche. Si necessaire, vous pouvez modifier votre PATHen tapant : setenv PATH ${PATH}:/sbin Consulter le manuel en ligne Linux de arp(par man arppour indiquer les lignes de commandes permettant : ) 1. d'obtenir la liste de toutes les associations prsentes dans le cache ARP de votre machine? 2. d'obtenir la mme 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 prsente dans le cache ? Remarque : cette commande vous permet de dcouvrir l'existence d'un certains nombre de machine sur le rseau. 1.2. Cache ARP sous Windows Ouvrir une fentre MS-DOS (l'interprteur de commandes Windows) soit par le Menu Dmarrer => Excuter => Taper cmd et Entre ou par Menu Dmarrer => Programmes => Invite de Commandes. Consulter l'aide de arpsous Windows en tapant arp /? . Remarque : Il est peut tre utile d'augmenter la mmoire de la fentre MS-DOS et avoir un ascenseur pour voir le dbut de l'affichage des commandes. Pour cela, effectuer un clic droit sur la barre du haut de la fentre MS-DOS puis slectionner Proprits. Dans l'onglet Disposition (onglet Configuration sur Windows XP), on peut spcifier le nombre de lignes de la fentre en modifiant le champ Hauteur de la taille de la zone de mmoire tampon cran (mettre environ 200 lignes). Exercice : Quelle est la commande MS-DOS permettant d'obtenir la liste de toutes les associations prsentes dans le cache ARP de votre PC ? Remarque : sous Windows, le chemin menant aux commandes rseau est dj 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 priphrique permettant de se connecter un rseau ainsi que les mthodes d'accs ce rseau. Ce peut tre un modem, une carte rseau, un port srie, un port USB, ou autre. Une station ne possde et n'utilise gnralement qu'une seule carte rseau. Les routeurs possdent en revanche une interface par rseau auquel ils sont connects. Sur Unix, une interface correspond un point d'entre dans le noyau (cur du systme). Envoyer des messages via les interfaces rseaux revient passer des donnes des procdures spciales du noyau charges d'effectuer les oprations d'entres-sorties physiques. Une interface est gnralement identifie par un nom logique indiquant le type d'interface et le numro d'ordre de la carte. Typiquement, une carte Ethernet classique sera identifie par :

eth0 pour la premire carte eth1 pour la seconde etc...

Une exception concerne l'interface loopback identifie par lo suivi ou non d'un numro. Cette interface correspond aux adresses IP commenant par 127. La plus communment utilise tant l'adresse 127.0.0.1. Gnralement, les stations sont configures pour que cette interface puisse tre dsigne par le nom localhost (cas des stations Unix et Windows). L'interface loopback n'est pas rattache une carte rseau. C'est en fait une adresse permettant de tester en local uniquement des programmes utilisant TCP/IP, sans mme disposer d'une liaison rseau. Cela permet donc de raliser des tests sans pour autant provoquer de transmission sur le rseau.

* ESIL

TP rseau n2

Rseaux *

Une interface possde (gnralement) une adresse physique. C'est cette adresse qui est utilise pour les communications dans le rseau. 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 possder une seule adresse IP alors qu'un routeur va possder une adresse IP par rseau auquel il est connect. Pour raliser 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 associe ; le masque de sous-rseau ; l'adresse IP de diffusion (si possible) dans le rseau 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 :

le MTU (Maximum Transmission Unit : taille maximale d'une trame mise sur le rseau 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 rseau, mme celles n'tant pas destines l'adresse physique de cette interface...

sous Linux, la commande ifconfig se trouve dans le rpertoire /sbin. ipconfig /? affiche l'aide de ipconfig sous Windows.

Exercices Consulter le manuel en ligne Linux de ifconfig et l'aide de ipconfig sous Windows pour rpondre aux questions suivantes : 1. 2. 3. 4. 5. Quelle est la ligne de commande permettant d'obtenir la configuration de toutes les interfaces ? Quelle est l'adresse Ethernet de votre machine (il s'agit de l'information HWaddr) ? Et son adresse IP associe ? Quel est le MTU de notre rseau local ? Quelle est la ligne de commande permettant de configurer l'interface Ethernet eth1 (une deuxime carte) avec :

l'adresse IP 192.168.10.20 et le masque de sous-rseau de la classe B et l'adresse IP de diffusion ( dduire des deux prcdents points), et l'tat actif ?

Important : vous n'tes pas forcment autoriss modifier la configuration de votre machine; il faut tre root (administrateur) pour cela. Mme si la commande tape est correcte, elle peut provoquer les erreurs suivantes : SIOCSIFNETMASK: Permission non accorde SIOCGIFADDR: Aucun priphrique de ce type SIOCSIFBROADCAST: Permission non accorde SIOCSIFBRDADDR: Permission non accorde eth1: interface inconnue: Aucun priphrique de ce type eth1: interface inconnue: Aucun priphrique de ce type SIOCSIFADDR: Permission non accorde eth1: interface inconnue: Aucun priphrique 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 rseaux ou des stations. Les informations importantes spcifier lorsqu'on rajoute une route sont :

le type de destination (rseau ou hte) ; son adresse IP ; le masque de cette adresse (afin de prendre en compte des regroupements de rseaux) s'il est diffrent de celui de la classe du rseau ; 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 rpertoire /sbin. Sous windows, taper route /? pour obtenir de l'aide sur route.

* ESIL
Exercices :

TP rseau n2

Rseaux *

Consulter le manuel en ligne Linux et l'aide Windows de route pour rpondre aux questions suivantes : 1. 2. 3. 4. Quelles sont les routes connues sur votre station ? Quelle est la commande Unix et Windows permettant d'ajouter le routeur 194.199.116.250 pour l'adresse de rseau 139.124.0.0 (masque normal), qui est accessible par l'interface eth0 ? Quelle est la commande Unix et Windows permettant d'ajouter le routeur 194.199.116.250 pour l'adresse du sousrseau 194.199.220.128, o l'identifiant de sous-rseau a t prlev aux 2 premiers bits de l'identifiant station pour raliser le subnetting du rseau 194.116.220.0 ? Quelle est la commande Unix et Windows permettant d'ajouter les adresses de l'interface loopback ainsi qu'elle est dfinie dans la table ?

Exercice 4 : Vrification de l'tat du rseau


4.1. Commande ping Cette commande est disponible sur les systmes Unix et Windows. Elle permet de tester l'acheminement de trames sur le rseau et, accessoirement, de vrifier qu'une machine est bien prsente sur le rseau. Elle permet aussi de raliser des statistiques sur les temps de rponse 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 require de la part de l'ICMP destinataire de rpondre par un "Rponse d'ECHO". Sur la plupart des systmes, ping effectue plusieurs envois puis s'arrte en fournissant des statistiques sur le temps de propagation aller-retour (Round Trip Time) . Sur d'autres systmes, il faut arrter ping en tapant Ctrl-C. Ainsi, lorsqu'une rponse arrive, on est assur que l'ordinateur qu'on utilise est correctement configur, de mme que l'ordinateur intrrog, et que le rseau qui les spare est oprationnel. Remarques :

sous Linux, la commande ping se trouve dans le rpertoire /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 prsence de : a) son interface loopback (une des adresses 127.x.y.z). Taper Ctrl-C pour arrter la commande. b) d'une autre machine (de la mme salle), en prcisant 10 tentatives c) toutes les stations du rseau, accessibles en broadcast (diffusion). Pour cela, prciser uniquement 2 tentatives. d) la machine 192.168.10.30 e) d'un serveur du rseau 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 connatre la route que suivra un datagramme que vous enverrez vers une machine donne. Elle permet ainsi de savoir quel endroit bloque la transmission d'un paquet que l'on tente d'envoyer sans succs (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 vhicul par un datagramme IP avec un TTL positionn 1. Le premier routeur rencontr dtruit 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 connatre le second routeur, et ainsi de suite, jusqu' atteindre la destination spcifie (mais sur un port non attribu pour recevoir un message ICMP de port inaccessible). Remarque : sous Linux, la commande traceroute se trouve dans le rpertoire /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 filtrs (testez quand mme), ce qui rend la commande inutilisable sous Linux pour nous. Heureusement que l'on peut obtenir les rsultats partir de Windows. 1. 2. 3. 4. 5. 6. Indiquer la route permettant de contacter un serveur de votre rseau Indiquer la route permettant de contacter www.free.fr Indiquer la route permettant de contacter saphir.lidil.univ-mrs.fr Indiquer la route permettant de contacter www.nasa.gov Indiquer la route permettant de contacter la station d'adresse 192.168.10.25 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)

* ESIL
4.3. Commande netstat

TP rseau n2

Rseaux *

Cette commande est disponible sur Unix et Windows. Elle donne des renseignements trs complets sur les fonctionnalits rseau de la station, notamment sur l'tat des connexions TCP, des ports (TCP ou UDP) utiliss 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 rpertoire /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 fentre 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 forcment trs 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 configures pour cela. Si elle est officielle, elle sera reconnue par toute station pouvant faire appel un serveur de noms (quasiment toutes les machines connectes Internet). Mais cela ncessite une dclaration au DNS (Domain Name Service). Les configurations officielle et officieuse diffrent quelque peu dans la flexibilit du nommage. Si officieusement, on peut se laisser aller quelques fantaisies, il n'en est pas de mme officiellement. 5.1. Noms officieux Les noms officieux sont simplement renseigns 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 mme rpertoire on trouve aussi le fichier networks pour les noms de rseaux . Les noms dclars dans ces fichiers ne sont connus que de la station qui les hberge. Ces fichiers sont constitus de lignes commenant par une adresse IP suivie d'un ou plusieurs noms. Toutes les commandes rseaux consultent ces fichiers et remplacent lorsqu'il y a lieu les noms qui leur sont passs en arguments par les adresses correspondantes. Exercice : En consultant simplement les fichiers indiqus ci-dessus, rpondre aux questions suivantes : 1. 2. Quels sont les noms de stations et de rseau officieusement reconnus par votre machine ? Modifiez le fichier hosts pour que lorsque dans votre navigateur prfr 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 forcment un rseau. C'est en fait un nom de domaine qui est gr par une organisation. Elle est charge de mettre disposition un serveur de noms qui doit rpondre aux requtes provenant du rseau et concernant des caractristiques 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 rpertoire /bin.

Exercice : Consulter le manuel en ligne Linux de hostname pour utiliser ses options afin d'obtenir : 1. 2. 3. le nom complet de votre machine ; le nom court de votre machine ; le nom de domaine de votre machine.

Sous Windows utilisez hostname pour obtenir le nom de la machine.

* ESIL
5.2.2. Configuration DNS

TP rseau n2

Rseaux *

Afin d'interroger le DNS pour reconnatre les noms officiels de toutes les stations dclares, il faut configurer le fichier /etc/resolv.conf. Ce fichier comprend en premire ligne le nom du domaine auquel appartient la station. La deuxime ligne (celle commenant par nameserver) spcifie l'adresse du serveur de noms primaire (celui qui sera interrog en priorit), les autres lignes de ce type dsignant 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 associe. Si le serveur ne connat pas cette association, il demandera un autre serveur ce renseignement.

Exercice : 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 paramtrages, notamment le serveur de nom utiliser pour l'interrogation. Historiquement, nslookup tait la plus utilise. Elle est plutt conviviale et interactive. Actuellement, son utilisation n'est plus recommande et le code n'est plus maintenu. Il faut lui prfrer host dont l'utilisation est moins aise, ou dig dont l'utilisation est encore plus dlicate. Remarque : sous Linux, host, dig et nslookup se trouvent dans le rpertoire /usr/bin.

Exercice : Prendre connaissance du manuel en ligne Linux de ces commandes et : 1. 2. 3. Utiliser la commande host pour connatre l'adresse IP de jade.lim.univ-mrs.fr Utiliser la commande host pour connatre le serveur de mail du domaine lim.univ-mrs.fr (il faut spcifier un type de question particulier : mx) Utiliser la commande nslookup pour obtenir la liste de tous les noms reconnus dans le domaine lim.univmrs.fr. Par dfaut, nslookup utilise le serveur de nom du domaine local. Celui-ci ne pourra pas rpondre cette requte. Il faudra donc passer par un serveur grant le domaine concern. La premire 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 scurit videntes, beaucoup de serveurs refusent de rpondre 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 (Entre) pour rentrer dans le mode interactif si l'on tape : ls lim.univ-mrs.fr (Entre) pour obtenir la liste des noms du domaine lim.univ-mrs.fr, le serveur par dfaut ne saura pas rpondre. Il faut donc interroger un serveur en charge de ce domaine. taper : set q=NS (Entre) pour indiquer que la (les) question(s) suivante(s) demande(nt) un serveur de noms taper : lim.univ-mrs.fr (Entre) 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 (Entre) pour interroger par la suite le serveur saphir.lidil.univ-mrs.fr enfin, taper : ls lim.univ-mrs.fr (Entre) pour obtenir la rponse souhaite. et exit pour sortir de nslookup.

* ESIL

TP rseau n2

Rseaux *

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 requte whois". Si la requte est formule auprs d'une autorit comptente. L'autorit comptente pour les domaines se terminant par .fr et .re est l'AFNIC (www.afnic.fr). C'est une association charge d'attribuer et de grer les domaines .fr et .re. Elle fournit la possibilit d'interroger en ligne (www.afnic.fr/outils/whois) sa base de donnes. Un grand nombre de domaines tels que .arpa, .biz, .com, .edu, .org, etc. sont grs par l'Internic (www.internic.net) bien que .com et .net soient en fait l'exclusivit de la socit 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 tudis 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 diffrents 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 conu 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 entres-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 effectus afin que les diffrences de codage entre les deux stations ne soient pas gnants. 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 fentres) actif en local et paramtrer quelques variables et autorisations d'accs. Nous n'tudierons pas cette possibilit. Techniquement, telnet se prsente 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 reoit 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 rserv aux serveurs telnet. Le shell lanc demandera alors l'utilisateur de s'identifier (nom et mot de passe). Le rle du client est de servir d'interface entre l'utilisateur et le serveur de manire ce que (presque) tout ce que l'utilisateur tape soit envoy au serveur et que (presque) tout ce que le serveur rpond 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 interprter, soit pour le paramtrer, soit pour terminer une connexion ou en ouvrir une autre. Pour cela, lorsque le client telnet est lanc, il faut taper la squence de caractres d'chappement pour rentrer dans le mode commande. Cette squence est indique en dbut de session telnet et consiste souvent maintenir appuy la touche Control, suivie du caractre ] (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 Entre pour revenir au terminal virtuel. Remarque : Telnet est un service non scuris ni crypt. En particulier le nom de l'utilisateur et son mot de passe circulent "en clair" dans le rseau. Par consquent, le service telnet est de moins en moins permis par les administrateurs rseaux qui le remplacent par ssh (secure shell). Il n'est donc souvent pas possible de se connecter sur un machine sur son rseau par telnet, il reste utilis en tant que simple client TCP ou pour se connecter sur routeur.

* ESIL
6.2. Telnet comme simple client TCP

TP rseau n2

Rseaux *

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 aprs l'hte, le port utilis par le serveur par la ligne de commande suivante : telnet hte 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'interprtera gnralement comme un requte. Tout ce que le serveur enverra sera alors affich sur le terminal de l'utilisateur et correspondra gnralement une rponse une requte. Un grand nombre de serveurs utilisent les caractres ASCII dans leurs changes avec les clients et peuvent tre donc contacts avec telnet. De plus, ces serveurs utilisent ou requirent gnralement que les fins de lignes soient exprimes par le caractre '\r' suivi de '\n', ce que fait justement telnet. Exercice : Les diffrents 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 contacts partir de Windows ou de Linux, essayez vous aux 2 telnet. 1. Contacter un serveur daytime (port 13) en utilisant telnet (essayez vos diffrents serveurs classiques, vous pouvez vrifier 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 possde 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. Contacter un serveur WEB (genre www.free.fr). Une fois connect tapez get puis entre. Le protocole n'tant pas respecter correctement vous recevez une page d'erreur. Contacter un serveur time (port 37) souvent prsent l'endroit d'un serveur daytime. La rponse 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 !!

2. 3.

On utilisera Telnet dans un prochain TP pour explorer les protocoles applicatifs HTTP, POP, FTP, SMTP, ...

7. Nmap : scanner un rseau


L'un des logiciels favoris des pirates est un scanner de ports. En effet, les pirates cherchent les services qui sont susceptibles de possder une faille de scurit afin de pntrer un systme. Pour cela, il ont besoin d'un bon scanner dans leur trousse outil. Le plus clbre est certainement nmap (tlchargeable sur le site http://www.insecure.org) mais peut tre dj install sur votre machine ... Mais le scanner ne sert pas seulement aux pirates !! Il permet aux administrateurs rseaux de vrifier les ports ouverts sur leurs systmes 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 : Vous trouverez un scanner de port disponible l'adresse suivante : http://frederic.dumas.myspace.esil.univmed.fr/outils/ 1. Utiliser PortScan pour vrifier les services ouverts sur une machine du rseau laquelle vous avez accs. Comparer avec le rsultat 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 aussi tester les ports d'une machine avec un scanner de port en ligne par exemple http://nmap-online.com ou http://www.frameip.com/scan/ On pourrait dcrire d'autres 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 rsultat avec un sniffeur comme Ethereal (www.ethereal.com) ou wireshark. Attention ces outils doivent tre utilis avec attention des fins pdagogiques pour comprendre les comportements des protocoles, les utiliser pour causer un problme autrui peut entraner des consquences importantes.

* ESIL
8. Netcat : un client/serveur tester

TP rseau n2

Rseaux *

Il existe d'autre logiciels que telnet pour contacter un serveur quelconque, notamment le logiciel netcat. Sous Linux, l'excutable se nomme nc et est gnralement situ dans /usr/bin. L'avantage de nc est qu'il permet non seulement d'envoyer des caractres ASCII sur une connexion mais aussi des donnes 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 donnes. Exercice (sous Linux): 1. 2. 3. 4. Utiliser nc pour contacter le serveur TCP daytime 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. 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 laant un client nc. 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'excuter 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 rsultat. Utiliser un serveur nc pour visualiser la table de routage d'un serveur en tant log sur un autre serveur. Utiliser un serveur nc pour visualiser les ports TCP ouverts d'un serveur en tant log sur un autre serveur. Utiliser un serveur nc pour visualiser le cache ARP d'un serveur en tant log sur un autre serveur. Vous venez d'explorer la ralisation 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 diffrentes possibilits de nc en tant que serveur.

5. 6. 7.

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 ncessite pas d'installation l'adresse : http://frederic.dumas.myspace.esil.univmed.fr/outils/ Le Zip contient l'excutable NC mais aussi le fichier d'aide et les sources du programme. 1. 2. Tlcharger puis dzipper nc pour Windows dans un dossier personnel. Crer 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 dcrit dans le fichier. Ce fichier comportera une premire ligne avec la commande nc, sur la seconde ligne sera simplement crit pause. Cette seconde ligne permet de conserver la console afficher mme la commande termin. Utiliser telnetd pour contacter le serveur TCP daytime. Utiliser telnetd pour couter un port puis contacter ce port avec telnet sous Windows, puis sous Linux. 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 possibilits ... Que dire de l'option -d ?

3. 4. 5. 6.

9. Netgraph : un scanneur traceroute graphique


Netgraph est un outil permettant de scanner une plage d'adresse IP et de noter graphiquement la prsence des machines. Sa particularit est de se baser sur traceroute et non pas ping pour faire la cartographie, ce qui lui permet de reprsenter non seulement la prsence d'une machine mais aussi sa position et le chemin pour la joindre. Pour une vision plus claire sur votre carte vous pouvez fixer la position d'une machine (sur l'cran) sinon quand il y en a un grand nombre afficher, les machines ont tendances se superposer. Il ne ncessite pas d'installation tant un excutable java. Il possde aussi quelques autres fonctions comme scanner les ports de 1 1024, faire un whois d'une machine ou d'un domaine, situer gographiquement une IP, etc. Il vous permettra de sauvegarder le rsultat de vos scans et d'exporter le schma en PDF. vous en trouverez une version qui ne ncessite pas d'installation l'adresse : http://frederic.dumas.myspace.esil.univmed.fr/outils/ Le Zip contient le fichier jar mais aussi un fichier bat simplifiant l'excution. Vous trouverez aussi le readme et la licence GNU. Exercice (sous Windows): 1. 2. 3. 4. 5. 6. Tlcharger puis dzipper Netgraph pour Windows dans un dossier personnel. Ajouter la machine 139.124.21.241 Ajouter les machines de la plage d'adresse 139.124.21.245 139.124.21.254 Ajouter la machine 212.27.48.10 Quels sont les ports ouverts sur la 241 ? Quels est la situation gographique de la 212.27.48.10 ,

* ESIL
10. NetScan : un scanneur de rseau

TP rseau n2

Rseaux *

Vous trouverez NetScan dans la page http://frederic.dumas.myspace.esil.univmed.fr/outils/. Ce scanneur ne scan pas les ports d'une machine mais scan une plage d'adresse rseau trs rapidement et propose de tester certaines failles, comme la faille IPC. C'est un quivalent ipcscan sans le force brute ...

DEVOIR A RENDRE POUR LA NOTE DE TP : Utilisez les commandes vus dans le TP pour faire un schma le plus exhaustif possible du rseau de l'cole et des rseaux qui l'entourent. Vous prciserez la liste des machines connues, les serveurs, les services disponibles sur ces serveurs, les rseaux qui nous entourent, les passerelles, les serveurs DNS, mails, Web, ... et toutes informations lies de prs ou de loin aux rseaux. C'est une sorte d'enqute dans laquelle vous prciserez vos sources d'informations (comment avez vous dduit tel ou tel information, partir de quelles commandes, etc.). La source : j'ai demand G n'est pas valable !!

Das könnte Ihnen auch gefallen