Centos 7 安装net-snmp v3

2019年1月5日12:29:42 发表评论 506

Centos 7 安装net-snmp v3

  1. 系统版本

[root@localhost ~]# uname -a

Linux localhost.localdomain 3.10.0-327.el7.x86_64 #1 SMP Thu Nov 19 22:10:57 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

  1. 检查net-snmp安装情况

如果没有任何输出,说明系统未安装net-snmp

[root@localhost ~]# rpm -qa |grep net-snmp

[root@localhost ~]#

  1. 安装net-snmp

通过网络安装则自动下载并安装以下的4个包,如果不连接外网,可以挂在linux光盘,设置本地源安装。

  • net-snmp

提供了一个入口,使得监控服务器可以通过snmp协议从这个入口与被监控机器通信

  • net-snmp-devel

是为了使用net-snmp-config, net-snmp-utils是为了使用snmpwalk

  • net-snmp-libs

提供了运行需要的库文件

  • net-snmp-utils

提供了一套工具,可以利用snmp协议进行通信

[root@localhost ~]# yum install -y net-snmp net-snmp-utils

Centos 7 安装net-snmp v3

安装过程省略。

  1. 查看安装后的net-snmp

[root@localhost ~]# rpm -ql net-snmp

/etc/snmp

/etc/snmp/snmpd.conf

/etc/snmp/snmptrapd.conf

/etc/sysconfig/snmpd

/etc/sysconfig/snmptrapd

略……

  1. 查看net-snmp版本

[root@localhost ~]# snmpd -v

NET-SNMP version:  5.7.2

Web:               http://www.net-snmp.org/

Email:             net-snmp-coders@lists.sourceforge.net

  1. 配置Snmp v3用户
  • 编辑文件/var/lib/net-snmp/snmpd.conf,
  • 使用net-snmp-create-v3-user命令{net-snmp-config --create-snmpv3-user}

The net-snmp-create-v3-user shell script is designed to create a new user in net-snmp configuration file (/var/net-snmp/snmpd.conf by default).

net-snmp-create-v3-user [-ro] [-A authpass] [-X privpass] [-a MD5|SHA] [-x DES|AES] [username]

-ro

create an user with read-only permissions

-A authpass

specify authentication password

-a MD5|SHA

specify authentication algorithm

-X privpass

specify encryption password

-x DES|AES

specify encryption algorithm

  • 用例说明

[root@localhost ~]# net-snmp-create-v3-user

Centos 7 安装net-snmp v3

例子中,我们创建了一个名叫snmpv3user的SNMPv3用户,使用MD5进行认证以及使用AES进行加密,auth-password作为认证密码,encrypt-password作为加密密码。

  • 增强配置

可以在/etc/snmp/snmpd.conf 文件配置 syslocation syscontact

[root@localhost ~]# vi /etc/snmp/snmpd.conf

  • 启动服务

[root@localhost ~]# service snmpd start #启动服务

Redirecting to /bin/systemctl start  snmpd.service

[root@localhost ~]# service snmpd status #查看状态

Centos 7 安装net-snmp v3

  • 验证服务

snmpwalk命令用法:

-v 1|2c|3    specifies SNMP version to use
-u USER-NAME  set security name (e.g. bert)
-l LEVEL  set security level (noAuthNoPriv|authNoPriv|authPriv)
-a PROTOCOL    set authentication protocol (MD5|SHA)
-A PASSPHRASE  set authentication protocol pass phrase
-x PROTOCOL     set privacy protocol (DES|AES)
-X PASSPHRASE   set privacy protocol pass phrase
-c COMMUNITY          set the community string (v1/v2c版本)

[root@localhost ~]# snmpwalk -v 3 -u snmpv3user -a MD5 -A auth-password -l authPriv -x DES -X encrypt-password localhost

Centos 7 安装net-snmp v3

可以看到我们顺利的取到了服务器的snmp数据。

  • 简单一条命令

上面的步骤2也可以使用下面的命令完成:

[root@localhost ~]# net-snmp-create-v3-user -ro -A auth-password -X encrypt-password -a MD5 -x AES snmpv3user

  1. 开放防火墙

如果想对外提供snmp服务,需要设置防火墙规则来开放161 udp端口。

不同的linux版本防火墙的设置不一样,请查找相应的设置方法。

  1. Snmp操作命令参数含义对应表
Parameter Command Line Flag snmp.conf token
securityName -u NAME defSecurityName NAME
authProtocol -a (MD5|SHA) defAuthType (MD5|SHA)
privProtocol -x (AES|DES) defPrivType DES
authKey -A PASSPHRASE defAuthPassphrase PASSPHRASE
privKey -X PASSPHRASE defPrivPassphrase PASSPHRASE
securityLevel -l (noAuthNoPriv|authNoPriv|authPriv) defSecurityLevel (noAuthNoPriv|authNoPriv|authPriv)
context -n CONTEXTNAME defContext CONTEXTNAME
  1. 混乱的命令
  • 对于Centos 7使用以下命令启动服务以及设置服务启动状态:

systemctl restart snmpd.service

systemctl enable snmpd.service

  • 对于老的Centos使用命令如下:

service snmpd start

chkconfig snmpd on

weinxin
微信公众号
分享IT信息技术、北海生活的网站。提供北海本地化的信息技术服务。
路飞

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: