centos oid,centos-7

大家好,今天给各位分享centos oid的一些知识,其中也会对centos-7进行解释,文章篇幅可能偏长,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在就马上开始吧!

如何在Ubuntu CentOS和Cisco系统中配置SNMPv3

简单网络管理协议(SNMP)是一种广泛使用的协议,用于收集设备内部正在进行中的信息。比如说,CPU和RAM的使用率,服务器的负载率,网络接口的流量状态,和的设备的很多其他性能都可以用SNMP来查询。

当前,SNMP有3个版本:v1, v2c and v3。SNMP

v1和v2c,可方便地进行配置,这在以前的文章中讨论过。SNMPv3增加了一些额外的功能,包括身份验证和加密方案(例如,MD5,SHA,AES和

DES)。这使得我们在Internet上运行SNMP查询时,SNMPv3的更安全,更可取的。

同SNMP v1或v2c相比,SNMPv3的配置有一点不同。下面详细解释了配置是如何进行的。

在Ubuntu和Debian配置SNMPv3

使用net-snmp-config tool工具进行配置。下面的例子中创建了一个只读权限的SNMPv3账户,用户名为“snmpv3user”密码为“snmpv3pass”。默认身份验证方法是MD5加密,默认DES使用。这些设定也可根据需要改变。

root@server:~# apt-get install snmp snmpd

root@server:~# service snmpd stop

root@server:~# net-snmp-config--create-snmpv3-user-ro-A snmpv3pass snmpv3user

## OUTPUT##

adding the following line to/var/lib/snmp/snmpd.conf:

createUser snmpv3user MD5"snmpv3pass" DES

adding the following line to/usr/share/snmp/snmpd.conf:

rouser snmpv3user

root@server:~# service snmpd start

SNMPv3测试

使用snmpwalk测试SNMP的配置。成功的测试结果应当有大量的输出数据。下面的例子使用上文建立的V3账户演示了snmpwalk的使用。Ubuntu和Debian的本地服务器IP地址192.168.1.1。

### SAMPLE OUTPUT###

iso.3.6.1.2.1.1.1.0= STRING:"Linux server 3.5.0-23-generic#35~precise1-Ubuntu SMP Fri Jan 25 17:13:26 UTC 2013 x86_64"

iso.3.6.1.2.1.1.2.0= OID: iso.3.6.1.4.1.8072.3.2.10

iso.3.6.1.2.1.1.3.0= Timeticks:(68028) 0:11:20.28

iso.3.6.1.2.1.1.7.0= INTEGER: 72

iso.3.6.1.2.1.1.8.0= Timeticks:(0) 0:00:00.00

iso.3.6.1.2.1.1.9.1.2.1= OID: iso.3.6.1.6.3.10.3.1.1

iso.3.6.1.2.1.1.9.1.2.2= OID: iso.3.6.1.6.3.11.3.1.1

iso.3.6.1.2.1.1.9.1.2.3= OID: iso.3.6.1.6.3.15.2.1.1

iso.3.6.1.2.1.1.9.1.2.4= OID: iso.3.6.1.6.3.1

iso.3.6.1.2.1.1.9.1.2.5= OID: iso.3.6.1.2.1.49

iso.3.6.1.2.1.1.9.1.2.6= OID: iso.3.6.1.2.1.4

iso.3.6.1.2.1.1.9.1.2.7= OID: iso.3.6.1.2.1.50

iso.3.6.1.2.1.1.9.1.2.8= OID: iso.3.6.1.6.3.16.2.2.1

iso.3.6.1.2.1.1.9.1.3.1= STRING:"The SNMP Management Architecture MIB."

iso.3.6.1.2.1.1.9.1.3.2= STRING:"The MIB for Message Processing and Dispatching."

iso.3.6.1.2.1.1.9.1.3.3= STRING:"The management information definitions for the SNMP User-based Security Model."

iso.3.6.1.2.1.1.9.1.3.4= STRING:"The MIB module for SNMPv2 entities"

iso.3.6.1.2.1.1.9.1.3.5= STRING:"The MIB module for managing TCP implementations"

iso.3.6.1.2.1.1.9.1.3.6= STRING:"The MIB module for managing IP and ICMP implementations"

iso.3.6.1.2.1.1.9.1.3.7= STRING:"The MIB module for managing UDP implementations"

iso.3.6.1.2.1.1.9.1.3.8= STRING:"View-based Access Control Model for SNMP."

iso.3.6.1.2.1.1.9.1.4.1= Timeticks:(0) 0:00:00.00

iso.3.6.1.2.1.1.9.1.4.2= Timeticks:(0) 0:00:00.00

iso.3.6.1.2.1.1.9.1.4.3= Timeticks:(0) 0:00:00.00

iso.3.6.1.2.1.1.9.1.4.4= Timeticks:(0) 0:00:00.00

iso.3.6.1.2.1.1.9.1.4.5= Timeticks:(0) 0:00:00.00

### And the walk goes on and on###

删除SNMPv3账户

当net-snmp-config tool运行过程中,该账户的有关信息会存储在var/lib/snmp/snmpd.conf和/usr/share/snmp/snmpd.conf.两个文件之中。删除账户即删除这个文件中的信息即可。

root@server:~# service snmpd stop

root@server:~# vim/var/lib/snmp/snmpd.conf

## there should be a similar encrypted line that contains information on the user##

## this line is removed##

usmUser 1 3 0x80001f8880056e06573a1e895100000000 0x736e6d7076337573657200 0x736e6d7076337573657200 NULL.1.3.6.1.6.3.10.1.1.2 0x945ed3c9708ea5493f53f953b45a4513.1.3.6.1.6.3.10.1.2.2 0x945ed3c9708ea5493f53f953b45a4513""

root@server:~# vim/usr/share/snmp/snmpd.conf

## The following line is removed##

rouser snmpv3user

之后不要忘记重启snmpd

root@server:~# service snmpd start

在CentOS或者RHEL中配置SNMPv3

相比Ubuntu,在 CentOS和 RHEL中配置SNMP v3用户的过程有点不同,但基本是相同的。

首先,使用yum安装必要的软件

[root@server~]# yum install net-snmp-utils net-snmp-devel

安装完成之后,先停止snmpd,再创建具有只读属性的SNMP账户。.

[root@server~]# service snmpd stop

[root@server~]# net-snmp-create-v3-user-ro-A snmpv3pass-a MD5-x DES snmpv3user

## OUTPUT##

adding the following line to/var/lib/net-snmp/snmpd.conf:

createUser snmpv3user MD5"snmpv3pass" DES

adding the following line to/etc/snmp/snmpd.conf:

rouser snmpv3user

[root@server~]# service snmpd start

SNMPv3测试

snmpwalk是测试SNMP配置和输出出色的工具。成功的测试结果应当有大量的输出数据。

[root@server~]# snmpwalk-u snmpv3user-A snmpv3pass-a MD5-l authnoPriv 192.168.1.2-v3

### OUTPUT###

SNMPv2-MIB::sysDescr.0= STRING: Linux server.example.tst 2.6.32-71.el6.i686#1 SMP Fri Nov 12 04:17:17 GMT 2010 i686

SNMPv2-MIB::sysObjectID.0= OID: NET-SNMP-MIB::netSnmpAgentOIDs.10

DISMAN-EVENT-MIB::sysUpTimeInstance= Timeticks:(28963) 0:04:49.63

SNMPv2-MIB::sysORLastChange.0= Timeticks:(1) 0:00:00.01

SNMPv2-MIB::sysORID.1= OID: SNMP-MPD-MIB::snmpMPDMIBObjects.3.1.1

SNMPv2-MIB::sysORID.2= OID: SNMP-USER-BASED-SM-MIB::usmMIBCompliance

SNMPv2-MIB::sysORID.3= OID: SNMP-FRAMEWORK-MIB::snmpFrameworkMIBCompliance

SNMPv2-MIB::sysORID.4= OID: SNMPv2-MIB::snmpMIB

SNMPv2-MIB::sysORID.5= OID: TCP-MIB::tcpMIB

SNMPv2-MIB::sysORID.6= OID: IP-MIB::ip

SNMPv2-MIB::sysORID.7= OID: UDP-MIB::udpMIB

SNMPv2-MIB::sysORID.8= OID: SNMP-VIEW-BASED-ACM-MIB::vacmBasicGroup

SNMPv2-MIB::sysORDescr.1= STRING: The MIB for Message Processing and Dispatching.

SNMPv2-MIB::sysORDescr.2= STRING: The MIB for Message Processing and Dispatching.

SNMPv2-MIB::sysORDescr.3= STRING: The SNMP Management Architecture MIB.

SNMPv2-MIB::sysORDescr.4= STRING: The MIB module for SNMPv2 entities

SNMPv2-MIB::sysORDescr.5= STRING: The MIB module for managing TCP implementation

## and the output continues##

删除SNMPv3账户

SNMPv3账户信息被包含在两个文件之中。删除账户即删除这个文件中的信息即可。

root@server:~# service snmpd stop

root@server:~# vim/var/lib/net-snmp/snmpd.conf

## there should be a similar encrypted line that contains information on the user##

## this line is removed##

usmUser 1 3 0x80001f8880056e06573a1e895100000000

0x736e6d7076337573657200 0x736e6d7076337573657200 NULL

.1.3.6.1.6.3.10.1.1.2 0x945ed3c9708ea5493f53f953b45a4513

.1.3.6.1.6.3.10.1.2.2 0x945ed3c9708ea5493f53f953b45a4513""

root@server:~# vim/etc/snmp/snmpd.conf

## The following line is removed##

rouser snmpv3user

root@server:~# service snmpd start

防火墙调节(可选)

下面的例子中的防火墙规则可以被用于限制被允许进行SNMP查询的源IP地址。两个IP地址(例如,192.168.1.100/101)被置于白名单中。

root@server:~# iptables-A INPUT-s 192.168.1.100/32-p udp–dport 161-j ACCEPT

root@server:~# iptables-A INPUT-s 192.168.1.101/32-p udp–dport 161-j ACCEPT

root@server:~# iptables-A INPUT-p udp–dport 161-j DROP

思科交换机和路由器配置SNMPv3

思科交换机和路由器同样支持SNMPv3。下面的例子将创建一个访问控制列表(ACL)限制允许做SNMP查询的源IP地址。但是,这步被跳过了。

设置访问控制列表(ACL)(可选)

## global config mode##

ip access-list standard SNMP_ACL

permit 192.168.1.100

permit 192.168.1.100

SNMPv3配置

下面的配置创建一个名为v3Group与认证AuthNoPriv安全级别v3的组。前面定义的可选访问列表也支持设定。

## global config mode##

## With ACL##

snmp-server group v3Group v3 auth access SNMP_ACL

## Without ACL##

snmp-server group v3Group v3 auth

用户v3user被创建并添加在v3Group下。 MD5的密码和AES加密密钥也被定义。

snmp-server user v3user v3Group v3 auth md5 snmpv3pass priv aes 128 snmpv3pass

SNMPv3测试

SNMP用户和相关组可以在Cisco设备中查看。

### privileged EXEC mode##

show snmp user

User name: v3user

Engine ID:************************

storage-type: nonvolatile active

Authentication Protocol: MD5

Privacy Protocol: AES128

Group-name: v3Group

任何Linux设备中的snmpwalk的都可以用来验证配置和检查输出。

snmpwalk-u snmpv3user-A snmpv3pass-a MD5-l authnoPriv 192.168.1.3-v3

iso.3.6.1.2.1.1.1.0= STRING:"Cisco IOS Software”

Technical Support:

Copyright(c) 1986-2012 by Cisco Systems, Inc.

iso.3.6.1.2.1.1.2.0= OID: iso.3.6.1.4.1.9.1.1166

iso.3.6.1.2.1.1.7.0= INTEGER: 78

iso.3.6.1.2.1.1.8.0= Timeticks:(0) 0:00:00.00

iso.3.6.1.2.1.2.1.0= INTEGER: 54

iso.3.6.1.2.1.2.2.1.1.1= INTEGER: 1

iso.3.6.1.2.1.2.2.1.1.2= INTEGER: 2

iso.3.6.1.2.1.2.2.1.1.3= INTEGER: 3

## output truncated##

CentOS中net-snmpd的安装和基本配置教程

安装

复制代码

代码如下:

yum install net-snmp net-snmp-devel

net-snmp-config--create-snmpv3-user-a密码用户名

chkconfig snmpd on

service snmpd start

完工!

创建一个用户

复制代码

代码如下:

/usr/local/snmp/bin/net-snmp-create-v3-user

按提示输入用户名和密码,会自动在配置文件中添加用户

然后设置开机启动snmp

复制代码

代码如下:

vi/etc/rc.local

添加

复制代码

代码如下:

/usr/local/snmp/sbin/snmpd

即可可以在监控宝中添加

net-snmp的配置文件snmpd.conf配置说明

SNMP(Simple Network Management Protocol,简单网络管理协议)的前身是简单网关监控协议(SGMP),用来对通信线路进行管理。snmpd.conf的配置项很多,但是真正常用的就那么几个,下面来逐个介绍。

com2sec命令,它的基本语法是com2sec NAME SOURCE COMMUNITY。这里要提一下SNMP的安全策略,其实SNMP的安全性并不好,在这个协议中使用COMMUNITY这个东西来做访问控制的。简单来理解就是现在有一个帮会的一个人找去了总舵,那么这个人怎么跟总舵相认呢?他们直接约定一个暗号,例如见面就说床前明月光,那么总舵的前台就会带你去床前明月光想对应的地方。现在回过头来看这行配置,假如有以下一句话

复制代码

代码如下:

com2sec magusu default magus

意思就是做一个映射,把magus这个COMMUNITY串和magusu这个名字做好一对映射,那么以后在调用SNMP的时候,只要你声明你就是magus,那么就可以获得相应的权限了。有了映射以后下面需要做的是建立一个从magusu到组的一个映射,用到的命令是group,它的基本语法是group NAME MODEL SECURITY

复制代码

代码如下:

group magusg v2c magusu

上面这句话的意思就是把magusu放到组magusg里面,用的协议是v2c,插一句,SNMP现在通常用的有3个版本。那好了,组建好了下来要做什么呢?就是要建立一个VIEW,VIEW的基本语法是view NAME TYPE SUBTREE [MASK]

复制代码

代码如下:

view magusv included.1.3.6.1.4.1.9129

像上面这句话的意思就是赋予magusv这个view能够查看1.3.6.1.4.1.9129下面所有节点的权限。最后要做的是设定哪些组的人,哪些view的用户可以做什么具体的事情,用access来设置,基本语法是access NAME CONTEXT MODEL LEVEL PREFX READ WRITE NOTIFY。

复制代码

代码如下:

access magusg any noauth exact magusv magusv none

由于例子中用的是v2c版本的协议,所以CONTEXT必须为空,MODEL也就是协议的版本号,在这里例子里面可以是any也可以是v2c,还是由于v2c的缘故,所以LEVEL是noauth;READ、WRITE和NOTIFY分别需要指定一个view或者什么都不指定;在这里的设置就是magusv这个view可以对前面设置好的节点进行读和写操作。

到此,服务端的配置已经完成,重启一下snmpd就可以了,下面看看如何通过SNMP得到我们想要的数据

复制代码

代码如下:

snmpwalk-v 2c-c magus localhost 1.3.6.1.4.1.9129.1.2.2

snmpwalk可以便利指定节点下的所有子节点,-v参数指定SNMP的协议版本,这个跟我们之前配置服务器的版本是要一致的,也就是2c,然后-c参数就指定了community的字符串,也就是刚才定义的magus,然后就是主机地址,由于我在本机测试,所以用的localhost,实际中可以填上IP,最后就是OID的值。搞定!

对于刚刚接触SNMP的朋友来说,理解community的作用是关键,其实说的通俗点就是接头暗号,而且还是个明文的暗号。

在新版本中,其配置文件增加了新的更加简便的配置方法,但是依然兼容以上的配置方法。

中标麒麟snmp配置

一、修改麒麟配置

因为中标麒麟yum可能找不到snmp的安装包,先按以下步骤修改配置。

二、修改 /etc/os-release(没有就新建该文件)

三、修改yum配置文件/etc/yum.conf

四、修改yum源 /etc/yum.repos.d/CentOS-Base.repo

五、安装snmp

可以理解为net-snmp是服务端,net-snmp-utils是客户端工具集;如果机器上只需要搭建服务那可以只安装net-snmp。

由于依赖关系,其实最终会安装net-snmp net-snmp-utils net-snmp-agent net-snmp-libs perl-Data-Dumper等几个包。

六、启动snmp服务

七、使用snmp

最后那个.x.x.x的叫OID,一个OID对应一种设备(比如网卡、磁盘等,在不同机器上同种设备的OID是一样的)

现在可以获取到一些基本的信息了,但是想获取更多的信息,还需要进一步配置 snmpd.conf

八、配置/etc/snmpd/snmpd.conf

阅读剩余
THE END