Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Développement Discussion :

[snmp] format de traps snmp


Sujet :

Développement

  1. #1
    Membre du Club
    [snmp] format de traps snmp
    Bonjour
    je viens de commencer un projet et j'ai des bornes wifi qui m'envoient des traps snmp pour plusieurs raisons. Donc j'ai installé snmp sur ma machine linux et je viens de configurer le fichier snmptrapd.conf en lui mettant comme traphandle mon programme php triangulation.php qui traite les traps puis extrait les information nécessaires.
    J'ai entendu dire que les traps reçus changent de format (hexadecimal, ascii,...) quelque fois donc je voudrais forcer le leur affichage en un seul format.
    J'ai entendu parler d'options du lanceur du service snmptrapd qui peuvent aider mais je ne sais pas ce que c'est car je suis débutant en réseau.
    quelqu'un pourrait m'aider svp
    Merci

  2. #2
    Membre du Club
    ok maintenant je vois ce que c'est le lanceur du service snmptrapd. c'est un fichier genre etc/rc.d/snmptarpd. par contre je ne le trouve pas je trouve que etc/init.d/snmpd
    pour mon projet je n'ai pas besoin de configurer snmpd car ma machine sert juste à recevoir des traps. mais il me faut configurer snmptrapd.conf ce que j'ai fait. mais pour quoi je n'ai pas de lanceur snmptrapd?
    merci

  3. #3
    Membre du Club
    Bon, en fait j'ai compris un peu mieux, j'ai ouvert le fichier etc/init.d/snmpd et je me suis rendu compte qu'il fallait configurer etc/default/snmpd ce qui va me permettre d'avoir mon fichier var/run/snmptrapd.pid après avoir lancer le service.
    mais je ne sais toujours pas comment forcer l'affichage des traps en un seul format don je retourne à mes moutons.
    si vous avez une idée n'hesitez pas
    MERCI

  4. #4
    Membre habitué
    Salut,

    Bon vu que t'as l'air d'en connaitre déjà pas mal, ça va m'epargner de trop détailler.


    Donc j'ai installé snmp sur ma machine linux et je viens de configurer le fichier snmptrapd.conf en lui mettant comme traphandle mon programme php triangulation.php qui traite les traps puis extrait les information nécessaires.
    J'espère que tu parle de net-snmp, et j'aimerais jeter un coup d'oeil au fichier triangulation.php si possible.


    ok maintenant je vois ce que c'est le lanceur du service snmptrapd. c'est un fichier genre etc/rc.d/snmptarpd. par contre je ne le trouve pas je trouve que etc/init.d/snmpd
    Tout dépend de ta distribution et vu que tu ne l'as pas précisé on ne peut pas te donner l'emplacement exact du fichier.


    je me suis rendu compte qu'il fallait configurer etc/default/snmpd ce qui va me permettre d'avoir mon fichier var/run/snmptrapd.pid après avoir lancer le service.
    Bon ok, va falloir que j'intervienne la.

    Mon explication tient pour la distribution fedora. Tester et vérifier sur des switchs.

    snmptrap est un daemon qui écoute les traps SNMP circulant sur le port UDP 162. Donc truc a la con qu'on oublie souvent : ouvrir le port 162.
    Il faut configurer le fichier “/etc/snmp/snmptrap.conf” pour exécuter des commandes “traphandle” qui vont permettre d'exécuter d'autres scripts (SHELL ou PERL ou PYTHON) selon le trap reçu.
    Voyons dans un premier temps comment configurer ce deamon, et nous verrons ensuite comment récupérer ces données et les traiter.

    Il y a deux fichiers à configurer, le premier (snmpd.conf) permet d'autoriser les traps à arriver sur ton poste, et donc de recevoir les traps; le second (snmptrapd.conf) permet de spécifier le format des traps et de les traiter.

    Premier fichier : /etc/snmp/snmpd.conf

    voila a quoi ressemble le mien :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    #SECTION Trap Destinations
    
    #trapcommunity: Defaut trap sink community to use
    #arguments: community string
    
    trapcommunity secret
    
    #trapsink: A SNMPv1 trap receiver
    #arguments: host [community][portnum]
    
    trapsink localhost
    trapsink network // définie plus haut dans ton fichier snmpd.conf
    
    // on peut aussi mettre des adresses ex trapsink 192.168.0.68
    
    #inform: A SNMPv2 inform (acknowedged trap receiver)
    #arguments: host [community][portnum]
    
    informsink localhost
    informsink network
    
    #authtrapenable: Should we send traps when authentification failures occur
    #arguments: 1|2 (1=yes, 2=no)
    
    authtrapenable 1
    il ne reste plus qu'à lancer l'agent snmpd :
    # /etc/rc.d/init.d/snmpd restart
    On pourra lancer dans une autre fenêtre un sniffer réseau comme tcpdump pour voir les échanges agent SNMP/manager SNMP :
    # tcpdump -vv -i lo

    Deuxième fichier: /etc/snmp/snmptrapd.conf

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    format2 %02.2l/%02.2m/%y %02.2h:%02.2j:%02.2k %W de %A\n
    disableAuthorization yes
    doNotRetainNotificationLogs yes
    traphandle default /var/www/html/recuptraps.pl
    et voila le fichier recuptraps.pl :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    
    #!/usr/bin/perl
    #A simple trap handler
    
    my $TRAP_FILE = "/tmp/traps_all";      
    
    my $host = <STDIN>;     # Read the Hostname - First line of input from STDIN
     chomp($host);
    my $ip = <STDIN>;       # Read the IP - Second line of input
     chomp($ip);
    
    while(<STDIN>) {
            chomp($_);
            push(@vars,$_);
    }
    
    open(TRAPFILE, ">> $TRAP_FILE");
    $date = `date`;
    chomp($date);
    print(TRAPFILE "New trap received: $date for $OID\n\nHOST: $host\nIP: $ip\n");
    foreach(@vars) {
    	if(@vars =~ /SNMPv2-SMI/){
    		print "c'est rien\n";
    	}
    	else {
            print(TRAPFILE "TRAP: $_\n");
    	}
    }
    print(TRAPFILE "\n----------\n");
    close(TRAPFILE);
    Ouais, c'est pas génial, mais ça ira. Tu peux le modifier. Surtout que j'ai du le trouvé sur le net.

    Ensuite on fait un test de compilation :
    /usr/sbin/snmptrapd -c /etc/snmp/snmptrapd.conf
    Si aucune erreur n'est renvoyée, le fichier de configuration est correct.


    Revenons à la configuration du fichier snmptrapd.conf, et expliquons l'utilité de chaque ligne:

    La première ligne format2 %02.2l/%02.2m/%y %02.2h:%02.2j:%02.2k %W de %A\n
    permet de spécifier le format des données reçues.

    J'ai entendu dire que les traps reçus changent de format (hexadecimal, ascii,...) quelque fois donc je voudrais forcer le leur affichage en un seul format.
    C'est la dessus qu'il faut jouer pour modifier le format.

    L'option disableAuthorization a été introduite pour des raisons de sécurité et est devenue obligatoire avec la version 5.3 du paquet net-snmp. Cette option n'est pas reconnue par les versions antérieures.

    Mettre « doNotRetainNotificationLogs yes » permet d'annuler le support de NOTIFICATION-LOG-MIB. Normalement, le programme snmptrapd conserve les traps reçues, lesquelles peuvent être récupérées par la suite.

    Voila, j'espère que tu y verras plus clair maintenant.

  5. #5
    Membre du Club
    merci beucoup pour ton aide alors
    J'espère que tu parle de net-snmp, et j'aimerais jeter un coup d'oeil au fichier triangulation.php si possible.
    oui je parle de snmp, mais en ce qui concerne le fichier triangulation.php je viens de le créer et j'ai mis dedans juste la partie finale de mon projet. C'est à dire la partie du code qui me calcule les coordonnées qu'il me faut...
    Donc il me manque toute la partie qui analyse les traps et qui prends les informations necessaires.
    Tout dépend de ta distribution et vu que tu ne l'as pas précisé on ne peut pas te donner l'emplacement exact du fichier.
    En fait j'ai ubuntu, j'ai cherché et je trouve que le fichier etc/init.d/snmpd dont le début ressemble à

    #! /bin/sh -e
    ### BEGIN INIT INFO
    # Provides: snmpd snmptrapd
    # Required-Start: $network $local_fs
    # Required-Stop: $network $local_fs
    # Default-Start: 2 3 4 5
    # Default-Stop: 0 6
    # Short-Description: SNMP agents
    # Description: NET SNMP (Simple Network Management Protocol) Agents
    ### END INIT INFO


    Donc je crois qu'il est valable poue snmp et snmptrapd, non?
    aussi, pour le fichier recuptraps.pl il sert juste à récupérer les traps. je dois le changer non? car mon fichier triangulation.php doit récuperer les traps que m'envoient les bornes wifi hp, puis il en extrait les rssi pour pouvoir faire la partie triangulation... mais pour l'instant il est presque vide .

    Ensuite on fait un test de compilation :
    /usr/sbin/snmptrapd -c /etc/snmp/snmptrapd.conf
    Si aucune erreur n'est renvoyée, le fichier de configuration est correct.
    j'ai essayé ce qui est au dessus et il n' ya pas eu d'erreurs.
    voilà comment j'ai configuré mon etc/snmp/snmptrapd.conf :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    traphandle default /chemin/triangulation.php >> /chemin/trace.log
    disableAuthorization yes
    pour ce qui de snmpd.conf je n'ai pas eu à le changer.

    La première ligne format2 %02.2l/%02.2m/%y %02.2h:%02.2j:%02.2k %W de %A\n
    permet de spécifier le format des données reçues.
    je vais essayer celle ci maintenat.

    Merci encore. j'éspère que ce que j'ai mis est assez claire.
    si tu as un suggestion n'hesites pas

  6. #6
    Membre habitué
    Re,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    j'éspère que ce que j'ai mis est assez claire.
    Heu... alors oui et non, j'y viens.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    J'ai cherché et je trouve que le fichier etc/init.d/snmpd.
    ça c'est l'exécutable, faut pas y toucher!
    Ce que je voulais c'est voir la partie du fichier snmpd.conf qui concerne les traps, c'est ce fichier et snmpdtrapd.conf qu'il faut configurer. C'est tout.

    Et j'aimerais voir le fichier etc/snmp/snmptrapd.conf entier. As-tu spécifier le format en début.

    n'ai pas peur d'utiliser man snmptrapd pour t'aider.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    si tu as une suggestion n'hesites pas
    Ok, donc tout d'abord, tu peux dans un premier temps tester en local, en envoyant des traps bidon pour voir comment ton programme réagit, et n'hésite pas à t'aider de ethereal pour vérifier ce qui se passe sur le réseau.


    Ouvre sur deux terminaux différents, pour tester :

    Premier terminal :

    (1)[root@XXX]# snmptrapd -f -Le

    (3)2006-05-29 11:33:14 0.0.0.0(via UDP: [192.168.XX.XX]:32920) TRAP, SNMP v1, community secret HOST-RESOURCES-MIB::hrProcessorLoad.8 Warm Start Trap (0) Uptime: 0:00:00.01

    Deuxième terminal :

    (2) [root@XXX]# snmptrap -v1 -c secret 192.168.XX.XX .1.3.6.1.2.1.25.3.3.1.2.8 0 1 i 1

    Explications :

    (1) On lance le programme snmptrapd pour récupérer des traps
    (2) dans un autre terminal, on lance la commande permettent de générer une trap
    (3) On récupère bien la trap


    Voila pour le tester;

    Sinon j'ai une question.
    On est d'accord sur le fait que triangulation.php sera lancé à chaque fois qu'une trap sera reçu. J'espère donc que ton script n'est pas trop lourd.

    Personnellement, j'avais travaillé différemment, le script recuptraps.pl n'a pour role que de rendre sous un fichier text les traps reçues.
    Un autre sript lancé régulièrement avec cron me permetter de traiter ce fichier et d'envoyer dans une base les données pertinante.
    Ainsi, la lecture des données se faisait avec php et la base de données pour pouvoir jouer sur cette base.
    (bon ok c'est pas très clair, mais au final j'étais content)
    Découper le travail permet de mieux voir ou se situe le problème.

    j'aimerais savoir aussi si tu arrives à recevoir les traps ou si le soucis provient du fait de pouvoir traiter les données. On sait pas trop ou tu en es.

    voila, informe nous de ton avancé.
    Bon courage.

  7. #7
    Membre du Club
    Salut,
    Donc voilà tout ce que contient le fichier snmptrapd.conf sauf les commentaires :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    format2 %02.2l/%02.2m/%y %02.2h:%02.2j:%02.2k %W de %A\n
    traphandle default /home/cric/triangulation.php >> /home/cric/trace.log
    disableAuthorization yes
    J'ai mis un echo "bonjour" dans mon triangulation.php et J'ai remarqué que mon fichier trace.log affiche bien bonjour, en plus plusieurs ligne "bonjour" s'ajoutent toutes seules.
    Est ce que ça veut dire que mon programme traphandler s'exécute et que je reçois bien des traps?

    dans le fichier /etc/init.d/snmpd ça parle du fichier de configuration /etc/default/snmpd que j'ai configuré comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    # This file controls the activity of snmpd and snmptrapd
    
    # MIB directories.  /usr/share/snmp/mibs is the default, but
    # including it here avoids some strange problems.
    export MIBDIRS=/usr/share/snmp/mibs
    
    # snmpd control (yes means start daemon).
    SNMPDRUN=no
    
    # snmpd options (use syslog, close stdin/out/err).
    SNMPDOPTS='-Lsd -Lf /dev/null -u snmp -I -smux -p /var/run/snmpd.pid 127.0.0.1'
    
    # snmptrapd control (yes means start daemon).  As of net-snmp version
    # 5.0, master agentx support must be enabled in snmpd before snmptrapd
    # can be run.  See snmpd.conf(5) for how to do this.
    TRAPDRUN=yes
    
    # snmptrapd options (use syslog).
    TRAPDOPTS='-Lsd -p /var/run/snmptrapd.pid'
    As-tu spécifier le format en début.
    J'ai mis la ligne que tu m'avait donné dans le snmptrapd.conf mais je ne sais pas encore quel format cela va me donner

    Pour les tests, quand je fais sur le premier terminal
    àa me renvoie
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    /etc/snmp/snmptrapd.conf: line 19: Warning: Unknown token: disableAuthorization.
    2007-07-10 14:15:12 NET-SNMP version 5.2.3 Started.
    couldn't open udp:162 -- errno 98 ("Address already in use")
    je crois qu'il faut ouvrir le port 162 ou peut être il est dèja utilisé?
    enfin ça reste un peu ambigue

    Sinon j'ai une question.
    On est d'accord sur le fait que triangulation.php sera lancé à chaque fois qu'une trap sera reçu. J'espère donc que ton script n'est pas trop lourd.

    Personnellement, j'avais travaillé différemment, le script recuptraps.pl n'a pour role que de rendre sous un fichier text les traps reçues.
    Un autre sript lancé régulièrement avec cron me permetter de traiter ce fichier et d'envoyer dans une base les données pertinante.
    Le programme triangulation.php sert à détecter des machines connectées en mode ad hoc. Donc à chaque fois que mes bornes wi fi en détectent une, elles m'envoient des traps que mon programme va récuperer pour calculer les coordonnées de la machine ad hoc par triangulation... donc il doit être lancé à chaque fois qu'une trap est reçu car il doit immédiatement les traiter pour déterminer les coordonnées

    j'aimerais savoir aussi si tu arrives à recevoir les traps ou si le soucis provient du fait de pouvoir traiter les données. On sait pas trop ou tu en es.
    Je crois que je reçois bien des traps puisque le fichier trace.log est modifié régulièrement, en plus il affiche pleins de "bonjour" que j'avais mis comme test dans triangulation.php

    par contre si je les reçois bien, comment puis je faire pour les visualiser?

    donc voilà, est ce qu'il faut que je change des trucs?
    Je commence à comprendre pas mal de truc mais reste beaucoup à faire.
    merci pour l'aide

  8. #8
    Membre du Club
    ah je comprends pourquoi snmptrapd -f -Le ne marchait pas...
    j'avais dèja lancer snmpd en faisant etc/init.d/snmpd start donc le port 162 était dèja utilisé par le deamon...suis-je bête
    maintenant, avant de commencer à bien coder mon triangulation.php, je voudrais qu'il m'affiche le contenu des traps que je reçois. Est ce qu'il faut faire le même script que dans recuptraps.pl?
    merci

  9. #9
    Membre du Club
    re,
    Ouais, c'est pas génial, mais ça ira. Tu peux le modifier. Surtout que j'ai du le trouvé sur le net.
    Je suis en train de changer le fichier recuptraps.pl en php par contre je ne sais pas comment utiliser <STDIN> en php?
    est ce que t'aurait une idée stp?
    merci

  10. #10
    Membre habitué
    Re,

    Citation Envoyé par zakalova

    /etc/default/snmpd que j'ai configuré comme ceci :
    Code :

    # This file controls the activity of snmpd and snmptrapd
    # MIB directories. /usr/share/snmp/mibs is the default, but
    # including it here avoids some strange problems. export MIBDIRS=/usr/share/snmp/mibs
    # snmpd control (yes means start daemon).
    SNMPDRUN=no
    # snmpd options (use syslog, close stdin/out/err).
    SNMPDOPTS='-Lsd -Lf /dev/null -u snmp -I -smux -p /var/run/snmpd.pid 127.0.0.1'
    # snmptrapd control (yes means start daemon). As of net-snmp version
    # 5.0, master agentx support must be enabled in snmpd before snmptrapd
    # can be run. See snmpd.conf(5) for how to do this.
    TRAPDRUN=yes
    # snmptrapd options (use syslog). TRAPDOPTS='-Lsd -p /var/run/snmptrapd.pid'

    heu... la je comprend pas trop ce fichier. Ce que je voulais c'est savoir si ce fichier contenait bien :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    trapsink 192.168.X.X
    informsink 192.168.X.X
    Sinon qu'est ce que te donne le test avec snmptrapd -f -Le...?

    Et essaye de faire des tests sans modifier le fichier recuptraps.pl.
    Et n'oublie pas de créer le fichier /tmp/traps_all et de lui donner les droits nécessaires.

    Tu devrais normalement obtenir des données de la forme suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    New trap received: jeu jun 29 15:58:28 CEST 2006 for
    
    HOST: 192.168.10.9
    IP: UDP: [192.168.10.9]:50439
    TRAP: DISMAN-EVENT-MIB::sysUpTimeInstance 0:7:31:25.56
    TRAP: SNMPv2-MIB::snmpTrapOID.0 SNMPv2-SMI::enterprises.9.0.1
    TRAP: SNMPv2-SMI::enterprises.9.2.9.3.1.1.1.1 5
    TRAP: TCP-MIB::tcpConnState.192.168.10.9.80.192.168.10.57.1438 finWait2
    TRAP: SNMPv2-SMI::enterprises.9.2.6.1.1.5.192.168.10.9.80.192.168.10.57.1438 11
    TRAP: SNMPv2-SMI::enterprises.9.2.6.1.1.1.192.168.10.9.80.192.168.10.57.1438 19
    TRAP: SNMPv2-SMI::enterprises.9.2.6.1.1.2.192.168.10.9.80.192.168 10.57.1438 168
    TRAP: SNMPv2-SMI::enterprises.9.2.9.2.1.18.1 ""
    TRAP: SNMP-COMMUNITY-MIB::snmpTrapAddress.0 192.168.10.9
    TRAP: SNMP-COMMUNITY-MIB::snmpTrapCommunity.0 "secret"
    Et n'oublie pas de faire des tests avec ethereal pour voir ce qui se passe sur le réseau.

    Car de voir que ton programme traingulation.php ecrit bonjour, c'est un bon début mais faut voir ou ça bloque. Si ton pc bloque les traps ou ne les gère pas comme voulu...

    Ps: non je sais pas pour transformer le script perl en php.

  11. #11
    Membre du Club
    yeah
    j'attendais ta réponse avec impatience
    en fait j'ai une question stp :
    quand je lance recuptraps.pl dans un terminal , il me demande de rentrer un host puis un ip. lesquels dois-je rentrer? ceux de ma machine ou ceux des bornes wifi qui m'envoient les traps? si je le mets
    voilà ce qui m'affiche le fichier traps_all

    TRAP: DISMAN-EVENT-MIB::sysUpTimeInstance 29:1:18:28.00
    TRAP:

    ----------


    deuxième truc, est ce que tu peux m'expliquer la partie du if dans recuptraps.pl?
    je ne comprends pas bien quand il affiche "ce n'est rien" ou les traps.

  12. #12
    Membre du Club
    hindo
    Citation Envoyé par zakalova
    yeah
    j'attendais ta réponse avec impatience
    en fait j'ai une question stp :
    quand je lance recuptraps.pl dans un terminal , il me demande de rentrer un host puis un ip. lesquels dois-je rentrer? ceux de ma machine ou ceux des bornes wifi qui m'envoient les traps? si je le mets
    voilà ce qui m'affiche le fichier traps_all

    TRAP: DISMAN-EVENT-MIB::sysUpTimeInstance 29:1:18:28.00
    TRAP:

    ----------


    deuxième truc, est ce que tu peux m'expliquer la partie du if dans recuptraps.pl?
    je ne comprends pas bien quand il affiche "ce n'est rien" ou les traps.

    bonjour,
    je voudrais savoir qu'est ce que ça donne si tu fais : snmpd -Le ???
    please help

  13. #13
    Membre habitué
    Re,

    Bon gros problème de compréhension.
    Le script perl recuptraps.pl a pour but de récupérer les traps qui circulent sur le réseau.
    Comment?
    grace au fichier de configuration snmptrapd.conf et plus specifiquement de la ligne suivante:
    traphandle default /var/www/html/recuptraps.pl

    En gros a chaque trap reçu, cela lance le programme recuptraps.pl.
    Ce programme a pour objectif de transférer les données dans le fichier texte : /tmp/traps_all de manière lisible.

    Ce programme ne sert pas à être lancé manuellement. Car ce sont les equipements qui envoient les traps et donc lance le programme recuptraps.pl avec les renseignements inclus dans la trap.

    Laisse lancer le demon snmptrap et je sais pas, branche, débranche des équipements pour qu'ils envoient des traps. Ensuite regarde ce qu'il se passe dans le fichier.

    Sinon pour la partie : "ce n'est rien", c'est juste un truc que j'ai rajouter pour trier les données. En gros toutes les données qui contiennent /SNMPv2-SMI/ je ne les prend pas en compte.

  14. #14
    Membre habitué
    Citation Envoyé par hindous

    bonjour,
    je voudrais savoir qu'est ce que ça donne si tu fais : snmpd -Le ???
    please help
    Je connais pas cette commande.
    fais man snmpd pour savoir.

    Sinon le truc que je voulais que vous testiez c'était de faire :
    #snmptrapd -f -Le

    ce qui lance le démon snmptrapd dans un terminal.

    Dans un second terminal :
    #snmptrap -v1 -c secret votre_adresse .1.3.6.1.2.1.25.3.3.1.2.8 0 1 i 1

    Et observer ce qui se passe dans le premier terminal.

  15. #15
    Membre du Club
    hindo
    Citation Envoyé par fara morgana
    Je connais pas cette commande.
    fais man snmpd pour savoir.

    Sinon le truc que je voulais que vous testiez c'était de faire :
    #snmptrapd -f -Le

    ce qui lance le démon snmptrapd dans un terminal.

    Dans un second terminal :
    #snmptrap -v1 -c secret votre_adresse .1.3.6.1.2.1.25.3.3.1.2.8 0 1 i 1

    Et observer ce qui se passe dans le premier terminal.

    Q1 : le fichier recupera.pl, il fait koi? je dois le creer manuellement??
    Q2 : tu connais la directive : load et disk ? ( en fait , load sert à ne pas depasser certain seuil en lui precisant biensur )
    alorts , mon prob c que j'ai specifier sur mon fichier snmpd0conf load ....... par ex ! mais il se passe rien , alors kil doit m'envoyer une trap en m'avartissant ke le load overage est depassé!! mais RIEN que DALE!!!
    je naaaaaaaaaage !!!!

    si oui,

  16. #16
    Membre du Club
    hindo
    Citation Envoyé par hindous
    Q1 : le fichier recupera.pl, il fait koi? je dois le creer manuellement??
    Q2 : tu connais la directive : load et disk ? ( en fait , load sert à ne pas depasser certain seuil en lui precisant biensur )
    alorts , mon prob c que j'ai specifier sur mon fichier snmpd0conf load ....... par ex ! mais il se passe rien , alors kil doit m'envoyer une trap en m'avartissant ke le load overage est depassé!! mais RIEN que DALE!!!
    je naaaaaaaaaage !!!!

    si oui,
    en fait j'ai tapé la commande que tu ma donné et j'ai ça:


    2007-07-13 15:38:55 0.0.0.0(via UDP: [x.x.x.x]:32833) TRAP, SNMP v1, community test
    HOST-RESOURCES-MIB::hrProcessorLoad.8 Warm Start Trap (0) Uptime: 0:00:00.01

    x.x.x.x : mon @ IP

    alors ça veut dire koi??

  17. #17
    Membre habitué
    Re,

    Citation Envoyé par hindous

    Q1 : le fichier recupera.pl, il fait koi? je dois le creer manuellement??
    Citation Envoyé par fara morgana

    Le script perl recuptraps.pl a pour but de récupérer les traps qui circulent sur le réseau.
    Comment?
    grace au fichier de configuration snmptrapd.conf et plus specifiquement de la ligne suivante:
    traphandle default /var/www/html/recuptraps.pl

    En gros a chaque trap reçu, cela lance le programme recuptraps.pl.
    Ce programme a pour objectif de transférer les données dans le fichier texte : /tmp/traps_all de manière lisible.

    Ce programme ne sert pas à être lancé manuellement. Car ce sont les equipements qui envoient les traps et donc lance le programme recuptraps.pl avec les renseignements inclus dans la trap.
    Je vois pas trop quoi ajouter... Même si on n'a jamais fait de perl le programme se comprend. Bien sur il faut savoir programmer un minimum.
    Et oui, bien sur il faut le créer manuellement. Le libre a l'avantage d'être modulable, et paramètrable a volonté mais il faut aussi mettre la main à la pâte, ça tombe pas tout seul.

    Citation Envoyé par hindous

    Q2 : tu connais la directive : load et disk ? ( en fait , load sert à ne pas depasser certain seuil en lui precisant biensur )
    alorts , mon prob c que j'ai specifier sur mon fichier snmpd0conf load ....... par ex ! mais il se passe rien , alors kil doit m'envoyer une trap en m'avartissant ke le load overage est depassé!! mais RIEN que DALE!!!
    je naaaaaaaaaage !!!!
    La j'avoue que je ne connais que vaguement les notions load et disk. Et je ne serai pas dire comment le configurer correctement. Par contre je peux te donner le nom d'un logiciel qui fait ce genre de chose très bien : Nagios. Cacti doit le faire aussi mais avec un module supplémentaire. Il y en a d'autre mais je ne l'ai connais pas assez pour en parler.

    Citation Envoyé par hindous




    en fait j'ai tapé la commande que tu ma donné et j'ai ça:


    2007-07-13 15:38:55 0.0.0.0(via UDP: [x.x.x.x]:32833) TRAP, SNMP v1, community test
    HOST-RESOURCES-MIB::hrProcessorLoad.8 Warm Start Trap (0) Uptime: 0:00:00.01

    x.x.x.x : mon @ IP

    alors ça veut dire koi??
    Bon on progresse, ça veut tout simplement dire que la reception des traps fonctionne en local. Oui, tu as généré une trap avec la commande :
    #snmptrap -v1 -c secret votre_adresse .1.3.6.1.2.1.25.3.3.1.2.8 0 1 i 1


    et tu l'as bien reçu dans le premier terminal, après avoir lancé le démon snmptrapd avec la commande :
    #snmptrapd -f -Le


    Et donc que si tu n'arrives pas a recevoir les traps des équipements réseau, cela vient du réseau.
    Cela peut donc concerné la configuration de l'équipement réseau, la sécurité de ton pc,...

    Je vais me répéter, mais n'hesitez pas à utiliser ethereal pour voir ce qui se passe sur le réseau.
    Par exemple, essaye simplment dans un premier temps de brancher et débrancher un appareil réseau pour qu'il envoie une trap. Et regarde si celui-ci envoie bien une trap, s'il l'envoie, regarde pourquoi tu ne l'as reçoit pas sur ton pc. Aide toi des man, des logs et de tout ce qui peut t'aider a comprendre d'ou vient le problème. Ensuite commence a configurer tranquillement tes load et disk.
    Procède par étapes pour comprendre au fur et à mesure ce qui se passe et comment ça se passe.

    Il faut de la patience et de la perseverance pour y arriver , et les traps n'est pas un sujet facile, car peu d'informations circulent sur le net, et le sujet reste vaste.

  18. #18
    Membre du Club
    Ce message n'a pas pu être affiché car il comporte des erreurs.

  19. #19
    Membre habitué
    Bonjour,

    Citation Envoyé par hindous

    1- En parlant de Ethereal , lorsque je fais la capture avec snmp, je vois rien !!!!
    Plusieurs possibilités :
    -équipements mal configurés pour l'envoye de traps.
    Sur quel genre d'équipements travailles-tu?
    Les as-tu correctement configurés pour qu'ils envoyent des traps sur ta machine?

    -mauvaise utilisation de ethereal (au passage, maintenant ça s'appelle wireshark, je me suis fait avoir, comme quoi ça fait longtemps que je n'y ai pas touché)
    Es-tu sur la bonne interface? interface de ta machine.

    -as-tu essayé de faire un simple snmpget ou snmpwalk à une machine en même temps que de lancer wireshark?


    Citation Envoyé par hindous

    2- mon fichier snmpdtrapd.conf contient kune seule ligne : authCommunity log test !! dois-je ajouter d'autres choses pr recuperer mes logs , parce que le fichier logs n'existe pas!
    #man snmptrapd.conf
    et lis un peu ce que j'ai ecris avant.

  20. #20
    Membre du Club
    Citation Envoyé par fara morgana
    Bonjour,


    Plusieurs possibilités :
    -équipements mal configurés pour l'envoye de traps.
    Sur quel genre d'équipements travailles-tu?
    Les as-tu correctement configurés pour qu'ils envoyent des traps sur ta machine?

    -mauvaise utilisation de ethereal (au passage, maintenant ça s'appelle wireshark, je me suis fait avoir, comme quoi ça fait longtemps que je n'y ai pas touché)
    Es-tu sur la bonne interface? interface de ta machine.

    -as-tu essayé de faire un simple snmpget ou snmpwalk à une machine en même temps que de lancer wireshark?



    #man snmptrapd.conf
    et lis un peu ce que j'ai ecris avant.


    quand je fais cette cmd : snmptrap -v1 -c test localhost 1.3.6.1.2.1.25.3.3.1.2.8 0 1 i 1
    dans un terminal, je reçois ceci : 11:01 TRAP1.0 from 0.0.0.0
    from 0.0.0.0 te dit kelkchose?????????