傳統要觀察或是統計網路流量可以透過 mrtg ,不過現在有更簡單的方式去做 ntop (http://www.ntop.org/news.php) 這是一套用來觀測網路狀態的軟體,直接透過 web 的方式來進行,使用上蠻直覺的,
在 RHEL5 / CentOS 下使用 ntop 主要是參考了網站 http://www.wretch.cc/blog/ysy26/8266442 在的方式
安裝所需要的套件有三個,步驟如下:
-
下載安裝 rpmforge-release
[root@benjr ~]# wget http://dag.wieers.com/rpm/packages/rpmforge-release/rpmforge-release-0.3.6-1.el5.rf.i386.rpm [root@benjr ~]# rpm -Uvh rpmforge-release-0.3.6-1.el5.rf.i386.rpm
-
rrdtool , ntop PRM
ntop 需要 rrdtool 套件[root@benjr ~]# yum install rrdtool [root@benjr ~]# yum install ntop
基本上 ntop 就安裝成了!!!
-
設定 ntop 的 admin 密碼
這密碼主要是讓 ntop 的 admin 透過 web 的方式去修改設定時所需要的密碼.[root@benjr ~]# ntop -A Thu Nov 25 10:20:15 2010 NOTE: Interface merge enabled by default Thu Nov 25 10:20:15 2010 Initializing gdbm databases ntop startup – waiting for user response! Please enter the password for the admin user: Please enter the password again: Thu Nov 25 10:20:20 2010 Admin user password has been set
-
啟動 ntop 服務
很可惜的是我在啟動 ntop 時 ntop 卻顯示錯誤[root@benjr ~]# service ntop start Starting ntop: Processing file /etc/ntop.conf for parameters… Mon Feb 22 10:12:04 2010 NOTE: Interface merge enabled by default Mon Feb 22 10:12:04 2010 Initializing gdbm databases FATAL ERROR: Unrecognized/unprocessed ntop options… , –user ntop, , –db-file-path /var/ntop, , , , –use-syslog, , , , , , , run ntop –help for usage information Common problems: -B "filter expressions" (quotes are required) –use-syslog=facilty (the = is required) [FAILED]
不過還是有解決方式在 http://forum.icst.org.tw/phpbb/ 網友建議把 /etc/rc.d/init.d/ntop 中的語法 由 daemon $prog -d -L @/etc/ntop.conf 修改成 daemon $prog @/etc/ntop.conf 即可
[root@benjr ~]# vi /etc/rc.d/init.d/ntop daemon $prog @/etc/ntop.conf
現在透過 web 就可以透過 ntop 的監控來查詢網路的流量狀態.預設使用 port 3000 (ex:http:/172.16.0.38:3000),不過在使用 ntop 時有一件事很令我困惑,所有連上 http://IP:3000 的使用者皆可以看到所有網路流量的資料,不需登入帳號以及密碼.在 ntop 的 Admin / Configure / Protect URL 多加一個空白的 URL (NOTE: if you leave the URL field empty then the access is restricted to all ntop pages, otherwise,this entry matches all the pages begining with the specified string.)就可以改善這困惑的問題.之後所有登入 http://IP:3000 皆須要登入帳號以及密碼.
RHEL5 下的 ntop
在 RHEL5 / CentOS 5 下使用 ntop 但是安裝 ntop 時我卻遇到缺少 libcap 套件以及 rrdtool 套件.
[root@benjr ~]# rpm -ivh /mnt/ntop-3.3.9-7.el5.x86_64.rpm warning: /mnt/ntop-3.3.9-7.el5.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID 217521f6 error: Failed dependencies: graphviz is needed by ntop-3.3.9-7.el5.x86_64 libGeoIP.so.1()(64bit) is needed by ntop-3.3.9-7.el5.x86_64 librrd_th.so.2()(64bit) is needed by ntop-3.3.9-7.el5.x86_64
透過 google 搜尋在網路上有兩篇文章詳細討論到 RHEL 5 要使用 ntop 的方式.
- http://go-linux.blogspot.com/2007/04/rhel5ntop.html
- http://www.cyberciti.biz/faq/howto-install-ntop-on-rhel-centos-fedora-linux/
第一篇主要使用的 rpm 檔,不過目前 ntop 的版本已經更新到 4.x 版,雖然在 http://rpmfind.net 有看到 4.x 有 rpm 檔案的但不是給 RHEL5 所使用 http://rpmfind.net/linux/rpm2html/search.php?query=ntop&submit=Search+….
所以我這裡所採用的是 ntop http://sourceforge.net/projects/ntop/files/ 所提供的 ntop-4.0.3.tgz Stable 版本,但很可惜的是這些方式我在 RHEL5 / RHEL6 下都缺少很多套件,目前也無法解決這些問題.
最後採用的方式是 http://www.wretch.cc/blog/ysy26/8266442 網站所提供的方法也就解決 ntop 缺少套件的問題.
Ubuntu Desktop 10.10 使用 ntop
相對應於 RHEL5 / CentOS 5 在 Ubuntu Desktop 10.10 使用 ntop 就簡單多了 https://help.ubuntu.com/community/Ntop 直接透過下面幾個步驟.
- # sudo apt-get install ntop -y
- # sudo ntop –set-admin-password
- # sudo /etc/init.d/ntop restart
完成,簡單容易.
Ubuntu Desktop 11.04 安裝 ntop
最近在一台 Ubuntu Desktop 11.04 安裝 ntop 依著之前的步驟進行
- # sudo apt-get install ntop -y
- # sudo ntop –set-admin-password
- # sudo /etc/init.d/ntop restart
卻卡在步驟 2 ,ntop 直接跳過 admin 的密碼設定.
Fri Sep 16 13:58:55 2011 NOTE: Interface merge enabled by default Fri Sep 16 13:58:55 2011 Initializing gdbm datebases Fri Sep 16 13:58:55 2011 setting administrator password…. Fri Sep 16 13:58:55 2011 Admin password set…
上網查詢後發現,可能是之前的設定檔並會清除乾淨,所以這一次先用了 #apt-get purge ,除了程式外一併移除 ntop 設定檔,全部重新開始.
- # sudo apt-get purge ntop
- # sudo apt-get install ntop -y
這邊在安裝時就可以直接設定 admin password 所以基本上是不需要下面兩個步驟的.
- # sudo ntop –set-admin-password
- # sudo /etc/init.d/ntop restart
現在透過 web 就可以透過 ntop 的監控來查詢網路的流量狀態.預設使用 port 3000 ex: http:/172.16.0.38:3000
One thought on “Linux command – ntop”