Upload
ridha-soua
View
109
Download
2
Embed Size (px)
Citation preview
Les outils réseaux
V5.1
C. Drocourt
contact AT drocourt.info
Outils RéseauxOutils Réseaux
Les outils ponctuels
Utilisation du protocole ICMP
http://www.e-conseil.frhttp://drocourt.info
C. [email protected] 3
Rappels sur le protocole ICMP
Les premiers outils de surveillance sont très anciens et s'appuient sur le protocole ICMP.ICMP fait partie de la couche IP. Ce n'est pas un protocole d'administration à proprement parler mais certains outils d'administration l'utilisent. Il communique les messages d'erreurs et les autres évènements qui réclament de l'attention. Le format des messages ICMP est le suivant :
En-tête IP M essage IC M P
20 octets 1 oct. (type) 1 oct. (code) 2 oct. (CRC)
http://www.e-conseil.frhttp://drocourt.info
C. [email protected] 4
Le programme PING
PING est le premier outil pour déterminer si une machine est accessible par le réseau. Ce programme donne également le temps d'aller-retour entre le système source et le système destination. Il envoie un message de requête ICMP echo en direction de la machine spécifiée (echo-request : type=8, code=0) et si la machine destination est connectée sur le réseau, elle retourne un message ICMP réponse echo (echo-reply : type=0, code=0).
Effectuez un ping sur les machines suivantes :titan.prive.iut-amiens.frwww.u-picardie.fr
http://www.e-conseil.frhttp://drocourt.info
C. [email protected] 5
Le programme PINGLe pourcentage de paquets perdus et le temps d'aller-retour permettent aux administrateurs réseaux une analyse rapide des performances du réseau à un instant donné.
Il permet également de connaître la route utilisée par les paquets IP (option –R). L'inconvénient est que la liste maximum de routeurs traversés ne peut excéder 9 (aller-retour). Un routeur étant multi-interface, il enregistre l'adresse IP de son interface de sortie (rfc 791).Les adresses IP indiquées permettent aux administrateurs de vérifier que les paquets utilisent une route cohérente.
Exercice :- Testez la route empruntée par un ping sur www.iut-amiens.fr.- Que pouvez en conclure ?
http://www.e-conseil.frhttp://drocourt.info
C. [email protected] 6
Le programme TRACEROUTE
Traceroute est un programme permettant de suivre la route suivi par les datagrammes IP. Traceroute n'est pas limité en nombre de routeurs traversés. Il utilise le protocole UDP, ICMP et le champ TTL de l'en-tête IP.Il faut noter que les temps donnés par traceroute peuvent être erronés (les datagrammes UDP et ICMP n'utilisent pas forcément la même route et n'ont pas la même priorité) et que les adresses IP relevées sont les interfaces entrantes des routeurs. Enfin, si la route est modifiée pendant l'exécution du programme, la nouvelle est indiquée.
http://www.e-conseil.frhttp://drocourt.info
C. [email protected] 7
Le programme TRACEROUTE
Son fonctionnement est le suivant Le champ TTL est décrémenté par chaque routeur traversé jusqu'à 0, Lorsque le TTL = 0, un message ICMP "time exceeded" est renvoyé à la
machine source (avec l'adresse IP du routeur ayant généré ce message) et le datagramme est détruit,
Traceroute commence avec un TTL = 1 puis 2, 3, 4... pour obtenir tous les routeurs qui détruisent les paquets,
Le numéro de port UDP utilisé par traceroute est très élevé (utilisation improbable par une application),
Lorsque la machine destination reçoit ce datagramme, elle renvoie un message ICMP "unreachable port" (port inaccessible, type=3, code=3).
http://www.e-conseil.frhttp://drocourt.info
C. [email protected] 8
Le programme TRACEROUTE
Les adresses IP indiquées permettent aux administrateurs de vérifier que les paquets utilisent une route cohérente. Traceroute doit être préféré a ping lorsqu'il s'agit de réseaux vastes comme Internet (pour la route).
Il existe également des outils graphique de traceroute qui permettent une représentation géographique du chemin suivi. Toutefois, ces outils utilisent une base de donnée qui ne contient pas toutes les machines et routeurs du monde entier.
http://www.e-conseil.frhttp://drocourt.info
C. [email protected] 9
Le programme TRACEROUTEVidéo sur le fonctionnement de traceroute :http://drocourt.iut-amiens.fr/cours/Video/traceroute.mpg
Exercice :Quelle est la route empruntée pour atteindre les destinations suivantes :titan.prive.iut-amiens.frwww.u-picardie.frwww.yahoo.com
Remarque :La commande équivalente sous Windows est tracert.
Les outils ponctuels
Outils divers
http://www.e-conseil.frhttp://drocourt.info
C. [email protected] 11
Le programme telnetTELNET est l'outil le plus utilisé pour déterminer les paramètres sur une machine via le réseau. Il permet de se connecter à distance et de simuler un écran de terminal. Datant de 1969, il est "implémenté" avec TCP/IP sur la plupart des systèmes et utilise une négociation d'options entre le client et le serveur pour déterminer les fonctionnalités fournies à chaque extrémité. Une fois connecté, il est possible de taper des commandes et de visualiser le résultat comme sur un écran-terminal.
Une connexion par telnet permet aux administrateurs de configurer et vérifier les paramètres d'un équipement. Sur un routeur, un hub, un commutateur il aide au diagnostique d'un problème.
http://www.e-conseil.frhttp://drocourt.info
C. [email protected] 12
Le programme telnet[drocourt@etud drocourt]$ telnet switch.iut.frTrying 172.20.0.10...Connected to switch.iut.fr.Escape character is '^]'.User Access VerificationPassword: *************Switch_info>?Exec commands: <1-99> Session number to resume access-enable Create a temporary Access-List entry clear Reset functions connect Open a terminal connection disable Turn off privileged commands disconnect Disconnect an existing network connection enable Turn on privileged commands exit Exit from the EXEC help Description of the interactive help system lock Lock the terminal login Log in as a particular user logout Exit from the EXEC name-connection Name an existing network connection ping Send echo messages rcommand Run command on remote switch resume Resume an active network connection set Set system parameter (not config) show Show running system information systat Display information about terminal lines telnet Open a telnet connection terminal Set terminal line parameters traceroute Trace route to destination tunnel Open a tunnel connection where List active connectionsSwitch_info>
http://www.e-conseil.frhttp://drocourt.info
C. [email protected] 13
Le programme telnet
Ce programme permet également de tester des services ouverts en TCP, par exemple pour tester le bon fonctionnement d’un serveur de mail :
%telnet mailx.prive.iut-amiens.fr 25
Trying 172.20.0.24...
Connected to mailx.prive.iut-amiens.fr.
Escape character is '^]'.
220 titan.prive.iut-amiens.fr ESMTP Sendmail 8.13.4/8.13.4; Mon, 12 Sep 2005 10:24:01 +0200
http://www.e-conseil.frhttp://drocourt.info
C. [email protected] 14
Le programme telnetExercice :Testez si les services suivants sont opérationnels :ftp sur fgw.prive.iut-amiens.fr ?http sur tux.prive.iut-amiens.fr ?
Remarque :La liste des services se trouve dans le fichier/etc/servicesou a l'adresse :http://www.iana.org/assignments/port-numbers
Remarque :La commande telnet existe sous windows comme sous unix.
http://www.e-conseil.frhttp://drocourt.info
C. [email protected] 15
Le programme telnetATTENTION !!!Avec le programme telnet, les données échangées circulent en « clair » sur le réseau, il sera donc facile pour une personne tierce d’utiliser un « sniffeur » et ainsi de reconstituer l’ensemble de la communication établie.
Il est donc indispensable d’utiliser une connexion sécurisée comme ssh pour toutes les connexions « sensibles ».
Un programme ssh : putty est normalement disponible sous windows qui a l'avantage d'être gratuit. Connectez vous au serveur tux en ssh.
Lien : http://www.putty.nl/
http://www.e-conseil.frhttp://drocourt.info
C. [email protected] 16
Le programme netcat
La commande nc (netcat) est un outil réseau permettant, entre autre, d'établir une connexion basée sur le protocole TCP ou UDP, en tant que client, serveur ou les deux. Idéal par exemple pour tester un service, un client, une connexion, ...
Netcat est avant tout un outil Unix mais il a été “porté” sous windows.Unix : http://netcat.sourceforge.net/Windows : http://www.vulnwatch.org/netcat/
http://www.e-conseil.frhttp://drocourt.info
C. [email protected] 17
Le programme netcat
Utilisation en tant que client :nc www.iut-amiens.fr 80 (connexion tcp sur le port 80)
nc -u ns1.iut-amiens.fr 53 (connexion udp sur le port 53)
Utilisation en tant que serveur :nc -l 12345 (mode listen TCP par défaut)
Exercice :Testez la commande en exécutant un serveur en mode listen, puis un client se connectant à ce serveur.
http://www.e-conseil.frhttp://drocourt.info
C. [email protected] 18
Le programme netcatPour aller plus loin ...
Redirection d'un connexion locale UDP vers une requette distante HTTP.A TESTER !!!.
Sur le serveur : mkfifo /tmp/essrahan
nc -u -l 1564 < /tmp/essrahan | nc www.iut-amiens.fr 80 > /tmp/essrahan
Sur le client :nc -u localhost 1564
GET /
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
...
http://www.e-conseil.frhttp://drocourt.info
C. [email protected] 19
Connaître ses interfacesIl peut être utile à certains moments de vérifier la validité de ses interfaces réseaux : actif ou non, adresse IP, …Il existe sous Unix la commande ifconfig qui énumère les interfaces actives ainsi que diverses autres informations.Cette commande permet également de configurer une nouvelle interface réseau.Son équivalent sous Windows est ipconfig qui permet également de récupérer l'ensemble des paramètres IPs.
Testez ces deux commandes.-Quelle est votre adresse IP sous windows ?-Quel est le serveur DNS par défaut sous windows ?-Quelle est l’adresse IP du serveur Unix ?
http://www.e-conseil.frhttp://drocourt.info
C. [email protected] 20
La commande route
Cette commande permet de voir, d'ajouter ou d'enlever les routes se trouvant déclarées sur votre machine. Ainsi pour indiquer à votre machine où aller trouver les adresses qui ne sont pas les adresses de votre réseau local, vous devez lui indiquer la passerelle (ou gateway) vers laquelle elle doit envoyer tous les paquets. Pour voir les routes indiquer route -n (on peut aussi utiliser netstat -nr) L'option -n permet de ne pas avoir la résolution des noms.
http://www.e-conseil.frhttp://drocourt.info
C. [email protected] 21
La commande route (Unix)Sous Unix :Pour ajouter une route par defaut :route add default gateway 192.168.0.1(La passerelle vers qui j'envoie tous les paquets qui ne sont pas pour le réseau local).
Pour détruire cette route :route del default.
Pour ajouter une route vers une machine :route add -host 195.98.246.28 gateway 192.168.0.1.
Pour ajouter une route vers un réseau :route add -net 195.98.246.0 netmask 255.255.0.0 gateway 192.168.0.1
Enfin pour supprimer une de ces routes remplacer add par del.La gateway ou passerelle correspond la plupart du temps à votre routeur.
http://www.e-conseil.frhttp://drocourt.info
C. [email protected] 22
La commande route (Unix)
[rahan@fgw rahan]$ /sbin/routeKernel IP routing tableDestination Gateway Genmask Flags Metric Ref Use Iface10.1.1.129 * 255.255.255.255 UH 0 0 0 eth1172.20.0.1 * 255.255.255.255 UH 0 0 0 eth010.1.0.0 * 255.255.240.0 U 0 0 0 eth1172.20.0.0 * 255.255.0.0 U 0 0 0 eth0127.0.0.0 * 255.0.0.0 U 0 0 0 lodefault gw.iut. 0.0.0.0 UG 0 0 0 eth1[rahan@fgw rahan]$
http://www.e-conseil.frhttp://drocourt.info
C. [email protected] 23
La commande route (windows)Sous Windows :Sous windows, la commande est a peu près similaire :route ADD 157.0.0.0 MASK 255.0.0.0 157.55.80.1 METRIC 3 IF 2
destination masque passerelle métrique interface
Pour afficher la table de routage par défaut :route PRINT
Exercice :Testez cette commande sous Unix et sous windows-Sous Windows quelle est votre route par défaut ?-Quelle est la route par défaut sur le serveur Unix ?
http://www.e-conseil.frhttp://drocourt.info
C. [email protected] 24
La commande netstat
Elle permet en effet de connaître les ports en écoute sur votre machine, sur quelles interfaces, avec quels protocoles de transport (TCP ou UDP), les connexions actives et de connaître les routes. Pour voir les connexions actives en tcp netstat –nt.
L'option -a énumère les ports en cours d'utilisation ou ceux qui sont écoutés par le serveur.L'option -i donne des informations sur les interfaces réseau.
Remarque :Il faut obligatoirement renseigner 5 paramètres pour dialoguer en TCP/IP !!!
Exercice :Testez cette commande sous Unix et sous windows et identifiez les connexions UDP et TCP.
http://www.e-conseil.frhttp://drocourt.info
C. [email protected] 25
ftp : file transfert protocolLe protocole ftp (file transfert protocol) est, comme son nom l’indique, un protocole optimisé pour le transfert de fichiers. Les premiers clients à être apparus sont évidemment en ligne de commande sous Windows comme sous Unix (commande ftp).
Exemple de session :[rahan@rahan ~]$ ftpftp> open ftp.iut-amiens.frConnected to ftp.iut-amiens.fr (194.57.109.129).220 Bienvenue sur le serveur ftp de l'IUT d'Amiens.Name (ftp.iut-amiens.fr:rahan): ftp331 Please specify the password.Password:230 Login successful.Remote system type is UNIX.Using binary mode to transfer files.ftp> ls227 Entering Passive Mode (194,57,109,129,251,146)150 Here comes the directory listing.drwxr-xr-x 3 200 50 4096 Nov 10 2004 pub-rw-r--r-- 1 200 50 345 Apr 18 2002 welcome.msg226 Directory send OK.ftp> quit
221 Goodbye.
[rahan@rahan ~]$
http://www.e-conseil.frhttp://drocourt.info
C. [email protected] 26
ftp : file transfert protocolDes outils plus évolués existent également, comme par exemple sous Unix :lftp (texte), ncftp (texte), gftp (graphique).Ou sous Windows :filezilla (opensource), cuteftp, leechftp, aceftp, ...
Exercice : En ligne de commande sous Windows ET sous unix vous allez ouvrir les connections suivantes :- ftp anonyme sur ftp.prive.iut-amiens.fr,- ftp utilisant votre login et votre mot de passe sur titan.
http://www.e-conseil.frhttp://drocourt.info
C. [email protected] 27
Windows : netshLa commande “netsh” signifie “network shell” et est disponible sur les versions NT de Windows (NT, 2000, XP, ...), parfois de manière optionnelle.Cette commande permet de modifier l'ensemble des paramètres réseaux.
Exemple 1 : Désactiver le firewallnetsh firewall set opmode disable
Exemple 2 : Paramétrer une adresse IP statiquenetsh interface ip set address local static 192.168.5.10 255.255.255.0
Exemple 3 : Réinitialiser la pile TCP/IPnetsh interface ip reset log.txt
Exercice : - Testez les différentes commandes.
http://www.e-conseil.frhttp://drocourt.info
C. [email protected] 28
nmapL'outil “nmap” permet de scanner une ou des équipements sur le réseau afin de découvrir quels sont les ports ouverts, ainsi que le type de système d'exploitation.
Exemple à tester : [user@host ~]# nmap -O -sS machine.domaine.com...Not shown: 997 filtered portsPORT STATE SERVICE22/tcp open ssh80/tcp open http443/tcp open https...Running: Linux 2.6.XOS details: Linux 2.6.9 - 2.6.18, Linux 2.6.9 - 2.6.26
Nmap done: 1 IP address (1 host up) scanned in 7.09 seconds
http://www.e-conseil.frhttp://drocourt.info
C. [email protected] 29
Outils Diversiptraf (linux) : http://iptraf.seul.org/, statistiques sur le réseau.
pathping (windows) : intégré, mélange de ping et de traceroute.
mtr (linux) : intégré ou http://www.bitwizard.nl/mtr/, mélange de ping et de traceroute.