snmptrapd 配置与使用

1,引入

        使用的是Net-snmp 5.9.1 源码编译测试snmptrapd 接收trap包的功能简单验证

2,snmptrapd.conf 的配置

authCommunity log,execute,net public
disableAuthorization yes   :关闭认证
logFile /var/log/snmptrapd.log
outputOptions s

traphandle default   ./handler.sh  :收到trap执行的默认动作

 handler.sh  :脚本随便写,主要是能体现确实有收到和处理的trap包就行

#!/bin/bash

echo -ne "handler recive trap packet.....\n"

touch  hello.c

3,snmptrapd的启动

进入install 目录,sbin下找到snmptrapd进程,使用上面的配置文件生成snmptrapd.conf

运行:./snmptrapd -c ./snmptrapd.conf &

报错:./snmptrapd: error while loading shared libraries: libcrypto.so.1.1: cannot open shared object file: No such file or directory

原因: 编译net-snmp时手动加载了openssl,使用时需添加环境变量:

            export LD_LIBRARY_PATH=/home/openssl-1.1.0g/install/lib:$LD_LIBRARY_PATH

成功运行。

4,使用snmptrap测试

在install 的bin目录下找到snmptrap,发现snmpinform是软链接到snmptrap,--help发现两者并未什么区别,但是snmptrap包,是主动发送,不需要管理端进行确认,而snmpinform需要管理端进行确认,否则超时退出。

命令如下:

./snmptrap -v 2c -c public  localhost:162 '' SNMPv2-MIB::coldStart
./snmptrap -v 2c -c public localhost:162 '' 1.3.6.1.4.1.8072.2.3.0.1 1.3.6.1.4.1.8072.2.3.2.1 i 123456

./snmpinform -v 2c -c public localhost:162 '' 1.3.6.1.2.1.1 1.3.6.1.2.1.1.1 s "linux-hello"

抓包对比:(snmptrap包)

可以看到snmptrap包只是发送了trap,服务端无响应。

snmpinform包,服务端回了一个相同的响应报文,如果服务端不回应,inform将超时退出

总结:从上面看出两者trap包没有多大差别,主要i差别在是否响应,测试的过程发现snmptrapd为记录日志,但成功执行了默认处理脚本。

需要注意的是:

                抓包需要抓环回口的包,使用命令是需要使用localhost:162 或者127.0.0.1:162,要不snmptrapd不回响应。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值