Linux下安装部署SNMP
(源自:杨志刚 博客 http://yangzhigang.cublog.cn)
 
前言:
记录我在一台原本没有安装snmp的服务器上通过源码方式安装最新版本snmp的过程。
 
1)查原系统是否安装了snmp
  # rpm –qa | grep snmp
 
2)下载、解压、配置、编译、安装
  (到http://www.net-snmp.net/download.html上下载最新的net-snmp版本,目前是5.5。)
  # cd /usr/local/src
  # wget
http://cdnetworks-kr-2.dl.sourceforge.net/project/net-snmp/net-snmp/5.5/net-snmp-5.5.tar.gz
  # tar zxvf net-snmp-5.5.tar.gz
  # cd net-snmp-5.5
  # ./configure

  (编译中会有交互过程。如选择版本等。)
  # make
  # make install
 
3)指令路径说明
   安装完成之后:/usr/local/sbin/snmpd 是启动snmp的程序,snmp的可执行命令(如,snmpget、snmpwalk等)默认安装在/usr/local/bin下。
4)snmpd.conf文件
   用find / -name snmpd.conf查找一下snmpd.conf文件,可以发现仅有找到以下一条结查:
/usr/local/src/net-snmp-5.5/python/netsnmp/tests/snmpd.conf

   将其cp到/etc下:
cp /usr/local/src/net-snmp-5.5/python/netsnmp/tests/snmpd.conf /etc/snmpd.conf
 
5)启动snmp
用以下命令启动snmp:
# /usr/local/sbin/snmpd -c /etc/snmpd.conf
(将/usr/local/sbin/snmpd -c /etc/snmpd.conf 加入到/etc/rc.d/rc.local中,成为开机自动启动)
 
6)检查snmp启动情况
netstat –anu 查一下是否监听:161端口;
或用 ps –ef |grep snmp可以检查snmpd的进程
 
7)测试snmp取数据
# snmpwalk -c public -v 2c localhost
看是否可以出现正常的查询结果。
 
8)进行snmpd.conf文件的配置
但此时仅是在本机上可以进行snmp查询,在另一个服务器上是查不到的,所以还要更改一下/etc/snmpd.conf的配置。
# 1) 设置监控机的IP或监控机的网段,以及团体字映射到安全名
com2sec local 192.168.10.2      public
com2sec monitorhost 192.168.10.1      public
com2sec mynetwork1 92.168.1.0/24     public

# 2) 映射组名和安全名
group MyRWGroup v2c        local
group MyRWGroup v2c        monitorhost
group MyROGroup v2c        mynetwork

# 3)设置mib subtree视图
view all    included  .1                               80
# 4) 设置read/write权限
access MyROGroup ""      any       noauth    exact  all    none   none
access MyRWGroup ""      any       noauth    exact  all    all    none