歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> 關於Linux

ubuntu下安裝net-snmp5.7.1的步驟

ubuntu下安裝net-snmp5.7.1的步驟   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.conf,snmptraps.conf,snmp.conf,然後提示把這三個文件移到/usr/local/share/snmp/下。   手動配置snmpd.conf的方法:先1進入選2進入 acess control  setup 然後選3(這裡設rocommunity為public)然後選擇默認,然後回車.,返回選擇4:Agent 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   ,如果終端顯示如下圖1,NAME的地方要顯示*而不要localhost, 則服務已經啟動成功   啟動成功圖。   如果顯示下圖,說明161端口是監聽在localhost上的,也就是說不對外開放,只能訪問本地的161端口。我們應該把這個限制去掉。   訪問受限,一般是這種   以下是去掉訪問限制的方法:   1.編輯路由表   # 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 更新下就可。  
Copyright © Linux教程網 All Rights Reserved