㈠ 如何配置linux下的snmp服务
安装snmp服务
CentOS/RedHat下可以只用yum命令进行安装。
$ yum –y install net-snmp net-snmp-devel
若要使用snmpwalk进行安装检测,则还需要安装net-snmp-utils包
$ yum –y install net-snmp-utils
Ubuntu可以通过apt-get install snmp snmpd 进行安装
设置安全的验证方式
将SNMP代理程序暴露给网络上的所有主机是很危险的,为了防止其它主机访问您的SNMP代理程序,我们需要在SNMP代理程序上加入身份验证机制。SNMP支持不同的验证机制,这取决于不同的SNMP协议版本,云监控目前支持v2c和v3两个版本,其中v2c版本的验证机制比较简单,它基于明文密码和授权IP来进行身份验证,而v3版本则通过用户名和密码的加密传输来实现身份验证,我们建议使用v3,当然,只要按照以下的介绍进行配置,不论是v2c版本还是v3版本,都可以保证一定的安全性,您可以根据情况来选择。
注意一点,SNMP协议版本和SNMP代理程序版本是两回事,刚才说的v2c和v3是指SNMP协议的版本,而Net-SNMP是用来实现SNMP协议的程序套件,目前它的最新版本是刚才提到的5.4.2.1。
v2c
先来看如何配置v2c版本的SNMP代理,我们来创建snmpd的配置文件,默认情况下它是不存在的,我们来创建它,如下:
sdo:~ # vi /usr/local/snmp/share/snmp/snmpd.conf
然后我们需要创建一个只读帐号,也就是read-only community,在snmpd.conf中添加以下内容:
rocommunity sdomonitor 114.80.132.9 rocommunity sdomonitor 58.215.169.26 rocommunity sdomonitor 58.215.169.27
如果想要检测服务是否成功开启,则还需要在snmpd.conf中添加:
rocommunity sdomonitor 127.0.0.1
注意,这里的"rocommunity"表示这是一个只读的访问权限,云监控只可以从您的服务器上获取信息,而不能对服务器进行任何设置。
紧接着的"sdomonitor"相当于密码,很多平台喜欢使用"public"这个默认字符串。这里的"sdomonitor"只是一个例子,您可以设置其它字符串作为密码。
最右边的"60.195.249.83"代表指定的监控点IP,这个IP地址是云监控专用的监控点,这意味着只有云监控有权限来访问您的SNMP代理程序。
所以,以上这段配置中,只有"sdomonitor"是需要您进行修改的,同时在云监控上添加服务器的时候,需要提供这个字符串。
v3
当然,我们建议您使用v3版本来进行身份验证。对于一些早期版本的Linux分发版,其内置的SNMP代理程序可能并不支持v3,所以我们建议您按照前边介绍的方法,编译和安装最新的Net-Snmp。
v3支持另一种验证方式,需要创建一个v3的帐号,我们同样修改以下配置文件:
sdo:~ # vi /usr/local/snmp/share/snmp/snmpd.conf
然后添加一个只读帐号,如下:
rouser sdomonitor auth
可以看到,在v3中,"rouser"用于表示只读帐号类型,随后的"sdomonitor"是指定的用户名,后边的"auth"指明需要验证。
接下来,我们还要添加"sdomonitor"这个用户,这就是v3中的特殊机制,我们打开以下配置文件:
sdo:~ # vi /var/net-snmp/snmpd.conf
这个文件会在snmpd启动的时候被自动调用,我们需要在它里边添加创建用户的指令,如下:
createUser sdomonitor MD5 mypassword
这行配置的意思是创建一个名为"sdomonitor"的用户,密码为"mypassword",并且用MD5进行加密传输。这里要提醒的是:
密码至少要有8个字节
这是SNMP协议的规定,如果小于8个字节,通信将无法进行。
值得注意的是,一旦snmpd启动后,出于安全考虑,以上这行配置会被snmpd自动删除,当然,snmpd会将这些配置以密文的形式记录在其它文件中,重新启动snmpd是不需要再次添加这些配置的,除非您希望创建新的用户。
以上配置中的用户名、密码和加密方式,在云监控添加服务器的时候需要添加。
启动snmp服务
$ service snmpd start
用以下命令检查服务是否启动成功
$ snmpwalk -v 2c -c sdomonitor 127.0.0.1 system
如果要关闭,则可以直接kill这个进程,如下:
$ killall -9 snmpd 或者$ service snmpd stop
㈡ linux怎么安装snmp服务器配置
一、安装snmp服务
1、检查系统是否已经安装snmp的rpm包
以下是安装snmp服务需要的rpm包:
libsensors3-2.10.6-55.el5.i386.rpm
lm_sensors-2.10.6-55.el5.i386.rpm
net-snmp-libs-5.3.2.2-5.el5.i386.rpm
net-snmp-5.3.2.2-5.el5.i386.rpm
net-snmp-utils-5.3.2.2-5.el5.i386.rpm
推荐到http://rpm.pbone.net/下载这些rpm包,该网站比较全面,包含各种版本的包。
使用命令:$ rpm -qa|grep snmp
检查是否安装net-snmp-utils-5.3.2.2-5.el5,net-snmp-libs-5.3.2.2-5.el5,net-snmp-5.3.2.2-5.el5三个rpm包
使用命令:$ rpm -qa|grep libsen
检查是否安装libsensors3-2.10.6-55.el5
使用命令:$ rpm -qa|grep lm
检查是否安装lm_sensors-2.10.6-55.el5
说明:
(1)这几个包的安装有一定顺序,在安装的时候,会有提示。比如安装
net-snmp-5.3.2.2-5.el5.i386.rpm时,会提示必须先安装net-snmp-libs-5.3.2.2-5.el5.i386.rpm。
(2)net-snmp-utils-5.3.2.2-5.el5.i386.rpm并不是必须安装的包,但安装它会带来不少帮助,它提供了很多工具,例如可以使用snmptranslate命令查看oid,可以使用snmpget、snmpwalk命令等。
(3)net-snmp-libs-5.3.2.2-5.el5.i386.rpm、net-snmp-5.3.2.2-5.el5.i386.rpm、
net-snmp-utils-5.3.2.2-5.el5.i386.rpm这三个包有一定的版本要求,必须版本一致,否则安装无法成功。我这里都使用的5.3.2.2-5.el5版本,也可以下载其他版本的rpm包,但注意版本要一致,在安装的时候也会提示,哪个版本的包是必须的,你可以根据提示下载需要的包。
2、安装以上的几个rpm包
若系统中没有安装以上包,则先安装。
使用命令:rpm –ivh 包名
安装完后,使用命令:$ rpm -qa|grep snmp,检查是否已经安装成功。
YUM 安装
1 yum install -y net-snmp net-snmp-utils
3、启动snmp服务
若安装成功,则可使用命令:
$ service snmpd start
提示:Starting snmpd: [ OK ],则启动snmp服务成功。
你可以将snmp服务设置为开机自启动,这样免去手动启动的麻烦。
使用命令:$ chkconfig snmpd on,将snmpd服务设为开机自启动。
然后使用命令:$ chkconfig --list | grep snmpd,查看是否已经设置成功。
4、验证snmp服务
(1)使用snmpwalk命令,查看本机localhost的主机名:
如上,获取到本机主机名为Oracle.domain.com,则表示snmp服务已经可以正常使用。
(2)使用snmptranslate命令,检查snmp工具是否可以使用:
如上,查出了部分oid,则表示snmp工具可以正常使用。
(3)测试远端主机是否可以获取数据。
我这里登陆了另外一台Linux主机,该主机也按照上面的步骤安装好snmp服务及snmp工具。通过这台主机,获取远端主机的数据,这时需指定远端主机的IP地址:
如上,可以看到通过远端主机获取到的主机名,与在本机获取到的主机名是一致的。
二、配置snmp服务
以上安装完成后,使用的是snmp的默认配置,通过这些默认配置,我们只能获取主机的部分信息。但一些其他的重要信息,无法获取。如主机的CPU使用情况,内存使用情况等。
如上,无法获取CPU的空闲率(注:1.3.6.1.4.1.2021.11.11.0是主机CPU空闲率的oid)。
这时候,若要获取主机的一些重要信息,则要修改snmp的默认配置。
配置方法:修改/etc/snmp/snmpd.conf文件
1、修改查看设备节点的权限
在该文件中,找到如下位置:
view:定义了可以查看哪些节点设备的信息。
snmp默认配置只能查看.1.3.6.1.2.1.1和.1.3.6.1.2.1.25.1.1节点下的设备信息,而主机CPU和内存等设备都不在这些节点下,所以无法获取这些数据。
因此,可以修改这个配置,如下:
在此处添加了一行:
view systemview included .1
表示可以查看.1节点下的所有设备信息。
2、修改Process checks的配置
找到如下位置:
将
# proc mountd
# proc ntalkd 4
# proc sendmail 10 1
三行前的“#”号去掉,取消注释,结果为:
3、修改Executables/scripts配置
找到如下位置:
将
#exec echotest /bin/echo hello world
一行前的“#”号去掉,取消注释。
4、修改disk checks配置
找到如下位置:
将
#disk / 10000
一行前的“#”号去掉,取消注释。
5、修改load average checks配置
找到如下位置:
将 #load 12 14 14
一行前的“#”号去掉,取消注释。
6、保存修改,重启snmp服务
7、验证修改配置后的snmp服务
如上,通过本机localhost获取到CPU的空闲率为97%。
如上,通过远端主机获取到CPU的空闲率为93%。
㈢ 如何在Linux服务器上开启安全的SNMP代理
1) 安装SNMP
略,请参阅LINUX系统SNMP安装说明,一般情况下Linux中 的均已经自动安装了SNMP服务。以下命令可以检测SNMP服务是否安装以及安装的文件包。
[root@idc ~]# rpm -qa |grep snmp
net-snmp-libs-5.1.2-11.EL4.7
net-snmp-5.1.2-11.EL4.7
2) 配置SNMP
按照如下方式修改/etc/snmp/snmpd.conf文件
A、修改默认的community string(SUM中SNMP读值密码)
com2sec notConfigUser default public
将public修改为你才知道的字符串
将“default”改为你想哪台机器可以看到你 的snmp信息,比如SUM所在IP为:10.10.10.10, 就改成这个IP。不改表示所有机器充许。
B、把下面的#号去掉
#view mib2 included .iso.org.dod.internet.mgmt.mib-2 fc
启用全部功能可以使用如下一行(如果没有可以加入一行):
view all included .1 80
C、把下面的语句
access notConfigGroup "" any noauth exact systemview none none
改成:
access notConfigGroup "" any noauth exact mib2 none none
或是:
access notConfigGroup "" any noauth exact all none none
3) 启动与停止SNMP
一般使用:service snmpd start|stop|restart命令。或是:
#/etc/rc.d/init.d/snmpd restart
4) 防火墙
如果Linux启动了防火墙,请开放UDP的161端 口。确保Linux的iptables防火墙对SUM监控服务器开放 了udp 161端口的访问权限
可使用iptables ?L ?n 查看当前iptables规则
可编辑/etc/sysconfig/iptables文 件来修改iptables规则。
㈣ linux系统用rpm包怎么配置snmp
1.检查系统是否已经安装snmp的rpm包 以下是安装snmp服务需要的rpm包: libsensors3-2.10.6-55.el5.i386.rpm lm...
2.安装以上的几个rpm包 若系统中没有安装以上包,则先安装。 使用命令:rpm –ivh ...
3.启动snmp服务 若安装成功,则可使用命令: $ service snmpd start...
4.验证snmp服务 (1)使用snmpwalk命令,查看本机localhost的主机名: ...
㈤ linux下安装snmp的依赖包有哪些
Linux有很多版本。我使用的Linux Mint 17 (Ubuntu衍生版)上,直接就可以安装snmp,依赖关系直接已经满足。
不过既然你问到,我也帮你查出来了:
libc6(>=2.14)
libsnmp30(>=5.7.2~dfsg)
libssl1.0.0(>=1.0.0)
libsnmp-base
㈥ linux怎么安装配置snmp协议
一、安装
snmp
服务
1
、检查系统是否已经安装
snmp
的
rpm
包
以下是安装
snmp
服务需要的
rpm
包:
libsensors3-2.10.6-55.el5.i386.rpm
lm_sensors-2.10.6-55.el5.i386.rpm
net-snmp-libs-5.3.2.2-5.el5.i386.rpm
net-snmp-5.3.2.2-5.el5.i386.rpm
net-snmp-utils-5.3.2.2-5.el5.i386.rpm
推荐到
http://rpm.pbone.net/
下载这些
rpm
包,该网站比较全面,包含各种版本的包。
使用命令:
$rpm-qa|grepsnmp
检查是否安装
net-snmp-utils-5.3.2.2-5.el5
,
net-snmp-libs-5.3.2.2-5.el5
,
net-snmp-5.3.2.2-5.el5
三个
rpm
包
使用命令:
$rpm-qa|greplibsen
检查是否安装
libsensors3-2.10.6-55.el5
使用命令:
$rpm-qa|greplm
检查是否安装
lm_sensors-2.10.6-55.el5
说明:
(
1
)这几个包的安装有一定顺序,在安装的时候,会有提示。比如安装
net-snmp-5.3.2.2-5.el5.i386.rpm
时,会提示必须先安装
net-snmp-libs-5.3.2.2-5.el5.i386.rpm
。
(
2
)
net-snmp-utils-5.3.2.2-5.el5.i386.rpm
并不是必须安装的包,但安装它会带来不少帮助,
它提供了很多工具,
例如可以使用
snmptranslate
命令查看
oid
,
可以使用
snmpget
、
snmpwalk
命令等。
(
3
)
net-snmp-libs-5.3.2.2-5.el5.i386.rpm
、
net-snmp-5.3.2.2-5.el5.i386.rpm
、
net-snmp-utils-5.3.2.2-5.el5.i386.rpm
这三个包有一定的版本要求,必须版本一致,否则安装
无法成功。我这里都使用的
5.3.2.2-5.el5
版本,也可以下载其他版本的
rpm
包,但注意版本
要一致,在安装的时候也会提示,哪个版本的包是必须的,你可以根据提示下载需要的包。
2
、安装以上的几个
rpm
包
若系统中没有安装以上包,则先安装。
使用命令:
rpm–ivh
包名
安装完后,使用命令:
$rpm-qa|grepsnmp
,检查是否已经安装成功。
3
、启动
snmp
服务
若安装成功,则可使用命令:
$servicesnmpdstart
提示:
Starting
snmpd:
[OK]
,则启动
snmp
服务成功。
你可以将
snmp
服务设置为开机自启动,这样免去手动启动的麻烦。
使用命令:
$chkconfigsnmpdon
,将
snmpd
服务设为开机自启动。
然后使用命令:
$chkconfig--list|grepsnmpd
,查看是否已经设置成功。
4
、验证
snmp
服务
(
1
)使用
snmpwalk
命令,查看本机
localhost
的主机名:
如上,可以看到通过远端主机获取到的主机名,与在本机获取到的主机名是一致的。
二、配置
snmp
服务
以上安装完成后,使用的是
snmp
的默认配置,通过这些默认配置,我们只能获取主机的部
分信息。但一些其他的重要信息,无法获取。如主机的
CPU
使用情况,内存使用情况等。
如上,无法获取
CPU
的空闲率(注:
1.3.6.1.4.1.2021.11.11.0
是主机
CPU
空闲率的
oid
)
。
这时候,若要获取主机的一些重要信息,则要修改
snmp
的默认配置。
配置方法:修改
/etc/snmp/snmpd.conf
文件
1
、修改查看设备节点的权限
在该文件中,找到如下位置:
view
:定义了可以查看哪些节点设备的信息。
snmp
默认配置只能查看
.1.3.6.1.2.1.1
和
.1.3.6.1.2.1.25.1.1
节点下的设备信息,
而主机
CPU
和
内存等设备都不在这些节点下,所以无法获取这些数据。
因此,可以修改这个配置,如下:
在此处添加了一行:
viewsystemviewincluded.1
表示可以查看
.1
节点下的所有设备信息。
㈦ linux 服务器怎么开启snmp
对SNMP进行安装和配置即可。
㈧ linux的snmpwalk命令
linux下snmpwalk命令不太常用到,所有很多人对它都不太熟悉,下面由我为大家搜集整理了linux的snmpwalk命令的相关知识,希望对大家有帮助!
linux的snmpwalk命令
SNMPWALK是一个通过SNMP GET-NEXT类型PDU,实现对目标AGENT的某指定MIB分支信息进行完整提取输出的命令工作。
命令行:snmpwalk [选项] agent [oid]
选项参数:由于SNMP协议中,不同的协议版本存在不同的参数选项,以下参数按协议分开说明。
1. 普通选项
a) –h 显示帮助
b) –v 1|2c|3 指定SNMP协议版本
c) –V 显示当前SNMPWALK命令行版本
d) –r RETRIES 指定重试次数,默认为0次。
e) –t TIMEOUT 指定每次请求的等待超时时间,单为秒,默认为3秒。
f) –Cc 指定当在WALK时,如果发现OID负增长将是否继续WALK。
2.V1、V2C选项
a) –c COMMUNITY 指定共同体字符串
3.V3选项
a) –l LEVEL 指定安全级别:noAuthNoPriv|authNoPriv|authPriv
b) –u USER-NAME 安全名字
c) –a PROTOCOL 验证协议:MD5|SHA。如果-l指定为authNoPriv或authPriv时才需要。
d) –A PASSPHRASE 验证字符串。如果-l指定为authNoPriv或authPriv时才需要。
e) –x PROTOCOL 加密协议:DES。如果-l指定为authPriv时才需要。
f) –X PASSPHRASE 加密字符串:如果-l指定为authPriv时才需要。
linux的snmpwalk命令常用方法
1、snmpwalk -v 2c -c public 10.103.33.1 .1.3.6.1.2.1.25.1 得到取得windows端的系统进程用户数等
其中-v是指版本,-c 是指密钥,也就是客户端snmp.conf里面所设置的,下面类同.
2、snmpwalk -v 2c -c public 10.103.33.1 .1.3.6.1.2.1.25.2.2 取得系统总内存
3、snmpwalk -v 2c -c public 10.103.33.1 hrSystemNumUsers 取得系统用户数
4、snmpwalk -v 2c -c public 10.103.33.1 .1.3.6.1.2.1.4.20 取得IP信息
5、snmpwalk -v 2c -c public 10.103.33.1 system 查看系统信息
6、snmpwalk -v 2c -c public 10.103.33.1 ifDescr 获取网卡信息
以上只是一些常用的信息,snmpwalk功能很多,可以获取系统各种信息,只要更改后面的信息类型即可.如果不知道什么类型,也可以不指定,这样所有系统信息都获取到:
snmpwalk -v 2c -c public 10.103.33.1
㈨ linux设定snmp
安装SNMP软件包,然后修改配置文件喔