當前位置:首頁 » 操作系統 » snmplinux安裝

snmplinux安裝

發布時間: 2022-09-21 17:35:11

linux下簡單配置安裝cactisnmp再次安裝怎麼解決

以前確認過機器上安裝了snmp,但是這是redhat自帶的,據說裡面是沒有snmpwalk,snmpget這些命令的,所以我這里要重新
編譯安裝NET-SNMP
官方網站
http://www.net-snmp.org/
下載文件
wget http://nchc.dl.sourceforge.net/project/net-snmp/net-snmp/5.5/net-snmp-5.5.tar.gz
解開壓縮
tar zxvf net-snmp-5.5.tar.gz
配置
./configure --prefix=/usr/local/net-snmp --enable-developer
中間有提示,一路回車下去
make
報錯如下:
grep: /usr/lib/libbeecrypt.la: No such file or directory
/bin/sed: can't read /usr/lib/libbeecrypt.la: No such file or directory
libtool: link: `/usr/lib/libbeecrypt.la' is not a valid libtool archive
make[1]: *** [libnetsnmpmibs.la] 錯誤 1
make[1]: Leaving directory `/var/tmp/net-snmp-5.5/agent'
make: *** [subdirs] 錯誤 1
解決辦法:
安裝beecrypt
wget http://nchc.dl.sourceforge.net/sourceforge/beecrypt/beecrypt-4.1.2.tar.gz
tar zxvf beecrypt-4.1.2.tar.gz
./configure --prefix=/usr
make
make install

重新make,又報錯了,報錯如下:
/usr/bin/ld: cannot find -lelf
collect2: ld returned 1 exit status
make[1]: *** [libnetsnmpmibs.la] 錯誤 1
make[1]: Leaving directory `/var/tmp/net-snmp-5.5/agent'
make: *** [subdirs] 錯誤 1
解決辦法:
ln -s libelf.so.1 /usr/lib/libelf.so

繼續make,成功了:)
make install
安裝成功。

鏈接過去
ln -s /usr/local/net-snmp/bin/* /usr/local/bin/

cp EXAMPLE.conf /usr/local/net-snmp/share/snmp/snmpd.conf

/usr/local/net-snmp/sbin/snmpd //啟動SNMP服務

vi /etc/rc.d/rc.local
//在rc.local上加入一行/usr/local/net-snmp/sbin/snmpd,系統啟動時啟動SNMP服務

現在再回頭看看cacti的錯誤
錯誤:/usr/local/bin/snmpwalk
錯誤:/usr/local/bin/snmpget
錯誤:/usr/local/bin/snmpbulkwalk
錯誤:/usr/local/bin/snmpgetnext
再次點開,這次就沒有以上的錯誤啦。點Finish
輸入用戶名和密碼admin/admin

登陸後點擊graph圖標,圖沒有出來。繼續查找下原因,快要成功了:)
查看後台日誌cacti裡面的log/cacti.log,日誌如下:
POLLER: Poller[0] Maximum runtime of 298 seconds exceeded. Exiting

點擊控制面板console----->Data Sources
選擇列表中的一個Localhost-Load Average
點擊右上角的Turn Off Data Source Debug Mode
下面會出現對應的命令Data Source Debug
/usr/local/bin/rrdtool create \
/usr/local/apache2/htdocs/cacti/rra/localhost_load_1min_5.rrd \
--step 300 \
DS:load_1min:GAUGE:600:0:500 \
DS:load_5min:GAUGE:600:0:500 \
DS:load_15min:GAUGE:600:0:500 \
RRA:AVERAGE:0.5:1:600 \
RRA:AVERAGE:0.5:6:700 \
RRA:AVERAGE:0.5:24:775 \
RRA:AVERAGE:0.5:288:797 \
RRA:MAX:0.5:1:600 \
RRA:MAX:0.5:6:700 \
RRA:MAX:0.5:24:775 \
RRA:MAX:0.5:288:797 \

su cacti,執行該命令,報錯如下:
ERROR: creating '/usr/local/apache2/htdocs/cacti/rra/localhost_load_1min_5.rrd': 許可權不夠
暈,前面不是賦予了許可權了嘛,難道搞錯了。再賦予一次。
chown -R cacti rra
chown -R cacti log
執行命令,OK了,檢查一下目錄rra,哈哈,已經有一個文件了。去看看圖看。圖有了,但是是否有正確的每5分鍾採集一次
就要等等,等好幾個5分鍾再來看看了。等了一會兒,還是沒有數據,唉,好事多磨啊,有圖像了,又沒有數據。。。。
檢查snmp
snmpwalk -c public -v 2c 10.206.19.59 if 有很多信息返回
檢查數據
rrdtool fetch localhost_mem_swap_4.rrd AVERAGE,返回的都是
1261452300: nan
1261452600: nan
文件更新信息
rrdtool lastupdate localhost_mem_swap_4.rrd --template,返回數據
users
1261535656: U
文件信息
rrdtool info localhost_users_6.rrd,返回信息:
filename = "localhost_users_6.rrd"
rrd_version = "0003"
step = 300
last_update = 1261535656
ds[users].type = "GAUGE"
ds[users].minimal_heartbeat = 600
ds[users].min = 0.0000000000e+00
ds[users].max = 5.0000000000e+02
ds[users].last_ds = "U"
ds[users].value = 0.0000000000e+00

網上搜索資料,可能是SNMP沒有配置好
vi /usr/local/net-snmp/share/snmp/snmpd.conf
cp /etc/snmp/snmpd.conf /usr/local/net-snmp/share/snmp/snmpd.conf
重啟snmp
/usr/local/net-snmp/sbin/snmpd

修改定時任務
[root@dev1 snmp]# crontab -e -u cacti
*/5 * * * * /usr/local/bin/php -q /usr/local/apache2/htdocs/cacti/poller.php > /var/log/poller.log 2>&1

檢查定時任務是否啟動了
/etc/init.d/crond status

一切正常

檢查log/cacti.log日誌
12/23/2009 01:14:16 PM - POLLER: Poller[0] WARNING: Cron is out of sync with the Poller Interval! The Poller Interval is '300' seconds, with a maximum of a '300' second Cron, but 4754 seconds have passed since the last poll!
12/23/2009 01:20:01 PM - POLLER: Poller[0] WARNING: Cron is out of sync with the Poller Interval! The Poller Interval is '300' seconds, with a maximum of a '300' second Cron, but 345 seconds have passed since the last poll!
12/23/2009 01:25:00 PM - POLLER: Poller[0] Maximum runtime of 298 seconds exceeded. Exiting.
12/23/2009 01:25:00 PM - SYSTEM STATS: Time:298.7072 Method:cmd.php Processes:1 Threads:N/A Hosts:2 HostsPerProcess:2 DataSources:5 RRDsProcessed:0
12/23/2009 01:30:00 PM - POLLER: Poller[0] Maximum runtime of 298 seconds exceeded. Exiting.

手工執行了幾次
php cacti/cmd.php
php cacti/poller.php

PHP Deprecated錯誤的解決
vi /usr/local/lib/php.ini
加入:
php_flag allow_call_time_pass_reference On
php_value error_reporting "E_ALL & ~E_NOTICE & ~E_DEPRECATED"

終於有數據了,發現好像是執行了php cacti/cmd.php,但是最後還是有些問題

② linux 下的snmp++的安裝

1.下載net-snmp -5.3.pre4.tar.gz包.
編譯,安裝
[[email protected] net-snmp -5.2.1]# ./configure –prefix=/usr/local/net-snmp -5.2.1
[[email protected] net-snmp -5.2.1]#make
[[email protected] net-snmp -5.2.1]#make install
2.創建放配置 文件的目錄
[[email protected] net-snmp -5.2.1]# mkdir /etc/snmp
3.拷貝配置 文件
解壓出來的包中的EXAMPLE.conf拷貝到剛創建的目/etc/snmp 中,並命名為snmpd.conf
[[email protected] net-snmp -5.2.1]# cp -R EXAMPLE.conf /etc/snmp /snmpd.conf
4.修改配置 文件
[[email protected] net-snmp -5.2.1]# vi /etc/snmp /snmpd.conf
找到如下行,將其改為你想要的字元串,和網路

# sec.name source community
com2sec local localhost COMMUNITY
com2sec mynetwork NETWORK/24 COMMUNITY
例如
com2sec local localhost COMMUNITY
com2sec mynetwork 192.168.1.0/24 abcpublic
注意要用192.168.1.0/24 MS不能用192.168.1.1/24.另外改後要重啟snmp 才能生效.

5.開啟snmp
[[email protected] net-snmp -5.2.1]# /usr/local/net-snmp -5.2.1/sbin/snmpd -Lsd -Lf /dev/null -p /var/run/snmpd -a -c /etc/snmp /snmpd.conf

6.重啟.
[[email protected] net-snmp -5.2.1]# killall -9 snmpd
[email protected] net-snmp -5.2.1]# /usr/local/net-snmp -5.2.1/sbin/snmpd -Lsd -Lf /dev/null -p /var/run/snmpd -a -c /etc/snmp /snmpd.conf
這樣下來應該行了,
大概的思路吧

③ linux怎麼安裝配置snmp協議

一、安裝

snmp

服務

1

、檢查系統是否已經安裝

snmp

rpm

以下是安裝

snmp

服務需要的

rpm

包:

libsensors3-2.10.6-55.el5.i386.rpm

lm_sensors-2.10.6-55.el5.i386.rpm

net-snmp-libs-5.3.2.2-5.el5.i386.rpm

net-snmp-5.3.2.2-5.el5.i386.rpm

net-snmp-utils-5.3.2.2-5.el5.i386.rpm

推薦到

http://rpm.pbone.net/

下載這些

rpm

包,該網站比較全面,包含各種版本的包。

使用命令:

$rpm-qa|grepsnmp

檢查是否安裝

net-snmp-utils-5.3.2.2-5.el5

net-snmp-libs-5.3.2.2-5.el5

net-snmp-5.3.2.2-5.el5

三個

rpm

使用命令:

$rpm-qa|greplibsen

檢查是否安裝

libsensors3-2.10.6-55.el5

使用命令:

$rpm-qa|greplm

檢查是否安裝

lm_sensors-2.10.6-55.el5

說明:

1

)這幾個包的安裝有一定順序,在安裝的時候,會有提示。比如安裝

net-snmp-5.3.2.2-5.el5.i386.rpm

時,會提示必須先安裝

net-snmp-libs-5.3.2.2-5.el5.i386.rpm

2

net-snmp-utils-5.3.2.2-5.el5.i386.rpm

並不是必須安裝的包,但安裝它會帶來不少幫助,

它提供了很多工具,

例如可以使用

snmptranslate

命令查看

oid

可以使用

snmpget

snmpwalk

命令等。

3

net-snmp-libs-5.3.2.2-5.el5.i386.rpm

net-snmp-5.3.2.2-5.el5.i386.rpm

net-snmp-utils-5.3.2.2-5.el5.i386.rpm

這三個包有一定的版本要求,必須版本一致,否則安裝

無法成功。我這里都使用的

5.3.2.2-5.el5

版本,也可以下載其他版本的

rpm

包,但注意版本

要一致,在安裝的時候也會提示,哪個版本的包是必須的,你可以根據提示下載需要的包。

2

、安裝以上的幾個

rpm

若系統中沒有安裝以上包,則先安裝。

使用命令:

rpm–ivh

包名

安裝完後,使用命令:

$rpm-qa|grepsnmp

,檢查是否已經安裝成功。

3

、啟動

snmp

服務

若安裝成功,則可使用命令:

$servicesnmpdstart

提示:

Starting

snmpd:

[OK]

,則啟動

snmp

服務成功。

你可以將

snmp

服務設置為開機自啟動,這樣免去手動啟動的麻煩。

使用命令:

$chkconfigsnmpdon

,將

snmpd

服務設為開機自啟動。

然後使用命令:

$chkconfig--list|grepsnmpd

,查看是否已經設置成功。

4

、驗證

snmp

服務

1

)使用

snmpwalk

命令,查看本機

localhost

的主機名:

如上,可以看到通過遠端主機獲取到的主機名,與在本機獲取到的主機名是一致的。


二、配置

snmp

服務

以上安裝完成後,使用的是

snmp

的默認配置,通過這些默認配置,我們只能獲取主機的部

分信息。但一些其他的重要信息,無法獲取。如主機的

CPU

使用情況,內存使用情況等。

如上,無法獲取

CPU

的空閑率(註:

1.3.6.1.4.1.2021.11.11.0

是主機

CPU

空閑率的

oid

這時候,若要獲取主機的一些重要信息,則要修改

snmp

的默認配置。

配置方法:修改

/etc/snmp/snmpd.conf

文件

1

、修改查看設備節點的許可權

在該文件中,找到如下位置:

view

:定義了可以查看哪些節點設備的信息。

snmp

默認配置只能查看

.1.3.6.1.2.1.1

.1.3.6.1.2.1.25.1.1

節點下的設備信息,

而主機

CPU

內存等設備都不在這些節點下,所以無法獲取這些數據。

因此,可以修改這個配置,如下:

在此處添加了一行:

viewsystemviewincluded.1

表示可以查看

.1

節點下的所有設備信息。

④ linux系統redhat怎麼安裝net-snmp-5.7.3後./trap.sh:line 6:snmptrap:command

安裝snmp服務
CentOS/RedHat下可以只用yum命令進行安裝。
$ yum –y install net-snmp net-snmp-devel
若要使用snmpwalk進行安裝檢測,則還需要安裝net-snmp-utils包
$ yum –y install net-snmp-utils
Ubuntu可以通過apt-get install snmp snmpd 進行安裝
設置安全的驗證方式
將SNMP代理程序暴露給網路上的所有主機是很危險的,為了防止其它主機訪問您的SNMP代理程序,我們需要在SNMP代理程序上加入身份驗證機制。SNMP支持不同的驗證機制,這取決於不同的SNMP協議版本,雲監控目前支持v2c和v3兩個版本,其中v2c版本的驗證機制比較簡單,它基於明文密碼和授權IP來進行身份驗證,而v3版本則通過用戶名和密碼的加密傳輸來實現身份驗證,我們建議使用v3,當然,只要按照以下的介紹進行配置,不論是v2c版本還是v3版本,都可以保證一定的安全性,您可以根據情況來選擇。
注意一點,SNMP協議版本和SNMP代理程序版本是兩回事,剛才說的v2c和v3是指SNMP協議的版本,而Net-SNMP是用來實現SNMP協議的程序套件,目前它的最新版本是剛才提到的5.4.2.1。
v2c
先來看如何配置v2c版本的SNMP代理,我們來創建snmpd的配置文件,默認情況下它是不存在的,我們來創建它,如下:
sdo:~ # vi /usr/local/snmp/share/snmp/snmpd.conf
然後我們需要創建一個只讀帳號,也就是read-only community,在snmpd.conf中添加以下內容:
rocommunity sdomonitor 114.80.132.9 rocommunity sdomonitor 58.215.169.26 rocommunity sdomonitor 58.215.169.27
如果想要檢測服務是否成功開啟,則還需要在snmpd.conf中添加:
rocommunity sdomonitor 127.0.0.1
注意,這里的"rocommunity"表示這是一個只讀的訪問許可權,雲監控只可以從您的伺服器上獲取信息,而不能對伺服器進行任何設置。
緊接著的"sdomonitor"相當於密碼,很多平台喜歡使用"public"這個默認字元串。這里的"sdomonitor"只是一個例子,您可以設置其它字元串作為密碼。
最右邊的"60.195.249.83"代表指定的監控點IP,這個IP地址是雲監控專用的監控點,這意味著只有雲監控有許可權來訪問您的SNMP代理程序。
所以,以上這段配置中,只有"sdomonitor"是需要您進行修改的,同時在雲監控上添加伺服器的時候,需要提供這個字元串。
v3
當然,我們建議您使用v3版本來進行身份驗證。對於一些早期版本的Linux分發版,其內置的SNMP代理程序可能並不支持v3,所以我們建議您按照前邊介紹的方法,編譯和安裝最新的Net-Snmp。
v3支持另一種驗證方式,需要創建一個v3的帳號,我們同樣修改以下配置文件:
sdo:~ # vi /usr/local/snmp/share/snmp/snmpd.conf
然後添加一個只讀帳號,如下:
rouser sdomonitor auth
可以看到,在v3中,"rouser"用於表示只讀帳號類型,隨後的"sdomonitor"是指定的用戶名,後邊的"auth"指明需要驗證。
接下來,我們還要添加"sdomonitor"這個用戶,這就是v3中的特殊機制,我們打開以下配置文件:
sdo:~ # vi /var/net-snmp/snmpd.conf
這個文件會在snmpd啟動的時候被自動調用,我們需要在它里邊添加創建用戶的指令,如下:
createUser sdomonitor MD5 mypassword
這行配置的意思是創建一個名為"sdomonitor"的用戶,密碼為"mypassword",並且用MD5進行加密傳輸。這里要提醒的是:
密碼至少要有8個位元組
這是SNMP協議的規定,如果小於8個位元組,通信將無法進行。
值得注意的是,一旦snmpd啟動後,出於安全考慮,以上這行配置會被snmpd自動刪除,當然,snmpd會將這些配置以密文的形式記錄在其它文件中,重新啟動snmpd是不需要再次添加這些配置的,除非您希望創建新的用戶。
以上配置中的用戶名、密碼和加密方式,在雲監控添加伺服器的時候需要添加。

啟動snmp服務
$ service snmpd start
用以下命令檢查服務是否啟動成功
$ snmpwalk -v 2c -c sdomonitor 127.0.0.1 system
如果要關閉,則可以直接kill這個進程,如下:
$ killall -9 snmpd 或者$ service snmpd stop

⑤ linux下安裝snmp的依賴包有哪些

Linux有很多版本。我使用的Linux Mint 17 (Ubuntu衍生版)上,直接就可以安裝snmp,依賴關系直接已經滿足。

不過既然你問到,我也幫你查出來了:
libc6(>=2.14)
libsnmp30(>=5.7.2~dfsg)
libssl1.0.0(>=1.0.0)
libsnmp-base

⑥ linux系統安裝snmp服務時需要重啟伺服器嗎

不需要。裝snmP就和linux系統里裝應用軟體一樣。只要啟動應用軟體就行了、如apache nginx

⑦ linux 伺服器怎麼開啟snmp

對SNMP進行安裝和配置即可。

⑧ 紅旗linux系統中安裝snmp需要安裝哪幾個文件

現在還有人用紅旗嗎?很多都沒支持了,以下介紹下在Linux下安裝snmp:

  1. 下載源碼

    選擇一個SNMP版本,比如5.7.1,下載地址如下:http://sourceforge.net/projects/net-snmp/files/net-snmp/5.7.1/net-snmp-5.7.1.tar.gz

  2. 解壓文件:tar xzvf net-snmp-5.7.1.tar.gz

  3. 進入文件夾進行配置安裝:cdnet-snmp-5.7.1

    net-snmp-5.7.1目錄下的configure是可執行文件,如果想指定程序包的安裝路徑,那麼首先建立相應的文件夾來存放安裝信息,可以寫成./configure –-prefix=/指定的路徑名。參數--prefix用來告訴系統安裝信息存放的路徑,如果沒有指定路徑,直接執行./configure,那麼程序包都會安裝在系統默認的目錄下,通常為:/usr/local下

執行命令"./configure --prefix=/usr/local/snmp --with-mib-moles='ucd-snmp/diskio ip-mib/ipv4InterfaceTable'",注意,以上的--with-mib-moles=ucd-snmp/diskio選項,可以讓伺服器支持磁碟I/O監控

4.回車出現下面問題,可以直接回車而不用回答,系統會採用默認信息,其中日誌文件默認安裝在/var/log/snmpd.log.數據存貯目錄默認存放在/var/net-snmp下
1)default version of-snmp-version(3):
2)System Contact Information (@@no.where)(配置該設備的聯系信息):
3)System Location (Unknown)(該系統設備的地理位置):
4)Location to write logfile (日誌文件位置):
5)Location to Write persistent(數據存儲目錄):

5.執行編譯和安裝:make && make install

6.配置snmpd.conf

使用"ls"命令查看/usr/local/snmp目錄下是否存在etc目錄,如果不存在etc目錄,就創建一個

查看結果顯示不存在etc目錄,在/usr/local/snmp目錄下創建一個etc目錄,創建etc目錄命令"mkdir /usr/local/snmp/etc"

6.找到SNMP源碼目錄(net-snmp-5.7.1)下EXAMPLE.conf文件

復制EXAMPLE.conf文件到到/usr/local/snmp/etc目錄,並重命名為snmpd.conf:"cp EXAMPLE.conf /usr/local/snmp/etc/snmpd.conf"

7.使用vi編輯器打開snmpd.conf文件:"vi /usr/local/snmp/etc/snmpd.conf",編輯snmpd.conf文件中的內容

8.找到【AGENT BEHAVIOUR】,允許網路訪問

9.修改如下:添加"agentAddress udp:161"配置項

10.找到【ACTIVE MONITORING】選擇協議

11.找到【ACCESS CONTROL】設置許可權

12.找到【rocommunity public default -V systemonly】,把 -V systemonly去掉,這是設置訪問許可權的,去掉後能訪問全部

13.保存snmpd.conf後退出

14.啟動:

由於我們剛才修改SNMP的snmpd.conf文件,所以在啟動snmp服務之前,先使用命令"ps aux | grep snmp | grep -v grep |awk '{print $2}'| xargs kill"關閉snmp的相關服務

15.使用"netstat -an |grep 161"查看snmp的服務是否啟動

16.啟動snmp服務:"/usr/local/snmp/sbin/snmpd -c /usr/local/snmp/etc/snmpd.conf"

17.測試:

獲取本機的系統名字,使用命令:"snmpget -v 2c -c public localhost sysName.0"或者"snmpget -v 2c -c public 本機的ip地址 sysName.0"或者"snmpget -v 2c -c public 本機的ip地址 .1.3.6.1.2.1.1.5.0"進行測試

執行以下的幾個命令都可以獲取到本機的系統名字:

snmpget -v 2c -c public localhost sysName.0
snmpget -v 2c -c public 127.0.0.1 sysName.0
snmpget -v 2c -c public 192.168.1.229 sysName.0
snmpget -v 2c -c public localhost .1.3.6.1.2.1.1.5.0
snmpget -v 2c -c public 127.0.0.1 .1.3.6.1.2.1.1.5.0
snmpget -v 2c -c public 192.168.1.229 .1.3.6.1.2.1.1.5.0


能夠正常返回系統的名字就說明SNMP安裝配置成功了。也可以使用命令"snmpget --version"查看當前的安裝版本號來驗證是否安裝成功,如果安裝成功,則顯示當前的安裝版本號

18.完成snmpd的配置並且SNMP測試通過之後,要確保Linux的iptables防火牆對外開放了udp 161埠的訪問許可權,可以使用"iptables –L –n"查看當前iptables規則

19.用"iptables -I INPUT -p udp --dport 161 -j ACCEPT"命令添加UDP 161埠到iptables防火牆中,然後執行"iptables save"命令保存防火牆的更改

20.在window系統下使用Snmputil.exe工具測試對Linux下的SNMP訪問,測試Linux的UDP 161埠是否對外開

21."snmputil get 192.168.1.229 public .1.3.6.1.2.1.1.5.0"命令返回192.168.1.229這台Linux伺服器的名字,可以看到,Linux伺服器的名稱已經正常返回輸出到命令行窗口了。

⑨ linux系統用rpm包怎麼配置snmp

1.檢查系統是否已經安裝snmp的rpm包 以下是安裝snmp服務需要的rpm包: libsensors3-2.10.6-55.el5.i386.rpm lm...
2.安裝以上的幾個rpm包 若系統中沒有安裝以上包,則先安裝。 使用命令:rpm –ivh ...
3.啟動snmp服務 若安裝成功,則可使用命令: $ service snmpd start...
4.驗證snmp服務 (1)使用snmpwalk命令,查看本機localhost的主機名: ...

熱點內容
內置存儲卡可以拆嗎 發布:2025-05-18 04:16:35 瀏覽:336
編譯原理課時設置 發布:2025-05-18 04:13:28 瀏覽:378
linux中進入ip地址伺服器 發布:2025-05-18 04:11:21 瀏覽:612
java用什麼軟體寫 發布:2025-05-18 03:56:19 瀏覽:32
linux配置vim編譯c 發布:2025-05-18 03:55:07 瀏覽:107
砸百鬼腳本 發布:2025-05-18 03:53:34 瀏覽:944
安卓手機如何拍視頻和蘋果一樣 發布:2025-05-18 03:40:47 瀏覽:741
為什麼安卓手機連不上蘋果7熱點 發布:2025-05-18 03:40:13 瀏覽:803
網卡訪問 發布:2025-05-18 03:35:04 瀏覽:511
接收和發送伺服器地址 發布:2025-05-18 03:33:48 瀏覽:372