Configuration du chiffrement des connexions SNMP

21 novembre 2023

ID 222536

Les programmes tiers peuvent accéder aux données envoyées via SNMP ou les remplacer par leurs propres données. Il est conseillé de configurer le chiffrement des connexions SNMP pour une transmission SNMP sécurisée.

Pour configurer le chiffrement des connexions SNMP :

  1. Ajoutez la ligne suivante au fichier /etc/snmp/snmpd.conf :

    view systemview included .1

  2. Obtenez un EngineID nécessaire pour gérer les interruptions SNMP. Pour ce faire, sur chaque serveur faisant partie du cluster; exécuter la commande  :

    snmpget -v2c -c<community name> 127.0.0.1 SNMP-FRAMEWORK-MIB::snmpEngineID.0 2>/dev/null | sed -ne 's/ //g; s/.*:/0x/p'

    Spécifiez le nom de la communauté (community name) utilisé par votre entreprise. Le cas écheant, créez une nouvelle communauté. Pour des raisons de sécurité de transmission de données, il n'est pas recommandé d'utiliser la communauté public définie par défaut.

    Assurez-vous que le service snmpd est en cours d'exécution avant d'exécuter la commande.

  3. Sur chaque serveur membre du cluster, configurez le service snmpd. Pour ce faire, procédez comme suit :
    1. Arrêtez le service snmpd. Pour ce faire, exécutez la commande :

      systemctl stop snmpd

    2. Créez un nouvel utilisateur. Pour ce faire, exécutez la commande :

      net-snmp-create-v3-user -ro -a SHA -A <password> -x <password> -X AES <username>

    3. Dans le fichier de configuration /etc/snmp/snmpd.conf, ajoutez les lignes suivantes :

      # accept KSMG statistics over unix socket

      master agentx

      agentXSocket unix:/var/run/agentx-master.socket

      agentXPerms 770 770 kluser klusers

      # accept incoming SNMP requests over UDP

      agentAddress udp:127.0.0.1:161

      rouser <username> priv .1.3.6.1

      # commentez la ligne suivante si vous n'avez pas besoin de transférer les interruptions SNMP via une connexion SNMPv3

      trapsess -e <EngineID> -v3 -l authPriv -u <username> -a SHA -A <password> -x AES -X <password> udp:<IP address>:162

      En tant que <IP address>, indiquez l'adresse IP à laquelle le service snmptrapd accepte les connexions réseau. Si vous voulez enregistrer les interruptions SNMP de manière locale sur le serveur, indiquez 127.0.0.1.

    4. Ajoutez les lignes suivantes dans le fichier de configuration /etc/snmp/snmp.conf :

      mibdirs +/opt/kaspersky/ksmg/share/snmp-mibs/

      mibs all

      Si le fichier de configuration snmp.conf n'est pas présent dans le répertoire indiqué, vous devez le créer.

    5. Lancez le service snmpd. Pour ce faire, exécutez la commande :

      systemctl start snmpd

    6. Vérifiez la connexion SNMP. Pour ce faire, exécutez les commandes suivantes :

      snmpwalk -mALL -v3 -l authPriv -u <username> -a SHA -A <password> -x AES -X <password> udp:127.0.0.1:161 .1.3.6.1.4.1.23668

      snmpget -v3 -l authPriv -u <username> -a SHA -A <password> -x AES -X <password> udp:127.0.0.1:161 KSMG-PRODUCTINFO-STATISTICS::applicationName.0

  4. Sur le serveur sur lequel vous voulez recevoir des interruptions SNMP, configurez le service snmptrapd. Pour ce faire, procédez comme suit :
    1. Arrêtez le service snmptrapd avec la commande :

      systemctl stop snmptrapd

    2. Ajoutez la ligne suivante au fichier de configuration /var/lib/net-snmp/snmptrapd.conf :

      createUser -e <EngineID> <username> SHA "<password>" AES "<password>"

      Si le fichier de configuration snmptrapd.conf n'est pas présent dans le répertoire indiqué, vous devez le créer.

      Les information d'identification de l'utilisateur (<username> et <password>) pour les services snmpd et snmptrapd doivent coïncider.

    3. Ajoutez les lignes suivantes dans le fichier de configuration /etc/snmp/snmptrapd.conf :

      snmpTrapdAddr udp:<IP address>:162

      authUser log <username> priv

      disableAuthorization no

      Si le fichier de configuration snmptrapd.conf n'est pas présent dans le répertoire indiqué, vous devez le créer.

    4. Lancez le service snmptrapd. Pour ce faire, exécutez la commande :

      systemctl start snmptrapd

      Assurez-vous que le mot de passe, indiqué dans le fichier /var/lib/net-snmp/snmptrapd.conf en clair, est remplacé par une séquence de caractères obscurcie. Pour ce faire, vous devrez peut-être redémarrer le service snmptrapd plusieurs fois à l'aide de la commande systemctl restart snmptrapd.

    5. Ajoutez le service snmptrapd au démarrage. Pour ce faire, exécutez la commande :

      systemctl enable snmptrapd

    6. Vérifiez la connexion SNMP à l'aide de la commande :

      snmptrap -e <EngineID> -v3 -l authPriv -u <username> -a SHA -A <password> -x AES -X <password> udp:<IP address>:162 0 KSMG-EVENTS-MIB::restartedBinary

      Assurez-vous que la ligne suivante apparaît dans le fichier /var/log/messages :

      <date and time> <hostname> snmptrapd[7503]: <date and time> localhost [UDP: [127.0.0.1]:26325->[<IP address>]:162]:#012DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (0) 0:00:00.00#011SNMPv2-MIB::snmpTrapOID.0 = OID: KSMG-EVENTS-MIB::restartedBinary

    En tant que <IP address>, indiquez l'adresse IP à laquelle le service snmptrapd accepte les connexions réseau. Si vous voulez enregistrer les interruptions SNMP de manière locale sur le serveur, indiquez 127.0.0.1.

Le chiffrement des connexions SNMP sera configuré.

Cet article vous a-t-il été utile ?
Que pouvons-nous améliorer ?
Merci de nous faire part de vos commentaires. Vous nous aidez à nous améliorer.
Merci de nous faire part de vos commentaires. Vous nous aidez à nous améliorer.