通过 SNMP 与 KSMG 进行交互是使用操作系统的“snmpd”服务来实现的。snmpd 服务充当主代理,通过 SNMP 接收和处理来自监控系统和其他外部使用者的请求。KSMG 通过 UNIX™ 套接字通过 AgentX 协议作为子代理连接到 snmpd 服务。
创建用于访问数据的用户账户
创建账户之前,请停止 snmpd 服务。
为了保证使用身份验证和加密通过 SNMPv3 访问数据的安全性,您需要在 snmpd 服务端创建一个用户账户,其中包含以下信息:
出于安全考虑,我们建议在 KSMG 集群的每个节点上使用独立的用户账户。
您可以使用 net-snmp-create-v3-user 实用程序创建用户账户。
要使用 net-snmp-create-v3-user 实用程序创建用户账户:
net-snmp-create-v3-user -ro -a <身份验证算法> -x <加密算法> <用户名>
交互请求身份验证和加密密码。
示例:
|
创建用于接收 SNMP 陷阱的用户账户
要通过身份验证和加密通过 SNMPv3 接收 SNMP 陷阱,您需要在相应服务(通常是 snmptrapd 服务)的上下文中在监控系统一侧创建一个账户。
该账户必须包含以下信息:
出于安全目的,您必须使用单独的用户账户来访问数据和接收 SNMP 陷阱。
我们建议创建独立的用户账户,以从 KSMG 集群的每个节点接收 SNMP 陷阱。
有关创建用于接收 SNMP 陷阱的用户账户的说明,请参阅监控系统的文档。
配置 snmpd 服务
snmpd 服务的配置存储在 /etc/snmp/snmpd.conf 文件中。您必须创建一个新的配置文件并按给定顺序添加以下行。
要配置 snmpd 服务:
mv -f /etc/snmp/snmpd.conf /etc/snmp/snmpd.conf.backup
touch /etc/snmp/snmpd.conf
chown root:root /etc/snmp/snmpd.conf
chmod 600 /etc/snmp/snmpd.conf
# 通过 UDP 侦听传入的 SNMP 请求
agentAddress udp:161
# 通过 UDP 侦听传入的 SNMP 请求
agentAddress udp:127.0.0.1:161
# 通过 UNIX 套接字监听子代理连接
master agentx
agentXSocket unix:/var/run/agentx-master.socket
agentXPerms 770 770 kluser klusers
# 系统基本信息
sysDescr <system_description>
sysLocation <system_location>
sysContact <contact_address>
sysServices 72
# Kaspersky Secure Mail Gateway SNMP statistics
view monitoring included .1.3.6.1.4.1.23668.1735
有关操作系统的信息包括例如有关 CPU 和 RAM 使用情况、磁盘分区上的可用空间、网络接口负载的信息;已安装软件的列表;打开的网络连接列表;以及正在运行的进程的列表。该信息的一部分可能是机密的。
# SNMPv2-MIB - 基本系统信息
view monitoring included .1.3.6.1.2.1.1
# HOST-RESOURCES-MIB - CPU、内存、文件系统
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 - 内存和 CPU 使用情况
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 - 块设备 I/O 统计信息
view monitoring included .1.3.6.1.4.1.2021.13
# IF-MIB - 网络接口 I/O 统计信息
view monitoring included .1.3.6.1.2.1.2
view monitoring included .1.3.6.1.2.1.31
# 允许访问整个 OID 树
view monitoring included .1
# SNMPv3 监控系统用户的访问控制
rouser <用户名> priv -V monitoring
# 向监控系统发送 SNMPv3 陷阱
trapsess -Ci -v3 -t0.1 -r1 -l authPriv -u <用户名> -a <身份验证算法> -A "<身份验证密码>" -x <加密算法> -X "<加密密码>" udp:<IP 地址>:162
将配置 snmpd 服务。
要与多个监控系统集成,请为每个系统创建一个单独的用户账户,指定每个用户账户的可用信息范围(“view”和“rouser”指令)并配置 SNMP 陷阱的发送(“trapsess”指令)。
snmpd 服务配置文件示例: # 通过 UDP 侦听传入的 SNMP 请求 agentAddress udp:161
# 通过 UNIX 套接字监听子代理连接 master agentx agentXSocket unix:/var/run/agentx-master.socket agentXPerms 770 770 kluser klusers
# 系统基本信息 sysDescr Example Mail Gateway Server, Node 05 sysLocation Example Datacenter, Ground floor, B23-U45 sysContact Mail system administrator <admin@example.com> sysServices 72
# Kaspersky Secure Mail Gateway SNMP statistics view monitoring included .1.3.6.1.4.1.23668.1735
# SNMPv2-MIB - 基本系统信息 view monitoring included .1.3.6.1.2.1.1 # HOST-RESOURCES-MIB - CPU、内存、文件系统 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 - 内存和 CPU 使用情况 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 - 块设备 I/O 统计信息 view monitoring included .1.3.6.1.4.1.2021.13 # IF-MIB - 网络接口 I/O 统计信息 view monitoring included .1.3.6.1.2.1.2 view monitoring included .1.3.6.1.2.1.31
# SNMPv3 监控系统用户的访问控制 rouser MonitoringUser priv -V monitoring
# 向监控系统发送 SNMPv3 陷阱 trapsess -Ci -v3 -t0.1 -r1 -l authPriv -u TrapUser -a SHA -A "TrapAuthSecret" -x AES -X "TrapPrivSecret" udp:10.16.32.64:162 |
使用新配置启动 snmpd 服务
要应用新配置:
systemctl restart snmpd
systemctl status snmpd
状态必须是running。
systemctl enable snmpd
snmpd 服务已配置。
检查 snmpd 服务的运行状况
要测试 snmpd 服务,请在 KSMG Web 界面中配置 SNMP 的使用,并使用“snmpwalk”实用程序请求 SNMP 数据。
要获取 KSMG 提供的 SNMP 数据的范围:
snmpwalk -v3 -l authPriv -u <用户名> -a <身份验证算法> -A "<身份验证密码>" -x <加密算法> -X "<加密密码>" <IP 地址> .1.3.6.1.4.1.23668.1735
示例: 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 |