標籤:centossnmp
先下載CentosSNMP服務
yum install -y net-snmp net-snmp-devel net-snmp-utils
2. 安裝完成後配置SNMP服務
[[email protected] ~]# cat /etc/snmp/snmpd.conf |grep -vE "^#|^$"com2sec notConfigUser default publicgroup notConfigGroup v1 notConfigUsergroup notConfigGroup v2c notConfigUserview systemview included .1.3.6.1.2.1.1view systemview included .1.3.6.1.2.1.25.1.1access notConfigGroup "" any noauth exact systemview none nonesyslocation Unknown (edit /etc/snmp/snmpd.conf)syscontact Root <[email protected]> (configure /etc/snmp/snmp.local.conf)dontLogTCPWrappersConnects yes參數說明:# 格式:com2sec [-Cn context] sec.name source community# com2sec:固定命令# [-Cn context]:可選的,在v3版本中使用# sec.name: 內部映射的名字,字串,建組的時候需要用到# source: 可以訪問的ip位址範圍,預設值"default”,即任何ip都可以訪問.也可以使用限制192.168.1.0/24,或者192.168.1.0/255.255.255.0# community: 實體字串,外部使用的名字com2sec notConfigUser default public# 格式:group groupName securityModel sec.name# group: 固定命令# groupName: 組名# securityMode1: v1,v2c,usm,tsm,ksm# sec.name:將sec.name映射到一個group中,組中具有相同的存取許可權。group notConfigGroup v2c notConfigUser# 格式:view viewName type oid [mask]# view: 定義一個view,表示整個OID樹中的子樹,同一個子樹可定義多個view# viewName: view名字# type: included和exclude(包括和排除)# oid: 可訪問的oid# [mask]: 對oid的mask例:view all include 1.3.6.1.2.1.4 0xf0# 0xf0:1111 0000,即訪問的oid的前4位必須是1.3.6.1,否則不能訪問,即可以訪問1.3.6.1下所有的子oidview systemview included .1.3.6.1.2.1.25.1.1# 格式:access groupName context model level prefx view read write # access:設定訪問某一個view的許可權# groupName:控制存取許可權的組名# context:v1和v2c版本,context必須設定為""# mode1:v1、v2c、usm、tsm、ksm。最後三種為v3版本授權模式,usm(基於使用者的驗證),tsm(SSH or DTLS),)ksm(用於支援Kerberos)# level: noauth、auth、priv。noauth(允許無許可權訪問,v1,v2c可用),auth(必須有許可權才能訪問),pric(強制加密訪問)# prefx: exact or prefix(精確或首碼)# view read、write:指明某一個view的許可權是否可以GET*, SET*,如果該view不能read或write,則設定noneaccess notConfigGroup "" any noauth exact systemview none none# 如果不注釋掉,會生產日誌到log裡,僅在調試時關閉dontLogTCPWrappersConnects yessyslocation Unknown (edit /etc/snmp/snmpd.conf)syscontact Root <[email protected]> (configure /etc/snmp/snmp.local.conf)其他具體參數,請參照官方說明 http://www.NET-snmp.org/docs/man/snmpd.conf.html
3. 啟動SNMP服務即可
service snmpd startchkconfig --add snmpd 3,5 on
4. 驗證服務是否啟動成功
[[email protected] ~]# snmpwalk -v 2c -c public localhost sysNameSNMPv2-MIB::sysName.0 = STRING: vpv-zhu.abc.com# 如上,可以得到主機名稱,表示SNMP服務可以正常使用[[email protected] ~]# snmptranslate -To|head -n3.1.3.1.3.6.1.3.6.1# 如上,表示SNMP工具可以使用[[email protected] ~]# snmpwalk -v 2c -c public 10.60.12.64 sysName# 測試遠程Linux服務是否正常,如果得不到遠程主機名稱,檢查遠程Linux防火牆[[email protected] ~]# snmpwalk -v 2c -c public localhost 1.3.6.1.4.1.2021.11.11.0UCD-SNMP-MIB::ssCpuIdle.0 = No more variables left in this MIB View (It is past the end of the MIB tree)# 如上表示無法擷取CPU空閑狀態(註:1.3.6.1.4.1.2021.11.11.0是主機CPU空閑率的oid)
5. 要擷取主機的一些重要訊息,則要修改snmp的預設配置
view systemview included .1.3.6.1.2.1.25.1.1# view定義了可以訪問哪些節點裝置資訊view systemview included ./# 使訪問所有的資訊(較危險)
注意:需要防火牆開啟UDP 161連接埠
snmp簡單oid列表:http://www.ttlsa.com/monitor/snmp-oid/
本文出自 “擱淺丶” 部落格,請務必保留此出處http://yasar.blog.51cto.com/9120455/1876306
Centos開啟SNMP服務