SNMP將管理數據以變量的形式展示出來,這些變量描述了系統配置。同時這些變量可以被用于管理的應用查詢(或者被設置)。
為什么需要使用SNMPv3
盡管SNMPv3所增加的加密功能并不影響協議層面,但是新的文本慣例、概念及術語使得它看起來很不一樣。
SNMPv3在SNMP的基礎之上增強了安全性以及遠程配置功能。
最初,SNMP最大的缺點就是安全性弱。SNMP的第一與第二個版本中,身份驗證僅僅是在管理員與代理間傳送一個明文的密碼而已。目前每一個SNMPv3的信息都包含了被編碼成8進制的安全參數。這些安全參數的具體意義由所選用的安全模型決定。
SNMPv3提供了重要的安全特性:
?保密性 —— 加密數據包以防止未經授權的源監聽。
?完整性 —— 數據的完整性特性確保數據在傳輸的時候沒有被干擾,并且包含了可選的數據響應保護機制。
?身份驗證 —— 檢查數據是否來自一個合法的源。
在ubuntu中安裝SNMP服務器及客戶端
打開終端運行下列
sudoapt-getinstallsnmpdsnmp
安裝完成后需要做如下改變。
配置SNMPv3
獲得從外部守護進程訪問的權限
默認的安裝僅提供本地的訪問權限,如果想要獲得外部訪問權限,打開文件 /etc/default/snmpd。
sudovi/etc/default/snmpd
改變下列內容
將
SNMPDOPTS='-Lsd-Lf/dev/null-usnmp-gsnmp-I-smux,mteTrigger,mteTriggerConf-p/var/run/snmpd.pid'
改為
SNMPDOPTS='-Lsd-Lf/dev/null-usnmp-I-smux-p/var/run/snmpd.pid-c/etc/snmp/snmpd.conf'
最后重啟 snmpd
sudo/etc/init.d/snmpdrestart
定義 SNMPv3 用戶,身份驗證以及加密參數
“securityLevel”參數使得SNMPv3有多種不同的用途。
?noAuthNoPriv —— 沒有授權,加密以及任何安全保護!
?authNoPriv —— 需要身份認證,但是不對通過網絡發送的數據進行加密。
?autoPriv —— 最可靠模式。需要身份認證而且數據會被加密。
snmpd 的配置以及設置都保存在文件 /etc/snmp/snmpd.conf。使用編輯器編輯文件:
sudovi/etc/snmp/snmpd.conf
在文件末尾添加以下內容:
#createUseruser1createUseruser2MD5user2passwordcreateUseruser3MD5user3passwordDESuser3encryption#rouseruser1noauth1.3.6.1.2.1.1rouseruser2auth1.3.6.1.2.1rwuseruser3priv1.3.6.1.2.1
注:如果你需要使用自己的用戶名/密碼對的話,請注意密碼及加密短語的最小長度是8個字符。
同時,你需要做如下的配置以便snmp可以監聽來自任何接口的連接請求。
將
#agentAddressudp:161,udp6:[::1]:161
改為
agentAddressudp:161,udp6:[::1]:161
保存改變后的snmpd.conf文件并且重啟守護進程:
sudo/etc/init.d/snmpdrestart