Snmp一種網絡之間的傳輸協議,經過snmp能夠採集不少指標好比cpu、內存及磁盤的信息,如今愈來愈多的網絡設備基本上都支持snmp,本文介紹了snmp的安裝過程。
安全
l 從網上下載snmp的相關tar包,而後上傳到服務器中,而後解壓安裝包,執行以下命令:tar -zxvf net-snmp-5.7.2.1.tar.gz 服務器
l 修改解壓後的文件名稱,默認解壓後的文件名稱爲tar包前面的內容。執行命令:mv net-snmp-5.7.2.1 net-snmp網絡
l 而後進入net-snmp的目錄,執行下面的命令:./configure --prefix=/usr/local/net-snmp --with-default-snmp-version="2" --with-logfile="/var/log/snmpd.log" --with-persistent-directory="/var/net-snmp" --with-mib-modules="ucd-snmp/diskio"工具
l 輸入該命令後,會有一個交互的過程,全部的交互直接回車便可。configure運行完成後,執行make指令。測試
l make命令執行完畢後,記得切換到root用戶執行命令make install,進行安裝。由於只有root用戶有某些目錄的權限。ui
l 在root用戶下進入/usr/local/目錄。須要修改net-snmp目錄權限,使用chmod -R 755 net-snmp指令(後面都用root用戶操做)。加密
l 進入/usr/local/net-snmp/bin目錄,執行./snmpconf命令,生成snmpd.conf文件。選擇snmpd.conf,輸入對應的數字便可。pwa
l 後面會讓選擇snmpd.conf的配置選項,這裏選擇Access Control Setup,輸入相應的數字,按回車便可。rest
l 而後選擇a SNMPv1/SNMPv2c read-only access community name,輸入對應數字便可。而後按回車便可。blog
l 後面會讓輸入選擇處理的權限,The community name to add read-only access for,這裏輸入public便可。
l 後面會出現下面的界面,提示輸入OID及網卡地址等信息,這裏直接輸入回車鍵就行。
l 後面會出現以下的界面,這裏咱們輸入finished,而後按下回車鍵就好了。
l 後面會出現以下的界面,這裏咱們輸入finished,而後按下回車鍵就好了。
l 後面會出現以下的界面,這裏咱們輸入quit,而後按下回車鍵就好了。
l 咱們發如今bin目錄下面生成了snmpd.conf,而後將此文件移動到/usr/local/net-snmp/share/snmp目錄下面。
l 而後進入到/usr/local/net-snmp/sbin目錄下,啓動snmpd,執行命令:./snmpd -c /usr/local/net-snmp/share/snmp/snmpd.conf
l 如何檢驗是否啓動成功呢?能夠經過查看進程的方式,使用命令ps -ef|grep snmpd,若是返回進程的信息,說明啓動成功。
l 進入/usr/local/net-snmp/bin目錄。執行./snmpwalk -v 2c -c public localhost system指令(public由snmpd.conf 中rocommunity的屬性決定),若是返回以下信息,則安裝成功。
配置方法: 1.中止snmpd服務 #service snmpd stop 2.增長snmpv3用戶,並設置認證以及加密方式 # net-snmp-create-v3-user Enter a SNMPv3 user name to create: enocsnmpv3 Enter authentication pass-phrase: enocsnmpv3pw Enter encryption pass-phrase: [press return to reuse the authentication pass-phrase] enocsnmpv3pk adding the following line to /var/lib/net-snmp/snmpd.conf: createUser enocsnmpv3 MD5 "enocsnmpv3pw" DES enocsnmpv3pk adding the following line to /etc/snmp/snmpd.conf: rwuser enocsnmpv3 3.啓動snmpd服務 # service snmpd restart 現經過snmpwalk測試一下: # snmpwalk -v3 -uenocsnmpv3 -lauth -aMD5 -A"enocsnmpv3pw" -X"enocsnmpv3pk" localhost | more SNMPv2-MIB::sysDescr.0 = STRING: Linux CentOS60A 2.6.32-71.el6.i686 #1 SMP Fri Nov 12 04:17:17 GMT 2010 i686 SNMPv2-MIB::sysObjectID.0 = OID: SNMPv2-SMI::org DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (9443) 0:01:34.43 或: # snmpwalk -v3 -uenocsnmpv3 -lauth -aMD5 -A"enocsnmpv3pw" localhost .1 | more 或: # snmpwalk -v3 -lauth -uenocsnmpv3 -aMD5 -xDES -A"enocsnmpv3pw" -X"enocsnmpv3pk" localhost .1 | more 補充: SNMP Version 3 specific -a PROTOCOL set authentication protocol (MD5|SHA) -A PASSPHRASE set authentication protocol pass phrase -e ENGINE-ID set security engine ID (e.g. 800000020109840301) -E ENGINE-ID set context engine ID (e.g. 800000020109840301) -l LEVEL set security level (noAuthNoPriv|authNoPriv|authPriv) -n CONTEXT set context name (e.g. bridge1) -u USER-NAME set security name (e.g. bert) -x PROTOCOL set privacy protocol (DES|AES) -X PASSPHRASE set privacy protocol pass phrase -Z BOOTS,TIME set destination engine boots/time