snmpmanager report

17
 Emilie MATHIEU Sabrina VALETTE Benoit BENEZECH Luc ESCHBACH Thierry VOURIOT Camille DARNET  PoucanKi  DESS Informatique Février 2004 

Upload: marwen-bou

Post on 21-Jul-2015

42 views

Category:

Documents


0 download

TRANSCRIPT

Emilie MATHIEU Sabrina VALETTE Benoit BENEZECH

Luc ESCHBACH Thierry VOURIOT Camille DARNET

PoucanKi

DESS Informatique

Fvrier 2004

SOMMAIRE

Sujet....................................................................................................................... 2 Introduction........................................................................................................... 2 Description de SNMP ........................................................................................... 3 Principe ............................................................................................................. 3 Management information base (MIB) ................................................................ 4 Protocole SNMP................................................................................................ 6 Les noms de communauts .............................................................................. 7 Les agents......................................................................................................... 7 Les managers ................................................................................................... 8 SNMP versions 1, 2 et 3.................................................................................... 8 Installation et configuration du service SNMP................................................... 9 Sous Windows XP............................................................................................. 9 Sous Linux ........................................................................................................ 10 Application SNMPManager .................................................................................. 11 Dveloppement ................................................................................................. 11 Manuel utilisateur .............................................................................................. 12 Conclusion ............................................................................................................ 16

CAS 0 Sujet 4

PoucanKi

SujetRcupration des traps SNMP sur station Windows ou Linux. Vous devez installer sur votre station NT le service SNMP. Vous devez ensuite spcifier et raliser une petite application rcuprant des traps publiques et prives pouvant tre gnres.

IntroductionDans lhistoire des rseaux, la gestion a toujours t une discipline en retard sur les autres tches effectuer. Logiquement, un rseau est dabord mis sur pied pour la transmission et la commutation dinformations. Dans un premier temps, la gestion est simple, et peut se faire avec les moyens du bord (gestion individuelle des composants). Lorsque le rseau devient complexe, le nombre de composantes saccrot souvent exponentiellement, et loprateur tend perdre la vue densemble de son rseau. Il nest ds lors plus possible dexploiter rationnellement le rseau sans disposer dun ensemble doutils qui permettent de gnrer une vue synthtique de certains aspects du rseau, et de mettre en vidence dventuelles difficults. Les cinq domaines fonctionnels de l'administration tels que dfinis dans l'OSI: La gestion des pannes : permet la dtection, la localisation, la rparation de pannes et le retour une situation normale dans l'environnement. La comptabilit : permet de connatre les charges des objets grs, les cots de communication, ... Cette valuation est tablie en fonction du volume et de la dure de la transmission. Ces relevs s'effectuent deux niveaux : Rseau et Application. La gestion des configurations : permet d'identifier, de paramtrer les diffrents objets. Les procdures requises pour grer une configuration sont la collecte d'information, le contrle de l'tat du systme, la sauvegarde de l'tat dans un historique. L'audit des performances : permet d'valuer les performances des ressources du systme et leur efficacit. Les performances d'un rseau sont values partir de quatre paramtres : le temps de rponse, le dbit, le taux d'erreur par bit et la disponibilit. La gestion de la scurit : une des fonctions de gestion concerne le contrle et la distribution des informations utilises pour la scurit. Un sous-ensemble de la MIB concerne les informations de scurit (SMIB). Il renferme le cryptage et la liste des droits d'accs.

-2-

CAS 0 Sujet 4

PoucanKi

Description de SNMPSNMP est un protocole, comme son nom lindique, pour effectuer de la gestion de rseau. Il permet de contrler un rseau distance en interrogeant les stations qui en font partie sur leur tat et en modifiant leur configuration, de faire des tests de scurit et d'observer diffrentes informations lies lmission de donnes. Il peut mme tre utilis pour grer des logiciels et bases de donnes distance. Depuis quil est devenu un standard TCP/IP, son utilisation a beaucoup augment. Dailleurs, il est le protocole le plus utilis pour grer des quipements de rseau (routeurs, ponts, etc.) et beaucoup de logiciels de gestion de rseau sont bass sur ce protocole.

Principe :SNMP fonctionne partir de quatre lments :

les MIBs (Management Information Base); les agents; le manager; le protocole SNMP.

Chaque noeud administrable du rseau (quipements et stations) possde une base de donnes contenant des informations locales au noeud, appele Management Information Base. Un agent sur le noeud se charge de collecter les informations en rponse aux interrogations d'un manager. L'agent peut prendre l'initiative de la communication avec un manager en lui envoyant des Traps pour signaler des vnements anormaux (alarmes). Le transport des informations entre les agents et le manager se fait l'aide du protocole SNMP (Simple Network Management Protocol).

-3-

CAS 0 Sujet 4

PoucanKi

Management Information Base (MIB) :Une MIB dfinit les informations spcifiques d'administration rseaux et leur signification. Elle est compose d'un ensemble de valeurs et paramtres manipulables par le systme d'administration. Les informations disponibles sont de type :

statiques : nom, constructeur, version d'un quipement; dynamiques : tat un instant donn; statistiques : compteurs, trafic depuis la mise en route de l'quipement.

Chaque noeud (ponts, routeurs, ...) est reprsent par un ensemble de variables. La dfinition et l'identification de ces variables sont prcises par la norme SMI (Structure of Management Information). Le standard est dfini dans la RFC1213. Larborescence MIB-2 : Les informations stockes dans la MIB sont ranges dans une arborescence. L'arborescence MIB-2 est une volution de la MIB disposant d'objets supplmentaires. Elle constitue une branche du groupe iso.org.dod.internet.mgmt.

-4-

CAS 0 Sujet 4

PoucanKi

Groupe system interfaces at ip icmp tcp udp egp transmission snmp

Commentaires Informations gnrales sur le systme. Informations sur les interfaces entre le systme et les sous-rseaux. Table de traduction des adresses entre internet et les sous-rseaux. Informations relatives l'implantation et l'excution d'IP (Internet Protocol). Informations relatives l'implantation et l'excution de ICMP (Internet Control Message Protocol). Informations relatives l'implantation et l'excution de TCP (Transmission Control Protocol). Informations relatives l'implantation et l'excution de UDP (User Datagram Protocol). Informations relatives l'implantation et l'excution de EGP (Exterior Gateway Protocol). Informations sur la transmission et sur les protocoles utiliss par chaque interface. Informations relatives l'implantation et l'excution de SNMP.

Object identifier : Les variables de la MIB-2 sont identifies par le chemin dans l'arborescence, not de deux faons :

l'aide des noms de groupes : iso.org.dod l'aide des numros des groupes : 1.3.6.

Les MIBs propritaires : La description de l'arborescence MIB est normalise par l'ISO mais certains constructeurs d'quipements rseaux ont dfini des branches supplmentaires afin d'y inclure des informations spcifiques leur matriel. Ces branches sont appeles MIBs propritaires. Les MIBs propritaires sont consultables par des managers spcifiques qui peuvent fonctionner de faon autonome (SPECTRUM de Cabletron) ou tre intgrs aux platesformes du march.

-5-

CAS 0 Sujet 4

PoucanKi

Protocole SNMP :Le protocole SNMP est charg d'assurer le transport d'informations entre le manager et les agents. Il doit prendre en compte :

la scrutation des agents : le manager (station administration) questionne les diffrents agents. la remonte des alarmes en provenance des agents.

Ces fonctions sont assures par cinq primitives de service :

Primitives GetRequest GetNextRequest SetRequest GetResponse Trap

Descriptions le manager demande une information l'agent le manager demande l'information suivante l'agent le manager initialise une variable de l'agent l'agent retourne l'information au client interruption - l'agent envoie une information un client

-6-

CAS 0 Sujet 4

PoucanKi

Les noms de communauts :L'accs aux informations des MIBs est contrl par un mcanisme simple utilisant des noms de communauts. Un nom de communaut peut tre assimil un mot de passe connu par l'agent et utilis par le manager pour se faire reconnatre. Les noms de communauts sont configurs sur l'agent et autorisent trois types d'accs sur les variables de la MIB gres par l'agent :

Pas d'accs Read-Only Read-Write.

Le nom de communaut circule en clair sur le rseau. Beaucoup d'administrateurs prfrent ainsi limiter l'accs sur les MIBs en lecture seule et se dplacent sur les quipements pour modifier certaines valeurs.

Les agents SNMP :L'agent SNMP collecte les informations de la MIB de l'quipement et rpond aux requtes du manager. On trouve maintenant des agents SNMP sur tout quipement dit administrable. Les constructeurs fournissent galement des agents pour les stations du rseau. Toutefois, certains anciens quipements administrables ne sont pas conformes SNMP. Dans ce cas, il peut tre possible d'utiliser un proxy-agent sur un quipement SNMP, qui va servir d'intermdiaire avec l'quipement non SNMP.

-7-

CAS 0 Sujet 4

PoucanKi

Les managers SNMP :Les managers sont chargs de questionner les agents et de fournir l'administrateur les informations rcupres. Ils doivent galement grer les Traps et prvenir l'administrateur. Les outils SNMP vont du simple "browser" de MIB qui permet juste de lire les variables, jusqu' la plate-forme d'administration qui peut les afficher de faon pertinente sur des cartes du rseau. Le march des plates-formes d'administration est rparti entre deux grandes familles :

les constructeurs de systmes distribus (HP, BULL, IBM) : o HP Openview (pour Unix ou Windows NT) o ISM o Tivoli Les constructeurs de solutions pour rseaux locaux o Novell Network Management System

SNMP versions 1, 2 et 3 :Il existe 3 versions du protocole SNMP : SNMPv1, SNMPv2 et SNMPv3.

SNMP v1 en 1987 : Volont de simplicit : protocole non-connect, fonctionne avec un rseau dficient sans lencombrer asynchrone le nom de la communaut circule en clair Problme de scurit SNMP v2 en 1993 : Meilleure scurit : transport avec authentification chiffrement des donnes possible version peu rpandue, na jamais perc sur le march SNMP v3 en 1998 : Modle se voulant plus gnral, incluant les autres versions : davantage dinformations pour identifier les diffrentes entits scurit accrue, avec des droits dutilisateurs Version en pleine expansion

-8-

CAS 0 Sujet 4

PoucanKi

Installation et configuration du service SNMPSous Windows XP :Installation :Allez dans le panneau de configuration : Ajout/suppression de logiciels, ajouter ou supprimer des composants Windows, slectionnez "Outils de gestion et d'analyse", cliquez sur "Dtails", cochez "SNMP (Protocole simplifi de gestion de rseaux)" Configuration :

Ouvrir le service SNMP dans la liste des services de Windows. Ensuite il suffit de remplir les champs Contact et Emplacement dans longlet Agent. Puis dans longlet Scurit, on ajoute une nouvelle communaut publique avec les droits en lecture seule. On peut galement ajouter une autre communaut avec des droits en criture. Enfin on spcifie les adresses IP des machines qui communiqueront avec lagent SNMP.

-9-

CAS 0 Sujet 4

PoucanKi

Sous Linux :Installation :Il suffit d'installer les paquets NET-SNMP et NET-SNMP UTILS. Site web: http://net-snmp.sourceforge.net

Configuration: La configuration est faite pour que : Toute machine du LAN puisse lire la totalit de la MIB, travers la communaut "public" Seule la machine locale puisse crire, travers la communaut "private". Commencez par sauvegarder le fichier /etc/snmp/snmpd.conf qui a t cr avec l'installation. Crez ensuite un nouveau fichier /etc/snmp/snmpd.conf comme suit :# 1 crer des relations entre les communauts et des noms de scurit # nom.secu source communaute com2sec Local localhost private com2sec LocalNet 192.168.0.0/24 public # 2 crer des relations entre des noms de groupes et les noms de scurit # nom.groupe version nom.secu group RWGroup v1 Local group ROGroup v1 LocalNet # 3 Crer les diverses vues qui seront autorises aux groupes # view tout included .1 # 4 Indiquer les accs aux vues suivant les groupes # nom.groupe contexte modele.secu niveau.secu prefixe lecture ecriture notification access ROGroup "" v1 noauth exact tout none none access RWGroup "" v1 noauth exact tout tout none

Relancez le dmon SNMP par la commande : /etc/init.d/snmps restart

- 10 -

CAS 0 Sujet 4

PoucanKi

Application SNMPManagerDveloppement :Le choix du langage de programmation ft trs rapidement effectu. En effet, le langage Java a t choisi pour de nombreuses raisons : - nous avions dj une bonne connaissance de ce langage - portabilit des applications sur toutes les plates-formes (Windows, Unix, Linux, Macintosh, .). - programmation oriente objet qui permet un meilleur dcoupage de lapplication. - API Swing permettant la cration dinterfaces graphiques trs rapidement. - rutilisation de packages dj dvelopps dans d'autres applications Pour la communication avec les agents SNMP on utilise un package Java open source dvelopp par Jonathan Sevy. Ce package contient notamment les diffrents types de donnes utiliss par SNMP, ainsi que des classes permettant lenvoi de requtes GET et SET. De plus une interface nous permet de capturer les traps SNMP. Ce package utilise la version 1 de SNMP qui est compatible avec les autres versions de SNMP puisque celle-ci est une sous-couche versions 2 et 3. Les classes du package SNMP : (extrait de la javadoc)

Class SummarySNMPBERCodec SNMPBitString SNMPCounter32 SNMPCounter64 SNMPGauge32 SNMPInteger SNMPIPAddress SNMPMessage SNMPNSAPAddress SNMPNull SNMPObject SNMPBERCodec defines methods for converting from ASN.1 BER encoding to SNMPObject subclasses. Class representing a general string of bits. Defines a 32-bit counter, whose value wraps if initialized with a larger value. Defines a 64-bit counter, whose value wraps if initialized with a larger value. Defines a 32-bit gauge, whose value "pegs" at the maximum if initialized with a larger value. Defines an arbitrarily-sized integer value; there is no limit on size due to the use of Java.lang.BigInteger to store the value internally. Class to hold IP addresses; special case of SNMP Octet String. Defines the SNMPMessage class as a special case of SNMPSequence. Defines class for holding physical 6-byte addresses. Object representing the SNMP Null data type. Abstract base class of all SNMP data type classes.

- 11 -

CAS 0 Sujet 4

PoucanKi

SNMPObjectIdentifier SNMPOctetString SNMPPDU SNMPSequence SNMPTimeTicks SNMPTrapPDU SNMPUInteger32 SNMPUnknownObject SNMPv1AgentInterface SNMPv1CommunicationInterface SNMPv1TrapListenerInterface

Class representing ASN.1 object identifiers. Class representing a general string of octets. The SNMPPDU class represents an SNMP PDU from RFC 1157, as indicated below. One of the most important SNMP classes. SNMP datatype used to represent time value. The SNMPTrapPDU class represents an SNMP Trap PDU from RFC 1157, as indicated below. Defines a 32-bit unsigned integer value; wraps if initialized with a larger value. Used when an unknown SNMP object type is encountered. The class SNMPv1AgentInterface implements an interface for responding to requests sent from a remote SNMP manager. The class SNMPv1CommunicationInterface defines methods for communicating with SNMP entities. The class SNMPv1TrapListenerInterface implements a server which listens for trap messages sent from remote SNMP entities. The class SNMPv1TrapSenderInterface implements an interface for sending trap messages to a remote SNMP manager. The SNMPVarBindList class is a specialization of SNMPSequence that contains a list of SNMPVariablePair objects. The SNMPVariablePair class implements the VarBind specification detailed below from RFC 1157.

SNMPv1TrapSenderInterface

SNMPVarBindList SNMPVariablePair

Manuel utilisateur :Linterface de SNMPManager utilise une reprsentation sous la forme de trois onglets ; Manager, Inquisitor, Traps. Un log, en bas de linterface, tient au courant lutilisateur sur les traitements en cours ainsi que sur les ventuelles erreurs et les traps reues.

- 12 -

CAS 0 Sujet 4

PoucanKi

Onglet Manager : Cette partie de lapplication permet de surveiller et dinterroger rapidement plusieurs agents SNMP du rseau.

La zone New host permet dajouter de nouvelles machines surveiller. La zone Hosts list montre un tableau contenant toutes les machines que le manager surveille. La colonne status montre si lagent SNMP rpond aux requtes et la colonne sys affiche le systme dexploitation prsent sur la machine. Ce tableau est rafrachit toutes les soixante secondes. Enfin, la slection dune ligne permet dafficher dans la zone Host informations quelques informations fournies par lagent SNMP.

- 13 -

CAS 0 Sujet 4

PoucanKi

Onglet Inquisitor : Cette page permet dinterroger ou de changer certaines variables dun agent SNMP.

La zone Informations permet de spcifier ladresse IP et la communaut de lagent SNMP quon veut interroger. Ensuite, on choisit un numro OID (qui correspond aux numros de groupes dans la MIB) pour recevoir ou changer une valeur particulire. Le champs Value permet de donner une nouvelle valeur et le champ Value type dfinit le type de cette nouvelle valeur. Les commandes suivantes sont disponibles : - Get OID Value : retourne la valeur correspondant lOID spcifi. - Get Next OID : retourne la valeur correspondant lOID suivant. - Get All OID : retourne toutes les valeurs de la MIB. - Set OID Value : change la valeur correspondant lOID spcifi.

- 14 -

CAS 0 Sujet 4

PoucanKi

Onglet Traps : Affiche les diffrentes traps reues par lapplication.

Lorsquune trap a t envoye au manager par un agent, on affiche les donnes de cette trap dans la zone de texte. Un message dans le log ainsi quun signal sonore permet davertir galement lutilisateur lorsquune trap est reue. Pour gnrer une trap, on peut utiliser la commande snmptrap disponible dans le package SNMP-NET.

- 15 -

CAS 0 Sujet 4

PoucanKi

Conclusion

SNMP est un des protocoles les plus utiliss dans la gestion de rseaux, la raison de son succs est principalement sa simplicit qui lui permet notamment dtre implant dans de nombreux priphriques (routeurs, switch, ). Par contre dans la version 1 du protocole, un gros problme de scurit se pose du fait de la circulation du nom de communaut en clair. La version 2 a corrig ce problme mais na pas vraiment russi simplanter chez les utilisateurs. Heureusement la version 3 qui corrige galement ces problmes est actuellement en pleine expansion. Les applications lies ce protocole sont trs nombreuses et permettent notamment dvaluer les performances dun rseau, de configurer des priphriques distance ou encore de dtecter dventuelles pannes matrielles.

- 16 -