Ubuntu下安装net-snmp5.7.1的方法

1.安装net-snmp5.7.1方法

Ubuntu下安装net-snmp

Ubuntu下安装net-snmp,具体步骤如下:

1、获取net-snmp的安装包,这里我们选择源代码的安装方式,当然你也可以选择ubuntu的网络下载方式安装,如:
  >> sudo apt-get install net-snmp
 
或者是自己从网络down下来手动编译安装,这里我选择最新版本的net-snmp5.7.1,下载下来的格式为net-snmp-5.7.1.tar.gz

2、把net-snmp-5.7.1.tar.gz复制到/root下。

#  tar -zxvf net-snmp-5.7.1.tar.gz
  #cd net-snmp-5.7.1

3、安装Ubuntu下的snmp的依赖包,具体如下:
  >> sudo apt-get install libperl-dev     
//这步是自动下载,后自动安装

4、进入到解压目录 cd net-snmp,开始配置
  >> ./configure --with-default-snmp-version="3"  --with-sys-contact="@@no.where"  --with-sys-location="Unknown" --with-logfile="/var/log/snmpd.log"  --with-persistent-directory="/var/net-snmp"

./configure --enable-mfd-rewrites  --enable-embedded-perl  --with-perl-modules--with-default-snmp-version="2"  --with-sys-contact="linux"--with-sys-location="China"
 
配置完成之后,可以看如下关于Net-snmp的配置信息:

  ---------------------------------------------------------
  Net-SNMP configuration summary:
  ---------------------------------------------------------

5、编译和安装   //此时最好重启下再编译否则可能编译出错
  >> sudo make
  >> sudo make install

6、设置任何目录下可以运行snmp的命令,需做一下设置:  echo export LD_LIBRARY_PATH=/usr/local/lib  >> .bashrc

7. 启动snmp进程

  可在任何目录下运行snmpd !也可以/usr/share/sbin/snmpd –c  /usr/local/share/snmp/snmpd.conf &  //后台运行

8、验证安装是否成功,如下所示:  >> snmpget –version   如果成功,则显示当前的安装版本号,NET-SNMP  version: 5.7.1
    
如果提示如下错误:

    
snmpget: error while loading shared  libraries: libnetsnmp.so.30: cannot open shared object file: No such file or  directory
       提示缺少2个动态库文件,解决方法:cp  /usr/local/lib/libnetsnmpmibs.so.30 /usr/lib cp  /usr/local/lib/libnetsnmpmibs.so.30 /usr/lib

或者将/usr/local/lib下所有的包都copy/usr/lib下即可,这次即可正确输出版本号,表示Ubuntu下安装net-snmp成功!

9.  配置snmpd.conf文件。

   cd  /usr/local/share/snmp/,在终端输入snmpconf,运行snmpconf后,提示创建三个配置文件:snmpd.confsnmptraps.confsnmp.conf,然后提示把这三个文件移到/usr/local/share/snmp/下。

手动配置snmpd.conf的方法:先1进入选2进入 acess control  setup 然后选3(这里设rocommunitypublic)然后选择默认,然后回车.,返回选择4Agent Operating  Mode,输入端口161。之后可以vi snmpd.conf修改参数。)

  

配置snmpd.conf文件:

进入源码包目录,cp    EXAMPLE.conf /usr/local/share/snmp/下,或者直接在snmp目录下直接编辑创建vi    snmpd.conf文件。

#vi    /usr/local/share/snmp/snpmd.conf
   
把下面的内容添加到snmpd.conf文件中,并把snmpd.conf端口前的UDP去掉。


    #
我的配置文件是这样的:就是四个指令——com2sec,group,    view, access
    # com2sec
设置可访问的IP地址,访问的口令以及分组

    # sec.name source community #
下面指定一个可以访问的IP
    com2sec local 192.168.0.2 public
    # group
设置安全用户名的组

    #sec.model sec.name
    group MyRWGroup v2c local
    # view
可以对哪些MIB子树进行访问
    #incl/excl subtreemask
    view all included.1
    # access
指定各个组对MIB子数的读写权限
    #context sec.model sec.level match read write notif
    access MyRWGroup "" any noauth exact all all none

 

 

10. 验证服务是否启动成功,同时查看161端口 

# lsof -i:161   ,如果终端显示如下图1NAME的地方要显示*而不要localhost, 则服务已经启动成功

启动成功图。

如果显示下图,说明161端口是监听在localhost上的,也就是说不对外开放,只能访问本地的161端口。我们应该把这个限制去掉。

访问受限,一般是这种

以下是去掉访问限制的方法:

1.编辑路由表,可参见http://wiki.ubuntu.org.cn/IptablesHowTo

# sudo iptables -L 查看现有的iptables防火墙规则。如果您刚架设好服务器,那么规则表应该是空的。

显示内容如下:

Chain INPUT(policy    ACCEPT)
    target prot opt source destination
    Chain FORWARD (policy ACCEPT)
    target prot opt source destination
    Chain OUTPUT (policy ACCEPT)
    target prot opt source destination

#iptables -A INPUT -p udp -i eth0    --dport 161 -j ACCEPT

# sudoiptables -L 查看现有的iptables防火墙规则

Chain INPUT (policy ACCEPT)

target prot optsource destination

ACCEPT udp -- anywhere anywhere    udpdpt:snmp

2.保存路由表

机器重启后,iptables中的配置信息会被清空。您可以将这些配置保存下来,让iptables在启动时自动加载,省得每次都得重新输入。#iptables-save和#iptables-restore是用来保存和恢复设置的。

将配置好的路由表设置为开机自动加载:

#iptables-save >    /etc/iptables.up.rules  //先将防火墙规则保存到/etc/iptables.up.rules文件中

然后修改脚本vi    /etc/network/interfaces,使系统能自动应用这些规则,把下面内容添加进去。

auto eth0

iface eth0inet dhcp

pre-up iptables-restore <    /etc/iptables.up.rules

全部完成后,重启Ubuntu,查看路由表看161端口是否去除了localhost限制。

 

11. 测试我们的代理是否正常工作,输入:(这里注意指定的版本号要与snmpd.conf中配置的用户组版本号一致)

# snmpwalk -v 2c  -c public (ip address set above) 1.3.6.1.2.1.1  //(ip address set above)为要测试的IP,可为本机也可为另一台虚拟机

   # snmpwalk -v 2c -c public 192.168.0.7 1.3.6.1.2.1.1   //如果看到一堆MIB信息打印出来,则配置成功。

进行本地测试:

snmpwalk -v 2c -c public 127.0.0.1 system  //也可用这个,测试服务是否启动

snmpwalk -v 2c -c public localhost if   //如果提示无snmpwalk此命令则apt-get install snmp

snmpwalk -v 1 -c public localhost  .1.3.6.1.2.1.2.2.1.2 //获取系统有关信息IP测试, IP地址为本机或远程IP有输出表示正常

snmpwalk –v 2c –c public 192.168.0.14 if

snmpwalk -c public -v 2c localhost

 

12. 开机启动服务,也可以不配置为服务,每次开机运行下就是了。

命令:gedit /etc/rc.local   exit 0前添加usr/local/sbin/snmpd  –c/usr/local/share/snmp/snmpd.conf &


13. 关闭snmp服务

ps aux|grep snmp,获取snmp进程PID,然后killpid ,这里记住了,每次对snmpd.conf文件修改后,如果要生效,必须要杀掉snmp的老进程,再启用新的. 可用这个service snmpd restart重新启动服务如果遇到snmpd:unrecognizedservice,只要apt-get install snmp snmpd 更新下就可。

 

http://hi.baidu.com/pumom/item/716e4209f3e5cdd4dde5b08a  参考百度空间博客

 

 

 

      

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值