| Scroll Ignore | ||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||
|
Contexte
Lorsque vous installez Shinken Enterprise, un certain nombre de modèles et de commandes sont inclus dans votre configuration.
Le pack "switch", comme son nom l'indique, permet de superviser des éléments réseau.
- Il contient 1 commande, 9 checks accrochés à 4 modèles d'hôte spécifiques ( nommés "switch" et "switch-detailed" ).
- Toutes les commandes de ce pack se basent sur le script check_nwc_health présent dans le répertoire des scripts shinken /var/lib/shinken/libexec ( ou $PLUGINSDIR$ depuis l'interface de configuration ).
Le protocole SNMP ( Simple Network Management Protocol ) est utilisé par le script pour récupérer les informations nécessaires ( Espace disque, CPU, load, etc... ).
Vous trouverez le détail du pack dans les page suivantes :
| Children Display | ||
|---|---|---|
|
Différence entre les modèles (switch, switch_snmp_v3) et (switch-detailed, switch_snmp_v3-detailed)
Afin de superviser un switch via les protocoles SNMPv3, le pack Switch-SNMP vous met à disposition six modèles d'hôtes.
- Switch-SNMPv3-( noAuthNoPriv / authNoPriv / authPriv ) permettent une supervision d'un switch pour une utilisation minimal et synthétique. L'unique différence entre ces trois modèles est la configration de la connexion SNMPv3.
- Switch-SNMPv3-( noAuthNoPriv / authNoPriv / authPriv )-detailed permettent une supervision d'une switch pour une utilisation détaillée de chaque interface réseau et fournissent des informations supplémentaires ( utilisation CPU, consommation mémoire… ). L'unique différence entre ces trois modèles est la configration de la connexion SNMPv3.
Consulter le tableau suivant pour comparer les modèles et choisir celui convenant le mieux pour votre supervision.
| Excerpt | ||||
|---|---|---|---|---|
|
- Ces modèles offrent une vue d'ensemble pour chaque check sur l'état général de vos interfaces
- Mise a part la mise en place du protocol SNMP, il ne nécéssite aucune configuration
- Ces modèles sont donc conseillés si vous voulez une vue sur l'ensemble de vos interfaces en un seul résultat, mais attention, si un problème est rencontré même sur une seule des interfaces, alors le résultat indiquant l'erreur risque d'être noyé par la masse d'informations renvoyées par le check.De même, si un second problème venait à apparaître, il en serait alors, encore plus difficilement repérable.
|
Comment utiliser le pack SWITCH
Le pack switch peut être utilisé en accrochant les modèles d'hôtes présent dans ce pack à vos hôte.
Il existe deux manières de procéder :
En utilisant l'interface de Configuration
Dans l'interface de Configuration,
|
Liste des modèles d'hôte pour SNMPv3
| Nom | Lien | ||
|---|---|---|---|
| Modèles Switch-SNMPv3-( noAuthNoPriv, authNoPriv, authPriv ) | ||
| Modèles Switch-SNMPv3-( noAuthNoPriv / authNoPriv / authPriv )-detailed |
Vérification de la compatibilité SNMP avec le switch à superviser
Vous pouvez tester la
En éditant les fichiers de configuration d'un collecteur ( cfg )
Dans un fichier de configuration,
- créez ou éditez votre définition d'hôte
- en ajoutant, dans la propriété "use", la valeur "switch", "switch-detailed", "switch_snmp_v3" ou "switch_snmp_v3-detailed" selon les besoins.
Puis, le contenue du fichier devra alors être importé avec une source d'import de fichier de configuration ( plus d'information sur cette page: Collecteur de type ( cfg-file-import ) - Import depuis des fichiers au format .cfg ).
Configuration de la connexion SNMP
Pour l'exécution correcte des commandes de supervision, vous aurez besoin d'une connexion SNMP v2.
Quelques informations au préalable sont nécessaires pour la bonne compréhension de cette partie :
- Du côté du serveur Shinken, l'exécution des commandes est réalisée par les Pollers.
- D'autre part, du côté des machines switch supervisées, les composant SNMP paramétrés soit avec une communauté pour SNMPv2. Soit par login / mot de passe et plus suivant la configuration choisie pour SNMPv3
Côté switch supervisé
En fonction de votre matériel, il faut configurer la partie SNMP.
Côté serveur Poller
Les scripts sont exécutés par le ou les serveurs Poller.
- Les commandes sont basées sur des scripts PERL.
- Pour information, les librairies suivantes sont nécessaires:
- Déja installé par l'installeur de Shinken :
- net-snmp-utils
- net-snmp-libs
- Nécéssaire pour faire fonctionner la nouvelle version du check_nwc_health si elles ne sont pas encore installées sur vote machine :
- perl-JSON
- perl-File-Slurp
- perl-JSON-XS
- Nécessaire pour SNMP V3 :
- perl-Crypt-Rijndael ( que vous devez rajouter sur votre OS )
- Déja installé par l'installeur de Shinken :
Test de connexion
Vous pouvez tester la bonne configuration du service SNMP de votre switch depuis votre serveur Poller en fonction du SNMP utilisé
SNMP V2
| Code Block |
|---|
[root@shinken-poller ~]# snmpwalk -v2c -c COMMUNAUTE IP-SWITCH |
En replaçant COMMUNAUTE et IP-SWITCH par ceux de votre switch.
Une liste de valeur doit défiler à l'écran pour valider la bonne connexion..
Dans le cas de SNMPv3, la liste des arguments de la commande est plus exhaustive, mais tous ne sont pas forcément nécessaires suivant le mode de connexion configuré.
Remplacer ou enlever :
- IP-SWITCH par l'adresse IP de votre switch
- USER-NAME par le nom d'utilisateur
- CONTEXT par le contexte SNMP ( optionnel ),
- LEVEL par le niveau de sécurité configuré pour la connexion SNMPv3 ( noAuthNoPriv | authNoPriv | authPriv ),
- AUTH_PROTOCOL par le protocole d'authentification utilisé ( à utiliser dans le cas du niveau authNoPriv et authPriv ) ,
- AUTH_PASSPHRASE par le mot de passe lié au protocole d'authentification ( à utiliser dans le cas du niveau authNoPriv et authPriv ),
- PRIV_PROTOCOL par le protocole de confidentialité utilisé pour la connexion SNMPv3 ( à utiliser dans le cas du niveau authPriv ),
- PRIV_PASSPHRASE par le mot de passe lié au protocole de confidentialité ( à utiliser dans le cas du niveau authPriv ),
- SECU_ENGINE-ID par l'lD de sécurité ( optionnel ),
- CONTEXT_ENGINE-ID par l'ID du contexte ( optionnel ),
| Code Block | ||||
|---|---|---|---|---|
|
| Code Block | ||
|---|---|---|
| ||
$ snmpwalk -v2c -c public 192.168.1.4
SNMPv2-MIB::sysDescr.0 = STRING: Cisco Internetwork Operating System SoftwareIOS (tm) MSFC Software (C6MSFC-JS-M), Version 12.0(7)XE1, EARLY DEPLOYMENT RELEASE SOFTWARE (fc1)TAC:Home:SW:IOS:Specials for infoCopyright (c) 1986-2000 by cisco Systems, Inc.Compiled Thu 03-Feb-00 23:
SNMPv2-MIB::sysObjectID.0 = OID: SNMPv2-SMI::enterprises.9.1.258
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (22061) 0:03:40.61
SNMPv2-MIB::sysContact.0 = STRING: admin
SNMPv2-MIB::sysName.0 = STRING: CISCOROUTER
SNMPv2-MIB::sysLocation.0 = STRING: server-room
SNMPv2-MIB::sysServices.0 = INTEGER: 78
SNMPv2-MIB::sysORLastChange.0 = Timeticks: (0) 0:00:00.00
IF-MIB::ifNumber.0 = INTEGER: 13
IF-MIB::ifIndex.2 = INTEGER: 2
... |
SNMP V3
[root@shinken-poller ~]# snmpwalk -v3 IP-SWITCH -l SecurityLevelu USER-NAME -n CONTEXT -ul LOGINLEVEL -a AUTH_PROTOCOL -A AUTHPASSWORDAUTH_PASSPHRASE -x PRIV_PROTOCOL -X PRIVPASSWORD IP-SWITCH PRIV_PASSPHRASE -e SECU_ENGINE-ID -E CONTEXT_ENGINE-ID |
Exemple de résultat
Il vous faudra alors remplacer :
- SecurityLevel par : noAuthNoPriv ou authNoPriv ou authPriv suivant la configuration de votre connexion SNMPv3.
- LOGIN par le login utilisé sur le switch.
- AUTH l'algorithm d'authenfication que vous avez choisi pour la connexion (md5 ou sha).
- AUTHPASSWORD par le mot de passe que vous avez choisi pour l'authentification SNMPv3.
- PRIV par le protocole de confidentialité que vous avez choisi pour la connexion SNMPv3 (aes ou des).
- PRIVPASSWORD par le mot de passe de confidentialité que vous avez choisi pour la connexion SNMPv3.
- IP-SWITCH par l'adresse IP de votre switch.
Une liste de valeur doit défiler à l'écran pour valider la bonne connexion ( l'exemple ci-dessous était dans le cadre d'une connexion SNMPv3 ).
| Code Block | ||||
|---|---|---|---|---|
| ||||
$ snmpwalk -v3 -l authPriv 1.2.3.4 -u newUserMyUser -a MD5 -A abc12345Password1 -x DES -X abc12345 192.168.1.5 -v3Password2 SNMPv2-MIB::sysDescr.0 = STRING: Cisco Internetwork Operating System Software IOSSoftwareIOS (tm) 7200MSFC Software (C7200C6MSFC-ISJS-M), Version 12.30(21b7)XE1, EARLY DEPLOYMENT RELEASE SOFTWARE (fc1) CopyrightTAC:Home:SW:IOS:Specials for infoCopyright (c) 1986-20072000 by cisco Systems, Inc. Compiled SatThu 2103-JulFeb-0700 1623:57 by ccai SNMPv2-MIB::sysObjectID.0 = OID: SNMPv2-SMI::enterprises.9.1.223258 DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (359719974) 0:0003:3519.9774 SNMPv2-MIB::sysContact.0 = STRING: admin SNMPv2-MIB::sysNamesysLocation.0 = STRING: Xiamenserver-Rroom SNMPv2-MIB::sysLocation.0 = STRING: SNMPv2-MIB::sysServices.0 = INTEGER: 678 SNMPv2-MIB::sysORLastChange.0 = Timeticks: (0) 0:00:00.00 IF-MIB::ifNumber.0 = INTEGER: 513 IF-MIB::ifIndex.1 = INTEGER: 1 IF-MIB::ifIndex.2 = INTEGER: 2 ... |
Côté interface de configuration Shinken
SNMP v2
Dans chaque hôte héritant du modèle d'hôte "switch" ou "switch-detailed", vous aurez la donnée SNMPCOMMUNITY concernant la communauté SNMP interrogé :
Communauté SNMP v2
- En SNMP v1/v2 la communauté est un équivalent du mot de passe pour se connecter sur les équipements.
- Important: les droits SNMP nécessaire sur l'équipement ne sont qu'en LECTURE SEULE, les sondes n'ont pas besoin d'avoir de droits d'écriture.
| title | Remarque |
|---|
$SNMPCOMMUNITYREAD$ est une donnée globale qui dont la valeur est modifiable dans le fichier /etc/shinken/resource.d/snmp.cfg,
- voir LES VARIABLES ( Remplacement dynamique de contenu - Anciennement les MACROS ), pour comprendre leur utilisation.
La modification des valeurs par défaut présentes dans le fichier du serveur ( /etc/shinken/resource.d/snmp.cfg ) nécessite un redémarrage :
- du Synchronizer pour le voir dans l'interface
- et l'envoie d'une configuration ou d'un redémarrage de l'Arbiter pour que la modification soit prise en compte en supervision.
Attention cependant, la modification dans le fichier direct entraînera
- après le prochain redémarrage du Synchronizer, une modification du comportement du modèle
- et donc potentiellement de tous les hôtes utilisant cette donnée ( dans le cas où l'hôte n'a pas surchargé cette valeur ).
Par exemple, voici le paramétrage d'une connexion avec la communauté SNMP v2 :
SNMP v3
Dans chaque hôte héritant du modèle d'hôte "switch_SNMP_v3" ou "switch_SNMP_v3-detailed", vous aurez plusieurs données a modifier ou non suivant la configuration SNMP choisi :
Login SNMP v3
- EN SNMP v3, la communauté est un équivalent du nom d'utilisateur dans une doublet login/mot de passe
Protocol d'authentification SNMP v3
- Ce protocol n'est pas obligatoire mais conseillé pour une meilleur sécurisation de la connexion.
- Deux protocol sont possibles ici, MD5 ou SHA
Mot de passe d'authentification SNMP v3
- Le mot de passe garantit l'intégrité des données et permet de'authentifier l'origine des données
Protocol de confidentialité SNMP v3
- Ce protocol n'est pas non plus obligatoire, mais tout comme le protocol d'authentification, il permet une sécurité suppleméntaire pour la communication via SNMP
- Deux protocoles sont possibles ici, AES ou DES
Mot de passe de confidentialité SNMP v3
- Le mot de passe de confidentialité assure le chiffrement et le déchiffrement des données.
Un autre exemple avec un paramétrage d'une connexion SNMP v3 :
Version des scripts livrés
... |