Python 开发环境搭建(5):SNMP
使用的系统为Redhat 7.6 的64位,使用Net-SNMP 5.7版本
-
安装mysql包
rpm -ivh mysql-community-libs-compat*
不安装这个包会出现如下报错 -
安装
cd /mnt/Packages rpm -ivh net-snmp yum install -y net-snmp-perl yum install -y net-snmp-utils yum install -y net-snmp-devel yum install -y net-snmp-lib
-
验证
可以使用下面的命令去验证你是否成功安装了Net-SNMP,如果你可以获取到正确的版本号,说明你已经成功安装了Net-SNMP
snmpget --version -
配置snmpd.conf
vi /etc/snmp/snmpd.conf############################################################################### # Access Control ############################################################################### # First, map the community name "public" into a "security name" # sec.name source community com2sec notConfigUser default public # Second, map the security name into a group name: # groupName securityModel securityName group notConfigGroup v1 notConfigUser group notConfigGroup v2c notConfigUser # Third, create a view for us to let the group have rights to: # Make at least snmpwalk -v 1 localhost -c public system fast again. # name incl/excl subtree mask(optional) #view systemview included .1.3.6.1.2.1.1 #view systemview included .1.3.6.1.2.1.25.1.1 # Finally, grant the group read-only access to the systemview view. # group context sec.model sec.level prefix read write notif access notConfigGroup "" any noauth exact all none none # ----------------------------------------------------------------------------- # YOU SHOULD CHANGE THE "COMMUNITY" TOKEN BELOW TO A NEW KEYWORD ONLY # KNOWN AT YOUR SITE. YOU *MUST* CHANGE THE NETWORK TOKEN BELOW TO # SOMETHING REFLECTING YOUR LOCAL NETWORK ADDRESS SPACE. ## incl/excl subtree mask view all included .1 80 ############################################################################### # System contact information # # It is also possible to set the sysContact and sysLocation system # variables through the snmpd.conf file: syslocation Unknown (edit /etc/snmp/snmpd.conf) syscontact Root <root@localhost> (configure /etc/snmp/snmp.local.conf) ############################################################################### # Logging # # We do not want annoying "Connection from UDP: " messages in syslog. # If the following option is commented out, snmpd will print each incoming # connection, which can be useful for debugging. dontLogTCPWrappersConnects yes ############################################################################### com2sec notConfigUser localhost Server_pu
-
运行snmpd 且开机自启动
chkconfig snmpd on systemctl start snmp
-
可通过如下命令检查snmpd是否启动
netstat -na | grep 161
或
ps aux | grep snmp -
测试snmpd
可以用如下的几个命令获取系统开机时间,如果有正确的返回则说明snmp运行正常
snmpwalk -v 2c -c public localhost sysUpTime.0
配置python获取netsnmp
pip install client
pip install python3-netsnmp