Configuration du service snmpd dans le système d'exploitation
3 juillet 2024
ID 222969
Pour travailler via le protocole SNMP avec KSMG, le service snmpd du système d'exploitation est utilisé. Le service snmpd agit comme un agent maître, acceptant et traitant les demandes des systèmes de surveillance et d'autres consommateurs externes via le protocole SNMP. KSMG se connecte au service snmpd en tant que sous-agent en utilisant le protocole AgentX via un socket UNIX.
Installation du service snmpd
Vérifiez que le service snmpd est installé sur votre système d'exploitation. S'il n'y a pas de service, installez les paquets appropriés.
Pour installer le service snmpd et les utilitaires auxiliaires,
exécutez la commande suivante :
- Sous les systèmes d'exploitation Red Hat Enterprise Linux, Rocky Linux :
yum install net-snmp net-snmp-utils
- Sur les systèmes d'exploitation Ubuntu :
apt install snmp snmpd
Créez un compte utilisateur pour accéder aux données
Arrêtez le service snmpd avant de créer un compte.
Pour accéder en toute sécurité aux données à l'aide du protocole SNMPv3 avec authentification et chiffrement, vous devez créer un compte côté service snmpd avec les données suivantes :
- Nom d'utilisateur (sensible à la casse).
- Algorithme d'authentification (MD5 ou SHA, SHA recommandé).
- Mot de passe pour l'authentification.
- Algorithme de cryptage (uniquement AES pris en charge).
- Mot de passe de chiffrement.
Pour des raisons de sécurité, il est recommandé d'utiliser des comptes distincts sur différents nœuds du cluster KSMG.
Vous pouvez créer un compte des manières suivantes :
- À l'aide de l'utilitaire net-snmp-create-v3-user, s'il est disponible sur le système d'exploitation.
- Manuellement en ajoutant la directive appropriée au fichier de configuration du service snmpd.
Pour créer un compte utilisateur à l'aide de l'utilitaire net-snmp-create-v3-user, exécutez la commande :
net-snmp-create-v3-user -ro -a <
algorithme d'authentification
> -x <
algorithme de chiffrement
> <
nom d'utilisateur
>
Les mots de passe pour l'authentification et le chiffrement seront demandés de manière interactive.
Exemple :
|
Pour créer un compte utilisateur sans l'utilitaire :
- Créez le fichier de configuration /var/lib/snmp/snmpd.conf à l'aide de la commande :
touch /var/lib/snmp/snmpd.conf
- Ajoutez une ligne comme celle-ci au fichier de configuration :
createUser <
nom d'utilisateur
> <
algorithme d'authentification
> "<
mot de passe d'authentification
>" <
algorithme de chiffrement
> "<
mot de passe de chiffrement
>"
Exemple :
createUser MonitoringUser SHA "MonitoringAuthSecret" AES "MonitoringPrivSecret"
Création d'un compte utilisateur pour recevoir les interruptions SNMP
Pour recevoir des interruptions SNMP utilisant le protocole SNMPv3 avec authentification et chiffrement, vous devez créer un compte côté système de surveillance dans le contexte du service correspondant (généralement le service snmptrapd).
Le compte doit contenir les informations suivantes :
- Nom d'utilisateur.
- Algorithme d'authentification.
- Mot de passe pour l'authentification.
- Algorithme de chiffrement.
- Mot de passe de chiffrement.
Pour des raisons de sécurité, vous devez utiliser différents comptes pour accéder aux données et recevoir des interruptions SNMP.
Il est recommandé de créer des comptes distincts pour recevoir les interruptions SNMP des différents nœuds du cluster KSMG.
Pour obtenir des instructions sur la création d'un compte utilisateur pour recevoir des interruptions SNMP, consultez la documentation de votre système de surveillance.
Configuration du service snmpd
La configuration du service snmpd est stockée dans le fichier /etc/snmp/snmpd.conf. Vous pouvez ajouter les données requises à un fichier de configuration existant ou créer un nouveau fichier de configuration et y ajouter les lignes ci-dessous de manière séquentielle.
Pour configurer le service snmpd :
- Si vous avez créé un nouveau fichier de configuration, assurez-vous que seul le super utilisateur peut y accéder. Si nécessaire, définissez les autorisations à l'aide des commandes :
chown root:root /etc/snmp/snmpd.conf
chmod 600 /etc/snmp/snmpd.conf
- Indiquez le protocole, l'adresse de l'interface réseau et le numéro de port sur lesquels le service snmpd acceptera les demandes entrantes.
- Si vous souhaitez accepter les requêtes sur toutes les interfaces réseau, ajoutez les lignes suivantes au fichier de configuration :
# Listen for incoming SNMP requests via UDP
agentAddress udp:161
- Si vous souhaitez accepter les requêtes uniquement sur l'interface réseau locale, par exemple si le système de surveillance est installé sur la même machine, ajoutez les lignes :
# Listen for incoming SNMP requests via UDP
agentAddress udp:127.0.0.1:161
- Si vous souhaitez accepter les requêtes sur toutes les interfaces réseau, ajoutez les lignes suivantes au fichier de configuration :
- Indiquez le chemin et les autorisations du socket UNIX sur lequel le service snmpd acceptera les connexions du sous-agent à l'aide du protocole AgentX. Pour cela, ajoutez les lignes suivantes au fichier de configuration :
# Listen for subagent connections via UNIX socket
master agentx
agentXSocket unix:/var/run/agentx-master.socket
agentXPerms 770 770 kluser klusers
- Si nécessaire, vous pouvez indiquer une description du système, l'emplacement du système et l'adresse de contact de l'administrateur. Pour cela, ajoutez les lignes suivantes au fichier de configuration :
# Basic system information
sysDescr <
description du système
>
sysLocation <
emplacement du système
>
sysContact <
adresse de contact de l'administrateur
>
sysServices 72
- Indiquez la zone de l'arborescence OID qui sera disponible pour votre système de surveillance via le protocole SNMP. Pour accéder aux données de l'application KSMG, ajoutez les lignes suivantes au fichier de configuration :
# Kaspersky Secure Mail Gateway SNMP statistics
view monitoring included .1.3.6.1.4.1.23668.1735
- Si nécessaire, spécifiez une zone de l'arborescence OID contenant les informations sur le système d'exploitation que le service snmpd stocke. Cette zone sera disponible pour votre système de surveillance.
Les informations sur le système d'exploitation comprennent, par exemple, des données sur l'utilisation du processeur et de la mémoire vive, des données sur l'espace libre sur les partitions de disque, la charge sur les interfaces réseau, une liste des logiciels installés, une liste des connexions réseau ouvertes et une liste des processus en cours d’exécution. Ces informations peuvent contenir des données sensibles.
- Si vous souhaitez autoriser l'accès uniquement aux informations générales du système et aux données d'utilisation de la mémoire, du processeur, du réseau et du disque, ajoutez les lignes suivantes au fichier de configuration :
# SNMPv2-MIB - Basic system information
view monitoring included .1.3.6.1.2.1.1
# HOST-RESOURCES-MIB - CPU, Memory, Filesystems
view monitoring included .1.3.6.1.2.1.25.1
view monitoring included .1.3.6.1.2.1.25.2
view monitoring included .1.3.6.1.2.1.25.3
view monitoring included .1.3.6.1.2.1.25.5
# UCD-SNMP-MIB - Memory and CPU usage
view monitoring included .1.3.6.1.4.1.2021.4
view monitoring included .1.3.6.1.4.1.2021.10
view monitoring included .1.3.6.1.4.1.2021.11
# UCD-SNMP-DISKIO-MIB - Block devices I/O statistics
view monitoring included .1.3.6.1.4.1.2021.13
# IF-MIB - Network interfaces I/O statistics
view monitoring included .1.3.6.1.2.1.2
view monitoring included .1.3.6.1.2.1.31
- Si vous souhaitez autoriser l'accès à toutes les informations système, ajoutez les lignes suivantes au fichier de configuration :
# Allow access to the whole OID tree
view monitoring included .1
- Si vous souhaitez autoriser l'accès uniquement aux informations générales du système et aux données d'utilisation de la mémoire, du processeur, du réseau et du disque, ajoutez les lignes suivantes au fichier de configuration :
- Spécifiez le mode d'accès et la zone de données pour le compte créé. Pour cela, ajoutez les lignes suivantes au fichier de configuration :
# Access control for SNMPv3 monitoring system user
rouser <
nom d'utilisateur
> priv -V monitoring
- Pour envoyer des interruptions SNMP, spécifiez l'adresse IP du système de surveillance et les informations d'identification de l'utilisateur pour recevoir les interruptions. Pour cela, ajoutez les lignes suivantes au fichier de configuration :
# Send SNMPv3 traps to the monitoring system
trapsess -Ci -v3 -t0.1 -r1 -l authPriv -u <
nom d'utilisateur pour recevoir les traps
> -a <
algorithme d'authentification
> -A "<
mot de passe utilisateur pour recevoir les traps
>" -x <
algorithme de chiffrement
> -X "<
mot de passe de chiffrement
>" udp:<
adresse IP
>:162
Le service snmpd sera configuré.
Pour intégrer plusieurs systèmes de surveillance, créez un compte distinct pour chaque système, spécifiez la zone de données disponibles pour les comptes (directives view et rouser) et configurez l'envoi des informations SNMP (directive trapsess).
Exemple de fichier de configuration du service snmpd
Démarrage du service snmpd avec une nouvelle configuration
Pour appliquer la nouvelle configuration :
- Redémarrez le service snmpd avec la commande :
systemctl restart snmpd
- Vérifiez l'état du service snmpd avec la commande :
systemctl status snmpd
L'état doit être
running
. - Autorisez le service à démarrer automatiquement au démarrage du système d'exploitation à l'aide de la commande :
systemctl enable snmpd
- Si vous utilisez un pare-feu dans votre système d'exploitation ou votre équipement réseau, ajoutez des règles appropriées pour autoriser le passage des paquets du protocole SNMP.
Le service snmpd sera lancé.
Vérification de la fonctionnalité du service snmpd
Pour vérifier la fonctionnalité du service snmpd, configurez l'utilisation de SNMP dans l'interface Web KSMG et interrogez les données SNMP à l'aide de l'utilitaire snmpwalk.
Pour obtenir les étendues de données SNMP fournies par l'application KSMG, exécutez la commande :
snmpwalk -v3 -l authPriv -u <
nom d'utilisateur
> -a <
algorithme d'authentification
> -A "<
mot de passe d'authentification
>" -x <
algorithme de chiffrement
> -X "<
mot de passe de chiffrement
>" <
adresse IP
> .1.3.6.1.4.1.23668.1735
Exemple : snmpwalk -v3 -l authPriv -u MonitoringUser -a SHA -A "MonitoringAuthSecret" -x AES -X "MonitoringPrivSecret" 127.0.0.1 .1.3.6.1.4.1.23668.1735 |