注意:snmp V3,需要需要关闭selinux和防火墙;

关闭selinux方法:

#vi /etc/selinux/config

将文件中的SELINUX="" 为 disabled ,然后重启。

关闭防火墙方法:

service iptables stop

开机不启动防火墙:

chkconfig iptables off

1. 检查服务器是否已经安装了 net-snmp服务,如果已经安装跳过此环节。

安装前期安装必备套件net-snmp net-snmp-devel net-snmp-utils
说明:

net-snmp:提供了一个入口,使得监控服务器可以通过snmp协议从这个入口与被监控机器通信
net-snmp-devel: 是为了使用net-snmp-config, net-snmp-utils是为了使用snmpwalk
net-snmp-libs:  提供了运行需要的库文件
net-snmp-utils: 提供了一套工具,可以利用snmp协议进行通信

  我的安装如下:

yum -y install net-snmp net-snmp-devel net-snmp-utils

2. 已经成功后,开始配置/etc/snmp/snmpd.conf

如果已经启动,先停止后再进行配置:

[root@hxweb101 ~]$ service snmpd stop
#注意:-a是密码,-A是密码加密方式,而用户名跟在最后面
# -ro表示只读用户组,可以采集信息,但是不能更改系统设置
#说明:在snmpwalk测试的时候,-a表示加密方式,-A是密码,所以这一点很重要 [root@hxweb101 ~]$ net-snmp-config --create-snmpv3-user -ro -a mypass -A MD5 myname
#执行完成后会输出
#adding the following line to /var/lib/net-snmp/snmpd.conf:
# createUser myname MD5 "Jian.kong@bao1" DES
#adding the following line to /etc/snmp/snmpd.conf:
# rouser myname

注意这里,配置文件的路径发生了变化:

Centos .X是: /var/net-snmp/snmpd.conf
Centos .X是: /var/lib/net-snmp/snmpd.conf

然后启动,进行测试:

[root@hxweb101 ~]$ service snmpd start
[root@hxweb101 ~]$ snmpwalk -v3 -u myname -l auth -a MD5 -A mypass 127.0.0.1 if #如果输出下面信息,说明配置成功:
IF-MIB::ifIndex. = INTEGER:
IF-MIB::ifIndex. = INTEGER:
IF-MIB::ifIndex. = INTEGER:
IF-MIB::ifDescr. = STRING: lo
IF-MIB::ifDescr. = STRING: em1
IF-MIB::ifDescr. = STRING: em2
IF-MIB::ifType. = INTEGER: softwareLoopback()
IF-MIB::ifType. = INTEGER: ethernetCsmacd()
IF-MIB::ifType. = INTEGER: ethernetCsmacd()
IF-MIB::ifMtu. = INTEGER:
IF-MIB::ifMtu. = INTEGER:
IF-MIB::ifMtu. = INTEGER:
....
....
IF-MIB::ifOutDiscards. = Counter32:
IF-MIB::ifOutDiscards. = Counter32:
IF-MIB::ifOutDiscards. = Counter32:
IF-MIB::ifOutErrors. = Counter32:
IF-MIB::ifOutErrors. = Counter32:
IF-MIB::ifOutErrors. = Counter32:
IF-MIB::ifOutQLen. = Gauge32:
IF-MIB::ifOutQLen. = Gauge32:
IF-MIB::ifOutQLen. = Gauge32:
IF-MIB::ifSpecific. = OID: SNMPv2-SMI::zeroDotZero
IF-MIB::ifSpecific. = OID: SNMPv2-SMI::zeroDotZero
IF-MIB::ifSpecific. = OID: SNMPv2-SMI::zeroDotZero

我创建用户的时候没有没有设定privpass,是为了简化过程,如果要创建带privpass验证,而且这个privpass也可以选择不同于密码的加密方式,比如,我密码采用MD5加密,而privpass采用AES加密,增加破解难度,那么可以这样写

net-snmp-config:
--create-snmpv3-user [-ro] [-a authpass] [-x privpass] [-X DES] [-A MD5|SHA] [username]

snmpwalk V3验证常用参数:

-v |2c|             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

snmpwalk V2c/V1验证常用:

-c COMMUNITY          set the community string

例如,SNMP V3 用户创建实例:

[root@hxweb101 ~]$ net-snmp-config --create-snmpv3-user -ro -a mypass -A MD5 -x myprivpass -X DES myname

#snmpwalk要这样写
[root@hxweb101 ~]$ snmpwalk -v3 -u myname -l authPriv -a MD5 -A mypass -x DES -X myprivpass 127.0.0.1 if

命令执行之后将自动建立新的配置文件snmpd.conf,而内容也十分简单。只有用户名和权限,而关于认证方式的信息则会存储在/var/net-snmp/snmpd.conf文件中。

[root@hxweb101 ~]$ cat /var/lib/net-snmp/snmpd.conf

3.设置IPtables,确保安全

接下来的事情,就是就是开放指定IP访问161的UDP端口

#注意:
# . 假设服务器外网网卡是em1,请根据实际情况修改。
# . 只有x.x.x.x可以发送UDP数据包到你的服务器的161端口 #--------Specail Setting for SNMP --------------#
iptables -A INPUT -i em1 -p udp -s x.x.x.x --dport -j ACCEPT
iptables -A INPUT -i em1 -p udp -s x.x.x.x --dport -j ACCEPT

原文:http://blog.hexu.org/archives/1698.shtml/comment-page-1

最新文章

  1. win10 Vmware12装mac os X10.11虚拟机教程
  2. Hive 实战(1)--hive数据导入/导出基础
  3. NYOJ-205 求余数 AC 分类: NYOJ 2014-02-02 12:30 201人阅读 评论(0) 收藏
  4. 转载:NPOI导出到Excel表格
  5. L008-oldboy-mysql-dba-lesson08
  6. MySQL的if,case语句
  7. Visual Studio 2013中的“Browser Link”
  8. svn恢复到某一版本
  9. apicloud教程3 (转载)
  10. Are We There Yet? (zoj1745)
  11. python selenium 处理时间日期控件(十六)
  12. Windows批处理命令用法
  13. html 刷新重载方法汇总
  14. lambda表达式底层处理机制
  15. df看到的文件系统容量跟parted看到的分区容量差别较大的解决方法
  16. c# 创建压缩包并下载文件
  17. SQL筛选出同一学科的时间最新的记录
  18. 龙儿经理嘴上经常说的B树
  19. [Node.js] Show More Lines in a Node.js Error Stack Trace
  20. ionic + cordova 环境搭建

热门文章

  1. Windows 10 执行pip list报错 UnicodeDecodeError: 'gbk' codec can't decode
  2. JSON数据提取
  3. [HDFS_add_3] HDFS 机架感知
  4. 路由交换02-----ARP协议
  5. 随机生成&部门匹配
  6. Flex布局新写法兼容写法详解
  7. 深入分析escape()、encodeURI()、encodeURIComponent()的区别及示例
  8. 2018-2019-2 网络对抗技术 20165318 Exp6 信息搜集与漏洞扫描
  9. LOOPS HDU - 3853 (概率dp):(希望通过该文章梳理自己的式子推导)
  10. the security of smart contract- 1