Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Principe

Introduction

Ce collecteur vous permet de détecter automatiquement des équipements réseau et des serveurs physiques dans votre infrastructure pour faciliter et accélérer leur import dans la configuration,

  • En utilisant la commande nmap pour la découverte des équipements, la commande 
    • Scanne les machines présentes sur le réseau et détecte les ports ouverts,
    • Essaye de déterminer le constructeur de l'équipement en fonction de son adresse MAC 
    • Si possible, détermine son FQDN

  • Permet de définir des règles qui suivant les valeurs remontées par nmap apporte un complément d'informations sur les équipements découverts.
    • Ajout de modèles d'hôtes
    • Ajout d'un préfixe au nom de l'équipement.

Les équipements qualifiés sont alors présentés en tant que nouveautés ou différences.


Panel
iconfalse
titleSur cette page

Table of Contents
maxLevel3
stylenone

Configuration

Pour définir le module source Discovery:

  1. Configurer la source dans le fichier  /etc/shinken/sources/discovery.cfg
  2. La source discovery est déclarée dans le fichier /etc/shinken/synchronizers/synchronizer-master.cfg.
Info
titleNote

Durant l'installation de Shinken Enterprise une source effectuant des découvertes réseau appelée discovery est créée.

/etc/shinken/sources/discovery.cfg

PropriétéValeur par défautDescription

source_name

discoveryNom de la source. doit être unique (non modifiable pour le moment)

order

10Ordre dans la consolidation de l'algorithme pour cette source . Voir dans la page Synchronizer page pour plus d'information

import_interval

5Intervalle en minutes de chargement de la source.

modules

discovery-importModule utilisé

enabled

0

1 - Active la source

0 - Désactive la source. Elle est visible dans l'interface, mais ne collecte pas de données.

data_backendmongodbBackend où les données de la source est stockéemongodb_urlmongodb://localhost/?safe=falseURL d'accès à MongoDBmongodb_databasesynchronizerBase Mongo où sont stockées les données de la sourcerules_path/etc/shinken-user/configuration/daemons/synchronizers/sources/discovery/discovery_rules.jsonFichier json comportant vos règles de découvertes (voir règles de découvertes)


Editer et ajouter une plage réseau

Les plages réseau scannées par le collecteur discovery peuvent être créées et modifiées dans l'interface de Configuration.

Dans la Page Principale, accéder aux détails du collecteur discovery en cliquant sur la source "discovery" dans la page principale.


Panel

Image Added


Dans l'onglet "Liste des plages réseaux définies", le bouton "+ Ajouter" permet d'ajouter une nouvelle plage réseau à scanner.


Panel

Image Added


Puis vous verrez la page de configuration d'une nouvelle plage réseau dans une popup.


Vous devez définir les paramètres suivants:

  • Nom
  • Plage IP: Plage(s) d'adresses à scanner dans le format accepté par la command nmap.

Info
titleExemples

172.16.1.1-254

172.16.0.0/24

172.16.0.0/24 192.168.1.10-100

  • Plage de ports: Plage de ports scanné pour chaque adresse. Les 1000 ports les plus répandus sont utilisés par défaut
    • Vous pouvez restreindre les ports scannés, avec une liste.
    • Plusieurs plages peuvent être définies séparés par des virgules.
    • Ex: 1-1024,2000-8000
  • Notes: Texte descriptif au sujet de cette plage réseau
  • Activé: Activer ou désactiver les scans sur cette plage réseau


Panel

Image Added


Anchor
discovery_rules
discovery_rules
Les règles de découvertes

nmap_mac_prefixes_path

Les mécanismes de règles permet d'enrichir les équipements détectés.

  • Par défaut, une installation fournit une liste de règles prédéfinies.
  • Vous pouvez définir vos propres règles ou surcharger les règles prédéfinies.
    Vous devez pour cela éditer le fichier JSON
    • /etc/shinken-user/configuration/daemons/synchronizers/sources/discovery/
nmap/nmap-mac-prefixesFichier comportant vos propres nmap-mac-prefixes (voir mécanisme de correspondance entre adresse MAC et constructeur)

Exemple de définition:

Code Block
languagejs
define source {
    source_name             discovery
    order                   10
    import_interval         5
    module_type             discovery-import
    data_backend            mongodb
    mongodb_uri             mongodb://localhost/?safe=false
    mongodb_database        synchronizer
    rules_path              /etc/shinken-user/configuration/daemons/synchronizers/sources/discovery/discovery_rules.json
    nmap_mac_prefixes_path  /etc/shinken-user/configuration/daemons/synchronizers/sources/discovery/nmap/nmap-mac-prefixes
}

Editer et ajouter une liste de scan réseau

Le scan réseau peut être défini dans la Page Principale

Commencez par cliquer sur la source "discovery" dans la page principale.

Panel

Image Removed

Dans l'onglet "Liste des plages réseaux définies", le bouton "+ Ajouter" permet d'ajouter une nouvelle plage réseau à scanner.

Panel

Image Removed

Puis vous verrez la page de configuration d'une nouvelle plage réseau dans une popup.

Vous devez définir les paramètres suivants:

  • Nom
  • Plage IP: Plage(s) d'adresses à scanner dans le format accepté par la command nmap.
    Info
    titleExemples

    172.16.1.1-254

    172.16.0.0/24

    172.16.0.0/24 192.168.1.10-100

    • Plage de ports: Plage de ports scanné pour chaque adresse. Les 1000 ports les plus répandus sont utilisés par défaut
      • Vous pouvez restreindre les ports scannés, avec une liste.
      • Plusieurs plages peuvent être définies séparés par des virgules.
      • Ex: 1-1024,2000-8000
    • Notes: Texte descriptif au sujet de cette plage réseau
    • Activé: Activer ou désactiver les scans sur cette plage réseau
    Panel

    Image Removed

    Anchordiscovery_rulesdiscovery_rulesLes règles de découvertes

    Les mécanismes de règles permet d'enrichir les équipements détectés.

    • Par défaut, une installation fournit une liste de règles prédéfinies.
    • Vous pouvez définir vos propres règles ou surcharger les règles prédéfinies.
      Vous devez pour cela éditer le fichier JSON
      • /etc/shinken-user/configuration/daemons/synchronizers/sources/discovery/discovery_rules.json
    Une règle de découverte est séparée en 4 parties:
    • name: le nom et l'id de votre règle (doit être unique)
    • condition[1-9]: représente une condition qui applique la règle si elle est remplie
      (il suffit qu'une seule condition soit bonne pour que la règle soit appliquée)
    • prefix_name: ce préfixe est ajouté au nom des éléments pour lesquels la règle s'applique (optionnel)
    • use: Les modèles d'hôtes ajoutés en cas d'application de la règle. Vous pouvez en mettre autant que vous voulez en les séparant d'une virgule.
      • Les modèles d'hôtes sont ajoutés à la suite de ceux déjà présents sur l'hôte (ajoutés par d'autres règles

    Voici un exemple qui est disponible par défaut dans Shinken:

    Code Block
    {
    	"rules":[
    			{
    			"name": "myRuleExample",
    			"condition1": "os=myOS AND osversion=^2",
    			"condition2": "osversion=^2.6.0$",
    			"condition3": "macvendor=^myMacVendor",
    			"condition4": "ostype=myType$",
    			"condition5": "openports=1|2",
    			"prefix_name": "myRulePrefix",
    			"use": "myTemplate,myTemplate2"
    			}
    	]
    }
      • discovery_rules.json


    Une règle de découverte est séparée en 4 parties:

    • name: le nom et l'id de votre règle (doit être unique)
    • condition[1-9]: représente une condition qui applique la règle si elle est remplie
      (il suffit qu'une seule condition soit bonne pour que la règle soit appliquée)
    • prefix_name: ce préfixe est ajouté au nom des éléments pour lesquels la règle s'applique (optionnel)
    • use: Les modèles d'hôtes ajoutés en cas d'application de la règle. Vous pouvez en mettre autant que vous voulez en les séparant d'une virgule.
      • Les modèles d'hôtes sont ajoutés à la suite de ceux déjà présents sur l'hôte (ajoutés par d'autres règles



    Code Block
    titleExemple de règle
    {
    	"rules":[
    			{
    			"name": "myRuleExample",
    			"condition1": "os=myOS AND osversion=^2",
    			"condition2": "osversion=^2.6.0$",
    			"condition3": "macvendor=^myMacVendor",
    			"condition4": "ostype=myType$",
    			"condition5": "openports=1|2",
    			"prefix_name": "myRulePrefix",
    			"use": "myTemplate,myTemplate2"
    			}
    	]
    }


    Onglet des règles de découverte

    Un onglet listant les règles de découvertes (par défaut et définies par l'utilisateur) est disponible dans la page du collecteur discovery.

    Les règles sont affichées sous forme de la liste:

    • Triée par ordre de priorité: Lorsque les règles 1 et 2 s'appliquent, la règle 1 s'applique avant la règle 2 (ajout du préfixe et des modèles d'hôtes)
    • La couleur de fond de chaque ligne indique le type de règle:
      • Blanc : règle par défaut 
      • Bleu: règle définie par l'utilisateur
      • Gris: règle affichée dans la liste mais sans effet (désactivée volontairement, syntaxe incorrecte, ...).


    Panel

    Image Added


    Il existe 6 statuts pour les règles de découvertes :

    CasStatut
    La règle est en un seul exemplaire dans votre fichierDéfinie par l'utilisateur
    Le nom de la règle existe déjà dans le fichier par défautSurchargée par l'utilisateur
    Le nom de la règle est défini plusieurs fois dans le fichier utilisateurDéfinie plusieurs fois
    La règle comporte une erreur (comme une des clés obligatoires)Invalide
    La règle ne comporte pas de conditions ou de modèles d'hôtesDésactivé


    Vous pouvez rafraîchir la liste des règles directement en appuyant sur le bouton de rafraîchissement en haut à droite Image Added, ou en appuyant sur F5.

    Ecriture d'une règle de découverte

    Le mécanisme de condition porte sur les données collectés par nmap. En fonction des ces valeurs, vous allez pouvoir modifier l'hôte à proposer au Synchronizer.

    Il existe plusieurs possibilités pour les conditions de vos règles :

    Commence par (=^...)

    Si l'expression commence par '^', la condition signifie que le résultat attendu DOIT commencer par l'expression.


    Code Block
    macvendor=^myMacVendor


    Termine par (=...$)

    Si l'expression termine par '$', la condition signifie que le résultat attendu DOIT terminer par l'expression.


    Code Block
    ostype=myType$


    Est égal (=^...$)


    Si l'expression commence par '^' ET termine par '$', la condition signifie que le résultat attendu DOIT être l'expression exacte.


    Code Block
    osversion=^2.6.0$


    Contient (=...)

    Si l'expression ne contient aucun des paramètres précédents, la condition signifie que le résultat attendu DOIT contenir l'expression


    Code Block
    os=myOS


    Condition_1 ET condition_2 (condition_1 AND condition_2)

    Si la condition contient un ou plusieurs AND, cela signifie que tout ce qui est dans cette condition doit être respecté pour que la règle soit appliquée.


    Code Block
    os=myOS AND osversion=^2


    Cas spécifique des openports (X|X)

    L'écriture d'une condition pour la propriété openports est un cas spécifique.

    • Sur cette propriété, les conditions de type "contient, commence par ou termine par" ne peuvent pas être utilisées.
      • Il faut donc rentrer le port exact.
      • La présence des caractères ^' et '$' sera donc considérée comme une erreur.

    • Par faire un OU, il faut mettre un '|' entre les ports.


    Code Block
    openports=1|2


    Liste des règles par défaut 

    Lors de l'installation, Shinken livre un certain nombre de règles par défaut pour la détection des objets via le collecteur discovery. 

    Ces règles par défaut sont les suivantes:

    RègleCondition Modèle d'hôte appliqué
    aix
    os=aix
    aix
    cisco
    os=cisco
    cisco
    dns
    openports=53
    dns
    ftp
    openports=21
    ftp
    HPAsm
    macvendor=hewlett packard AND openports=2301
    hp-asm
    HPBladeChassis
    os=embedded AND ostype=remote management AND osvendor=hp
    hp-blade-chassis
    HPPrinterState
    openports=631 AND openports=9100
    printer-hp
    HpUx
    os=hp-ux
    hpux
    Http
    openports=80
    http
    Https
    openports=443
    https
    Imap
    openports=143
    imap
    Imaps
    openports=993
    imaps
    Ldap
    openports=389
    ldap
    Ldaps
    openports=636
    ldaps
    linux
    os=linux
    linux
    mongodb
    openports=27017
    mongodb
    mssql
    openports=1433
    mssql
    mysql
    openports=3306
    mysql
    Oracle
    openports=1521|1526
    oracle
    pop3
    openports=110
    pop3
    pop3s
    openports=995
    pop3s
    smtp
    openports=25
    smtp
    smtps
    openports=465
    smtps
    ssh
    openports=22
    ssh
    switch
    ostype=switch
    switch
    ESX
    isesxhost=1
    esx
    VMware-VM
    isesxvm=1
    vmware-vm
    Windows
    os=windows
    windows
    Windows 2000
    os=windows AND osversion=2000
    windows2000
    Windows 2003
    os=windows AND osversion=2003
    windows2003
    Windows 2008
    os=windows AND osversion=vista
    windows2008
    Windows 2008r2
    os=windows AND osversion=7
    windows2008,windows2008r2
    Windows 2012
    os=windows AND osversion=2012
    windows2012
    Windows 2016
    os=windows AND osversion=2016
    windows2016


    Le fichier des règles par défaut est le suivant:  discovery_rules.json

    Le résultat d'une découverte (onglet Détail du dernier lancement)

    Dans l'onglet "Détail de dernier lancement" est listé chaque équipement détecté par le collecteur discovery en fonction des plages réseau actives lors de l'import.

    Pour chaque équipement, l’œil à droite vous permet de voir le détail de l'opération. Deux tableaux fournissent respectivement:

    • Les informations collectées par nmap
      • Toutes les informations présentes dans ce tableau peuvent être utilisées dans les conditions d'une règle

    • L'Hôte proposé au Synchronizer:
      • Si une valeur a été modifiée par une règle, la colonne "Informations supplémentaires" indique le mécanisme utilisé


    Panel

    Image Added


    Les données collectés par nmap

    Les scans réalisés par nmap remontent les informations suivantes:

    Nom
    Exemple

    fqdn

    Nom de domaine complètement qualifié

    DiskStation

    mac

    Adresse MAC de l'équipement

    00:11:32:9F:09:44

    macvendor

    Nom du constructeur associé à l'adresse MAC (voir le chapitre suivant pour plus de détails sur la correspondance adresse MAC ↔ Constructeur) 

    Synology Incorporated

    openports

    Liste des ports identifiés comme ouverts

    22,80,137,139,161,161,443,445,548,3261,5000,5001,5353

    os

    Famille du système d'exploitation détectée, comme par exemple Windows, Linux, IOS (routeurs Cisco), Solaris ou OpenBSD. Ils y a des centaines d'autres familles de systèmes comme des routeurs, imprimantes ou autres systèmes propriétaires.

    Lorsque la famille du système d'exploitation ne peut pas être déterminée avec une confiance suffisante, la valeur embedded est utilisée.

    Linux

    ostype

    Le type de système d'exploitation est une classification large selon l'usage prévu de ce système comme "router", "printer", ou "game console". Les systèmes d'exploitation universels tels que Linux et Windows, qui ont de nombreux cas d'utilisations sont classés en tant que "general purpose".

    general purpose

    osvendor

    Entreprise ou entité qui produit le système d'exploitation ou équipement (par exemple Apple, Cisco, Microsoft, Linksys). Pour les projets communautaires comme Linux ou les différents BSD, la valeur de l'information "os" est répétée ici.

    Linux

    osversion

    Version de l'os détectée

    3.X


    Anchor
    macvendor
    macvendor
    Correspondance entre l'adresse MAC et le constructeur

    Lors du scan d'une plage réseau, le collecteur discovery peut remonter le constructeur du matériel à l'aide de nmap.

    Cette détection du constructeur se fait par identification de l'adresse MAC de l'équipement détecté sur le réseau. Pour la correspondance entre adresse MAC et constructeur, nmap utilise un fichier nommé nmap-mac-prefixes qui comporte des adresses MAC associées à des constructeurs (macvendor).

    Par exemple, si votre machine récupérée par la discovery a pour adresse MAC "0050BAXXXXX", le constructeur détecté (macvendor) est "D-Link".
    Shinken fournit par défaut un fichier nmap-mac-prefixes qui sert de réference à nmap. Ce fichier est mis à jour à chaque mise à jour de Shinken.

    Pour créer des associations entre adresses MAC et constructeur personnalisées, il est possible créer un fichier nmap-mac-prefixes dans /etc/shinken-user/configuration/daemons/synchronizers/sources/discovery/nmap/qui surchargera celui que Shinken met à  disposition lors de l'installation.

    Ce fichier doit être au format de l'exemple donné et peut contenir des commentaires en commençant la ligne par un #.


    Votre fichier surcharger la liste présente par défaut dans l'installation de Shinken Entreprise.

    Le fichier par défaut à utiliser comme modèle est le suivant: nmap-mac-prefixes.


    Panel

    Image Added


    L'exemple suivant fournit une illustration sur la découverte d'un NAS Synology et la détection automatique du constructeur.


    Panel

    Image Added


    Configuration avancée

    Pour définir le module source Discovery:

    1. Configurer la source dans le fichier  /etc/shinken/sources/discovery.cfg
    2. La source discovery est déclarée dans le fichier /etc/shinken/synchronizers/synchronizer-master.cfg.


    Info
    titleNote

    Durant l'installation de Shinken Enterprise une source effectuant des découvertes réseau appelée discovery est créée.



    PropriétéValeur par défautDescription

    source_name

    discoveryNom de la source. doit être unique (non modifiable pour le moment)

    order

    10Ordre dans la consolidation de l'algorithme pour cette source . Voir dans la page Synchronizer page pour plus d'information

    import_interval

    5Intervalle en minutes de chargement de la source.

    modules

    discovery-importModule utilisé

    enabled

    0

    1 - Active la source

    0 - Désactive la source. Elle est visible dans l'interface, mais ne collecte pas de données.

    data_backendmongodbBackend où les données de la source est stockée
    mongodb_urlmongodb://localhost/?safe=falseURL d'accès à MongoDB
    mongodb_databasesynchronizerBase Mongo où sont stockées les données de la source
    rules_path/etc/shinken-user/configuration/daemons/synchronizers/sources/discovery/discovery_rules.jsonFichier json comportant vos règles de découvertes (voir règles de découvertes)
    nmap_mac_prefixes_path/etc/shinken-user/configuration/daemons/synchronizers/sources/discovery/nmap/nmap-mac-prefixesFichier comportant vos propres nmap-mac-prefixes (voir mécanisme de correspondance entre adresse MAC et constructeur)


    Exemple de définition:

    Code Block
    languagejs
    define source {
        source_name             discovery
        order                   10
        import_interval         5
        module_type             discovery-import
        data_backend            mongodb
        mongodb_uri             mongodb://localhost/?safe=false
        mongodb_database        synchronizer
        rules_path              /etc/shinken-user/configuration/daemons/synchronizers/sources/discovery/discovery_rules.json
        nmap_mac_prefixes_path  /etc/shinken-user/configuration/daemons/synchronizers/sources/discovery/nmap/nmap-mac-prefixes
    }
    

    Onglet des règles de découverte

    Un onglet listant les règles de découvertes (par défaut et définies par l'utilisateur) est disponible dans la page du collecteur discovery.

    Les règles sont affichées sous forme de la liste:

    • Triée par ordre de priorité: Lorsque les règles 1 et 2 s'appliquent, la règle 1 s'applique avant la règle 2 (ajout du préfixe et des modèles d'hôtes)
    • La couleur de fond de chaque ligne indique le type de règle:
      • Blanc : règle par défaut 
      • Bleu: règle définie par l'utilisateur
      • Gris: règle affichée dans la liste mais sans effet (désactivée volontairement, syntaxe incorrecte, ...).
    Panel

    Image Removed

    Il existe 6 statuts pour les règles de découvertes :

    CasStatutLa règle est en un seul exemplaire dans votre fichierDéfinie par l'utilisateurLe nom de la règle existe déjà dans le fichier par défautSurchargée par l'utilisateurLe nom de la règle est défini plusieurs fois dans le fichier utilisateurDéfinie plusieurs foisLa règle comporte une erreur (comme une des clés obligatoires)InvalideLa règle ne comporte pas de conditions ou de modèles d'hôtesDésactivé

    Vous pouvez rafraîchir la liste des règles directement en appuyant sur le bouton de rafraîchissement en haut à droite Image Removed, ou en appuyant sur F5.

    Ecriture d'une règle de découverte

    Le mécanisme de condition porte sur les données collectés par nmap. En fonction des ces valeurs, vous allez pouvoir modifier l'hôte à proposer au Synchronizer.

    Il existe plusieurs possibilités pour les conditions de vos règles :

    Commence par (=^...)

    Si l'expression commence par '^', la condition signifie que le résultat attendu DOIT commencer par l'expression.

    Code Block
    macvendor=^myMacVendor

    Termine par (=...$)

    Si l'expression termine par '$', la condition signifie que le résultat attendu DOIT terminer par l'expression.

    Code Block
    ostype=myType$

    Est égal (=^...$)

    Si l'expression commence par '^' ET termine par '$', la condition signifie que le résultat attendu DOIT être l'expression exacte.

    Code Block
    osversion=^2.6.0$

    Contient (=...)

    Si l'expression ne contient aucun des paramètres précédents, la condition signifie que le résultat attendu DOIT contenir l'expression

    Code Block
    os=myOS

    Condition_1 ET condition_2 (condition_1 AND condition_2)

    Si la condition contient un ou plusieurs AND, cela signifie que tout ce qui est dans cette condition doit être respecté pour que la règle soit appliquée.

    Code Block
    os=myOS AND osversion=^2

    Cas spécifique des openports (X|X)

    L'écriture d'une condition pour la propriété openports est un cas spécifique.

    Sur cette propriété, les conditions de type "contient, commence par ou termine par" ne peuvent pas être utilisées.
  • Il faut donc rentrer le port exact.
  • La présence des caractères ^' et '$' sera donc considérée comme une erreur.
  • Par faire un OU, il faut mettre un '|' entre les ports.
  • Code Block
    openports=1|2

    Liste des règles par défaut 

    Lors de l'installation, Shinken livre un certain nombre de règles par défaut pour la détection des objets via le collecteur discovery. 

    Ces règles par défaut sont les suivantes:

    RègleCondition Modèle d'hôte appliquéaix
    os=aix
    aixcisco
    os=cisco
    ciscodns
    openports=53
    dnsftp
    openports=21
    ftpHPAsm
    macvendor=hewlett packard AND openports=2301
    hp-asmHPBladeChassis
    os=embedded AND ostype=remote management AND osvendor=hp
    hp-blade-chassisHPPrinterState
    openports=631 AND openports=9100
    printer-hpHpUx
    os=hp-ux
    hpuxHttp
    openports=80
    httpHttps
    openports=443
    httpsImap
    openports=143
    imapImaps
    openports=993
    imapsLdap
    openports=389
    ldapLdaps
    openports=636
    ldapslinux
    os=linux
    linuxmongodb
    openports=27017
    mongodbmssql
    openports=1433
    mssqlmysql
    openports=3306
    mysqlOracle
    openports=1521|1526
    oraclepop3
    openports=110
    pop3pop3s
    openports=995
    pop3ssmtp
    openports=25
    smtpsmtps
    openports=465
    smtpsssh
    openports=22
    sshswitch
    ostype=switch
    switchESX
    isesxhost=1
    esxVMware-VM
    isesxvm=1
    vmware-vmWindows
    os=windows
    windowsWindows 2000
    os=windows AND osversion=2000
    windows2000Windows 2003
    os=windows AND osversion=2003
    windows2003Windows 2008
    os=windows AND osversion=vista
    windows2008Windows 2008r2
    os=windows AND osversion=7
    windows2008,windows2008r2Windows 2012
    os=windows AND osversion=2012
    windows2012Windows 2016
    os=windows AND osversion=2016
    windows2016

    Le fichier des règles par défaut est le suivant:  discovery_rules.json

    Le résultat d'une découverte (onglet Détail du dernier lancement)

    Dans l'onglet "Détail de dernier lancement" est listé chaque équipement détecté par le collecteur discovery en fonction des plages réseau actives lors de l'import.

    Pour chaque équipement, l’œil à droite vous permet de voir le détail de l'opération. Deux tableaux fournissent respectivement:

    Les informations collectées par nmapToutes les informations présentes dans ce tableau peuvent être utilisées dans les conditions d'une règle
  • L'Hôte proposé au Synchronizer:
    • Si une valeur a été modifiée par une règle, la colonne "Informations supplémentaires" indique le mécanisme utilisé
  • Panel

    Image Removed

    Les données collectés par nmap

    Les scans réalisés par nmap remontent les informations suivantes:
    NomExemple

    fqdn

    Nom de domaine complètement qualifié

    DiskStation

    mac

    Adresse MAC de l'équipement

    00:11:32:9F:09:44

    macvendor

    Nom du constructeur associé à l'adresse MAC (voir le chapitre suivant pour plus de détails sur la correspondance adresse MAC ↔ Constructeur) 

    Synology Incorporated

    openports

    Liste des ports identifiés comme ouverts

    22,80,137,139,161,161,443,445,548,3261,5000,5001,5353

    os

    Famille du système d'exploitation détectée, comme par exemple Windows, Linux, IOS (routeurs Cisco), Solaris ou OpenBSD. Ils y a des centaines d'autres familles de systèmes comme des routeurs, imprimantes ou autres systèmes propriétaires.

    Lorsque la famille du système d'exploitation ne peut pas être déterminée avec une confiance suffisante, la valeur embedded est utilisée.

    Linux

    ostype

    Le type de système d'exploitation est une classification large selon l'usage prévu de ce système comme "router", "printer", ou "game console". Les systèmes d'exploitation universels tels que Linux et Windows, qui ont de nombreux cas d'utilisations sont classés en tant que "general purpose".

    general purpose

    osvendor

    Entreprise ou entité qui produit le système d'exploitation ou équipement (par exemple Apple, Cisco, Microsoft, Linksys). Pour les projets communautaires comme Linux ou les différents BSD, la valeur de l'information "os" est répétée ici.

    Linux

    osversion

    Version de l'os détectée

    3.X

    AnchormacvendormacvendorCorrespondance entre l'adresse MAC et le constructeur

    Lors du scan d'une plage réseau, le collecteur discovery peut remonter le constructeur du matériel à l'aide de nmap.

    Cette détection du constructeur se fait par identification de l'adresse MAC de l'équipement détecté sur le réseau. Pour la correspondance entre adresse MAC et constructeur, nmap utilise un fichier nommé nmap-mac-prefixes qui comporte des adresses MAC associées à des constructeurs (macvendor).
    Par exemple, si votre machine récupérée par la discovery a pour adresse MAC "0050BAXXXXX", le constructeur détecté (macvendor) est "D-Link".
    Shinken fournit par défaut un fichier nmap-mac-prefixes qui sert de réference à nmap. Ce fichier est mis à jour à chaque mise à jour de Shinken.

    Pour créer des associations entre adresses MAC et constructeur personnalisées, il est possible créer un fichier nmap-mac-prefixes dans /etc/shinken-user/configuration/daemons/synchronizers/sources/discovery/nmap/qui surchargera celui que Shinken met à  disposition lors de l'installation.

    Ce fichier doit être au format de l'exemple donné et peut contenir des commentaires en commençant la ligne par un #.

    Votre fichier surcharger la liste présente par défaut dans l'installation de Shinken Entreprise.

    Le fichier par défaut à utiliser comme modèle est le suivant: nmap-mac-prefixes.

    Panel

    Image Removed

    L'exemple suivant fournit une illustration sur la découverte d'un NAS Synology et la détection automatique du constructeur.

    PanelImage Removed




    Précisions techniques

    Sécurité: paramètres de la commande nmap

    La commande nmap lancée par la source discovery utilise les paramètres suivants:

    • -PE : Ping Scan (Echo Request)
    • -sU : Scan UDP
    • -sT : Scan TCP
    • --min-rate 1000 : Envoie un minimum de 1000 paquets par secondes
    • --max-retries 3 : Effectue au maximum 3 retransmissions en cas d'erreur sur les scan de ports
    • -T4 : Optimisation de performances
    • -O : Détection des systèmes d'exploitation
    • -oX : Export XML (utilisé pour l’interprétation de données par Shinken)

    Clés de synchronisation

    Les clés de synchronisation sont des propriétés des objets utilisées pour les identifier dans les sources. Le fonctionnement et l'utilité des clés de synchronisation sont décrits de manière plus détaillée dans la page de documentation dédiée: Précision techniques sur le fonctionnement de l'import des sources.


    Les informations suivantes de la découverte réseau sont ajoutées en tant que clés de synchronisation de l'objet dans Shinken:

    • host_name
    • address

    Résolution des problèmes courants

    Le fichier de règles n'est pas correctement chargé

    Il peut y avoir plusieurs problèmes à l'ouverture de votre fichier de règles:


    ProblèmesRésultat
    Votre fichier n'est pas au format jsonLe fichier n'est pas lu et une erreur apparaît
    Votre fichier est introuvableLe fichier n'est pas lu et une erreur apparaît
    Votre fichier comporte des clés inconnuesLe fichier n'est pas lu et une erreur apparaît
    Votre fichier est videLe fichier n'est pas lu mais aucune erreur n'apparaît


    Dans le cas où le fichier de règles n'est pas correctement chargé (voir les problèmes liés aux règles dans les règles de découvertes), seules les règles par défaut sont prises en compte et un message d'erreur apparaît en haut du tableau.


    Panel


    Le fichier de préfixes nmap n'est pas chargé

    Il peut y avoir plusieurs problèmes à l'ouverture de votre fichier de préfixes nmap qui empêcheront la source discovery de lancer son import:


    ProblèmesRésolution
    Votre fichier est introuvableVérifiez que l'emplacement et le nom de votre fichier correspond à celui renseigné dans la configuration de votre discovery.
    Votre fichier comporte des erreurs (adresse mac sans macvendor par exemple)Vérifiez que toutes vos adresse mac sont bien suivies d'une macvendor et comportent bien 6 caractères.



    Panel


    Panel