La configuración de codificación de conexiones SNMP
3 de julio de 2024
ID 222536
Las aplicaciones de terceros podrían tener acceso a los datos enviados en SNMP o reemplazarlos con sus propios datos. Para garantizar la seguridad de la transferencia de datos en SNMP, se recomienda configurar el cifrado de las conexiones SNMP.
Para configurar la codificación de conexiones SNMP:
- Añada la línea siguiente al archivo /etc/snmp/snmpd.conf:
view systemview included .1
- Obtenga una EngineID, que es necesaria para procesar las capturas SNMP. Para hacerlo, ejecute el siguiente comando en cada servidor del clúster:
snmpget -v2c -c<nombre de la comunidad> 127.0.0.1 SNMP-FRAMEWORK-MIB::snmpEngineID.0 2>/dev/null | sed -ne 's/ //g; s/.*:/0x/p'
Especifique el nombre de la comunidad que se utiliza en su organización. Si es necesario, cree una nueva comunidad. Por motivos de seguridad en la transferencia de datos, no se recomienda utilizar la comunidad "pública" predeterminada.
Antes de ejecutar el comando, asegúrese de que se esté ejecutando el servicio snmpd.
- Configure el servicio snmpd en cada servidor del clúster. Para hacerlo:
- Detenga el servicio snmpd. Para hacerlo, ejecute el comando siguiente:
systemctl stop snmpd
- Cree un nuevo usuario. Para hacerlo, ejecute el comando siguiente:
net-snmp-create-v3-user -ro -a SHA -A <contraseña> -x <contraseña> -X AES <nombre de usuario>
- Añada las cadenas siguientes al archivo de configuración /etc/snmp/snmpd.conf:
# acepte las estadísticas de KSMG en el socket unix
master agentx
agentXSocket unix:/var/
run/agentx-master.socket
agentXPerms 770 770 kluser klusers
# acepte las solicitudes de SNMP de entrada en UDP
agentAddress udp:127.0.0.1:161
rouser <nombre de usuario> priv .1.3.6.1
# comente la siguiente línea si no necesita reenviar capturas SNMP en la conexión SNMPv3
trapsess -e <EngineID> -v3 -l authPriv -u <nombre de usuario> -a SHA -A <contraseña> -x AES -X <contraseña> udp:<dirección IP>:162
Para
<dirección IP>
, indique la dirección IP que utilizará el servicio snmptrapd para aceptar las conexiones de red. Si desea guardar las capturas SNMP a nivel local en el servidor, introduzca127.0.0.1
. - Añada las cadenas siguientes al archivo de configuración /etc/snmp/snmp.conf:
mibdirs +/opt/kaspersky/ksmg/share/snmp-mibs/
mibs all
Si el archivo de configuración snmp.conf no existe en el directorio especificado, créelo.
- Inicie el servicio snmpd. Para hacerlo, ejecute el comando siguiente:
systemctl start snmpd
- Compruebe la conexión de SNMP. Para hacerlo, ejecute los siguientes comandos:
snmpwalk -mALL -v3 -l authPriv -u <nombre de usuario> -a SHA -A <contraseña> -x AES -X <contraseña> udp:127.0.0.1:161 .1.3.6.1.4.1.23668
snmpget -v3 -l authPriv -u <nombre de usuario> -a SHA -A <contraseña> -x AES -X <contraseña> udp:127.0.0.1:161 KSMG-PRODUCTINFO-STATISTICS::applicationName.0
- Detenga el servicio snmpd. Para hacerlo, ejecute el comando siguiente:
- Configure el servicio snmptrapd en el servidor donde desea recibir las capturas de SNMP. Para hacerlo:
- Detenga el servicio snmptrapd con el siguiente comando:
systemctl stop snmptrapd
- Añada la siguiente línea al archivo /var/lib/net-snmp/snmptrapd.conf:
createUser -e <EngineID> <nombre de usuario> SHA "<contraseña>" AES "<contraseña>"
Si un archivo de configuración snmptrapd.conf no existe en el directorio especificado, créelo.
Las credenciales de la cuenta de usuario (
<nombre de usuario>
y<contraseña>
) deben ser las mismas para los servicios snmpd y snmptrapd. - Añada las cadenas siguientes al archivo de configuración /etc/snmp/snmptrapd.conf:
snmpTrapdAddr udp:<dirección IP>:162
authUser log <nombre de usuario> priv
disableAuthorization no
Si un archivo de configuración snmptrapd.conf no existe en el directorio especificado, créelo.
- Inicie el servicio snmptrapd. Para hacerlo, ejecute el comando siguiente:
systemctl start snmptrapd
Asegúrese de que la contraseña que se indicó en texto sin formato en el archivo /var/lib/net-snmp/snmptrapd.conf se haya reemplazado por una secuencia de caracteres confusa. Para hacerlo, es posible que deba reiniciar el servicio snmptrapd varias veces mediante el uso del comando
systemctl restart snmptrapd
. - Añada el servicio snmptrapd para el inicio automático. Para hacerlo, ejecute el comando siguiente:
systemctl enable snmptrapd
- Compruebe la conexión SNMP mediante la ejecución del siguiente comando:
snmptrap -e <EngineID> -v3 -l authPriv -u <nombre de usuario> -a SHA -A <contraseña> -x AES -X <contraseña> udp:<dirección IP>:162 0 KSMG-EVENTS-MIB::restartedBinary
Asegúrese de que aparezca la siguiente cadena en el archivo /var/log/messages:
<fecha y hora> <nombre de host> snmptrapd[7503]: <fecha y hora> localhost [UDP: [127.0.0.1]:26325->[<dirección IP>]:162]:#012DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (0) 0:00:00.00#011SNMPv2-MIB::snmpTrapOID.0 = OID: KSMG-EVENTS-MIB::restartedBinary
Para
<dirección IP>
, indique la dirección IP que utilizará el servicio snmptrapd para aceptar las conexiones de red. Si desea guardar las capturas SNMP a nivel local en el servidor, introduzca127.0.0.1
. - Detenga el servicio snmptrapd con el siguiente comando:
Ya se configuró el cifrado de conexiones de SNMP.