整理的linux下ntop启动、安装、配置、使用!
夏季萌
2023-12-01
本文介绍了linux 下 ntop3.2的启动、安装、配置、使用!
一、启动ntop
1、在本机上通过 /usr/local/bin/ntop -u ntop -c -d -i eth0 命令启动ntop
注其中:
(1) /usr/local/bin 为ntop所在路径
(2) -u ntop 为指定用户名
(3)-i eth0 为指定网络设备为 eth0
2、web中輸入:
http://<your_IP>:3000
注:3000为默认的端口号
NTOP主要提供以下一些功能:
◆ 自动从网络中识别有用的信息;
◆ 将截获的数据包转换成易于识别的格式;
◆ 对网络环境中通信失败的情况进行分析;
◆ 探测网络环境中的通信瓶颈;
◆ 记录网络通信的时间和过程。
二、NTop安装
首先,需安装好 libpcap、gdbm等库,通常除libpcap需自己安装外系统会带其它库。
1.建立用户ntop(为了安全起见,只有名为ntop的用户 才能启用该软件)
#useradd ntop
2安装
到加压后的文件夹中执行:
#./cofigure
#make
#make install
3改变文件所有者为ntop
(1)#chown -R ntop:ntop /usr/local/var/ntop/
*修改后的状态:(db 文件) drwxr-xr-x 10 root root 4096 02-27 10:44 share
(2)#chown -R ntop:ntop /usr/local/share/ntop/
*:文件修改后的状态 drwxr-xr-x 3 root root 4096 02-25 22:56 var
注: -R 递归地改变指定目录及其所有子目录、文件的文件主
4设置管理员密码
#/usr/local/bin/ntop -A (WEB管理时需要,默认的用户名为admin)
5. 執行 ntop:
(1) 圖形化介面下(web界面)启动ntop:
# /usr/local/bin/ntop -u ntop -c -d
注:若找不到网络设备可用 -i eth0 项指定!
(2)web中輸入:
http://<your_IP>:3000
注:3000为默认的端口号 -w 使用其他端口
启动界面 初始化:
[root@localhost ld.so.conf.d]# /usr/local/bin/ntop -u ntop -c -d -i eth0
Thu Mar 20 16:11:56 2008 NOTE: Interface merge enabled by default
Thu Mar 20 16:11:56 2008 Initializing gdbm databases
Thu Mar 20 16:11:56 2008 NOTE: Interface merge disabled from prefs file
Thu Mar 20 16:11:56 2008 **WARNING** -s set so will ATTEMPT to open interface w/o promisc mode (this will probably fail below)
Thu Mar 20 16:11:56 2008 ntop v.3.2 SourceForge .tgz
Thu Mar 20 16:11:56 2008 Configured on Mar 20 2008 15:06:45, built on Mar 20 2008 15:25:01.
Thu Mar 20 16:11:56 2008 Copyright 1998-2005 by Luca Deri <deri@ntop.org>
Thu Mar 20 16:11:56 2008 Get the freshest ntop from http://www.ntop.org/
Thu Mar 20 16:11:56 2008 NOTE: ntop is running from '/usr/local/bin'
Thu Mar 20 16:11:56 2008 NOTE: (but see warning on man page for the --instance parameter)
Thu Mar 20 16:11:56 2008 NOTE: ntop libraries are in '/usr/local/lib'
Thu Mar 20 16:11:56 2008 Initializing ntop
Thu Mar 20 16:11:56 2008 Checking eth0 for additional devices
Thu Mar 20 16:11:56 2008 Resetting traffic statistics for device eth0
Thu Mar 20 16:11:56 2008 DLT: Device 0 [eth0] is 1, mtu 1514, header 14
Thu Mar 20 16:11:56 2008 Initializing gdbm databases
Thu Mar 20 16:11:56 2008 VENDOR: Loading MAC address table.
Thu Mar 20 16:11:56 2008 VENDOR: Checking for MAC address table file
Thu Mar 20 16:11:56 2008 VENDOR: Loading newer file '/usr/local/etc/ntop/specialMAC.txt.gz'
Thu Mar 20 16:11:56 2008 VENDOR: ...found 61 lines
Thu Mar 20 16:11:56 2008 VENDOR: ...loaded 59 records
Thu Mar 20 16:11:56 2008 VENDOR: Checking for MAC address table file
Thu Mar 20 16:11:56 2008 VENDOR: Loading newer file '/usr/local/etc/ntop/oui.txt.gz'
Thu Mar 20 16:11:56 2008 VENDOR: ...found 48541 lines
Thu Mar 20 16:11:56 2008 VENDOR: ...loaded 7853 records
Thu Mar 20 16:11:56 2008 Fingeprint: Loading signature file.
Thu Mar 20 16:11:56 2008 Fingeprint: ...loaded 1697 records
Thu Mar 20 16:11:57 2008 INIT: Parent process is exiting (this is normal)
Thu Mar 20 16:11:57 2008 INIT: Bye bye: I'm becoming a daemon...
You have new mail in /var/spool/mail/root
[root@localhost ld.so.conf.d]#
***********至此成功在页面中启动ntop*****************************
三.配置NetFlow
(1)http://host:port/ 打开页面
(2)Plugins->NetFlow->Active 激活NetFlow
(3)Plugins->NetFlow->Configure 配置网口,新增一个设备,端口默认是9996
(4)Plugins->NetFlow->Statistics NetFlow状态
四 使用ntop
1. 查看网络整体流量
查看网络整体流量用鼠标点击“Stats”选项卡,然后单击“Traffic”选项。网络流量会以柱面图和明细表格的形式显示出来.
2. 查看主机流量
如果想查看具体节点计算机的网络流量,用鼠标单击“IP Traffic”选项卡,然后单击“Host”选项即可.
3. 监测主机使用的网络协议
在图3里可以看到一个主机名称“CAO”的计算机发送了大量数据,其IP地址是“192.168.0.5”,MAC地址是“52:54:AB:34: 5B:09”。如果想了解该计算机传输了那些数据,双击该主机名即可分析出用户使用的各种网络传输协议的类型和分别占有带宽的比例.
4.查看端口使用情况
NTOP可以把端口使用情况与应用程序关联起来,这和使用“netstat -an”命令的效果类似,并且可以显示端口打开时间、端口流量等详细信息。比如,可以把本机开放的TCP/UDP端口同应用程序关联起来,单击“IP Traffic”→“L―L”→“TCP/UDP Servers/Ports Usage”
************************************************
尚有字符界面方式启动,需要进一步考虑!
附网文转载:
实际案例分析:
我单位是一个由多种系统组成的Linux中小局域网。网络拓扑(图-1)其中服务器使用的操作系统为红旗3.0,客户端PC使用的是win9x/me/2000。
图-1网络拓扑结构
一、问题的出现
一天下午网络性能突然下降,导致网上的大量数据无法顺利传输。我首先怀疑是物理故障。但是使用ping命令测试发现网络是连通的没有物理损坏。接着启动ntop,(见图-2)可以看到ntop能检测网络中的绝大多数协议文件。
图-2 ntop主菜单
二、检测故障
(1)首先检查网络负荷:点击“IP Protos” 菜单。(见图-3)果然发现网络中的机器网络负荷为98%。
图-3显示网络网络负荷过高
(2)点击主机“IP Traiffic”菜单来查询网络流量 :见图-4
图-4网络中的数据流量
(3)果然发现以主机名为cao1的PC发送了大量数据,它的网络负荷接近99%。点击“cao1”后点击”Host“查看其它情况。见图-5,可以看出”主机“cao1”IP地址为192.168.0.1,MAC地址为00:50:BA:F0:AB:AC,使用的操作系统为Windows。
图-5主机名为cao1的基本情况
(3)双击“cao1”就可以了解主机“cao1”的详细情况所有网络情况。见图-6
图-6主机“cao1”的详细情况
(4)我们来看其中传输数据类型这一部分见图-7。从中可以看出它发送的数据都是UDP格式的。
图-7主机“cao1”的传输数据类型为UDP格式数据
我们知道UDP是Linux网络层的传输层的数据,所以可以判断是广播风暴造成了网络性能下降。我们找到主机“cao1”,原来一个工作人员正在向客户演示公司的产品信息,他使用了超级解霸2000。我们知道超级解霸2000播放文件时有一个选项是进行局域网的DVB音视频广播。这名工作人员由于操作失误以致向网络的所有主机包括服务器进行了DVB音视频广播,造成了广播风暴。
三、解决方法
关闭主机“cao1”超级解霸2000的DVB音视频广播的选项。网络恢复正常。
四、总结:
ntop的确是网管人员的好帮手﹐通过它基本上所有进出流量、主机信息网络、安全状态都无所遁形。不管进行网络监测﹐还是日志管理﹐都是非常优秀的工具。不过﹐由于ntop从本质上讲是一种网络嗅探器﹐所以是一把双刃剑。对于网络的安全,管理显得格外重要。除网络管理员外其它人员禁止在网络中使用任何嗅探工具包括一些企业高级管理人员,是完全有必要的。
现在有空顺便再来说一下ntop的常用参数
-d : 放入后台执行。 常用
-L : 输出讯息写入系统记录文件。
-r : 设定页面的自动更新频率,预设每 3 秒更新一次. 。
-w : 使用其它端口 (预设是 3000) 。
-W : 同 -w , 不过这个是使用 SSL 联机 。
-u : 指定使用其它身份执行 。
-i : 指定 ntop 监听的网卡,"," 隔开多个网卡。
-M : 使用 -i 指定多张网卡时, 预设是合并统计.
ntop的页面说明
o About: 在线手册。
o Summary : 目前网络的整体概况
* Traffic : 流量
* Hosts : 所有主机使用概况
* Network Load : 各时段的网络负载
* Netflows : 网络流量图。
o IP Summary : 各主机的流量状况与排名明细
* Traffic : 所有主机的流量明细
* Multicast : 多点传送情况。
* Domain : 域名
* Distribution : 通讯量状况
* Local >>Local 本地流量。
* Local>>Remote : 所有主机对外的明细
* Remote>>Local :
* Remote>>Remote :
o All Protocols : 查看各主机占用的频宽与各时段网络使用者等的明细
* Traffic : 流量。
* Throughput : 频宽使用明细表 (点选主机,可以看到该主机详细的信息及使用状况)
* Activity : 各时段所有主机使用流量(状况). (点选主机,可以看到该主机详细的信息及使用状况)
o Local IP : 局域网络内各主机使用状况.
* Routers : 路由器状况。3.2版的ntop中已经好像没有这一项了
* Ports Used : 端口使用情况。
* Active TCP Sessions : 目前正在进行的联机 。
* Host Fingerprint : 主机快照情况。
* Host Characterization : 主机描述。
* Local Matrix : 局域网络内各主机间的流量明细。
o Media: 高级货,一般人用不到的东西
* Fibre Channel 光纤通道,企业级存储时使用的东西
o Utils 日志一类的东西
oPlugins 一些插件
ICMPWATCH:用于端口检测很多人都已经知道了可以借助NETSTAT -AN来查看当前的连接与开放的端口,但NETSTAT并不万能,比如你的Win2000遭到OOB攻击的时候,不等NETSTAT你就已经死机了。为此,出现了一种特殊的小工具——端口监听程序。端口监听并不是一项复杂的技术,但却能解决一些局部问题。
NetFlow:近年来,很多服务提供商一直使用NetFlow。因为 NetFlow在大型广域网环境里具有伸缩能力,可以帮助支持对等点上的最佳传输流,同时可以用来进行建立在单项服务基础之上的基础设施最优化评估,解决服务和安全问题方面所表现出来的价值,为服务计费提供基础。NetFlow是一种数据交换方式,其工作原理是:NetFlow利用标准的交换模式处理数据流的第一个IP包数据,生成NetFlow 缓存,随后同样的数据基于缓存信息在同一个数据流中进行传输,不再匹配相关的访问控制等策略,NetFlow缓存同时包含了随后数据流的统计信息。但是, NetFlow也不是万能的,比如它无法提供应用反应时间。
rrdPlugin:用于生成流量图。RRD的作者,也是MRTG的作者,RRD可以简单的说是MRTG的升级版,它比MRTG更灵活,更适合用shell、perl等程序来调用,成生所要的图片。
sFlow:sFlow (RFC 3176)是基于标准的最新网络导出协议,能够解决当前网络管理人员面临的很多问题。sFlow已经成为一项线速运行的“永远在线”技术,可以将 sFlow技术嵌入到网络路由器和交换机ASIC芯片中。与使用镜像端口、探针和旁路监测技术的传统网络监视解决方案相比,sFlow能够明显地降低实施费用,同时可以使面向每一个端口的全企业网络监视解决方案成为可能。与数据包采样技术(如RMON)不同,sFlow是一种导出格式,它增加了关于被监视数据包的更多信息,并使用嵌入到网络设备中的sFlow代理转发被采样数据包,因此在功能和性能上都超越了当前使用的RMON、RMON II和NetFlow技术。sFlow技术独特之处在于它能够在整个网络中,以连续实时的方式监视每一个端口,但不需要镜像监视端口,对整个网络性能的影响也非常小。
snmpPlugin:这个大家都知道,就不说是
最后说一下,ntop确实很消耗资源,建议找专门找台闲置的PC做这个,而且主机放置的位置最好是在路由器边上,如果是交换机上,哪么最好将交换机出口做一个端口镜象,将镜象的端口用来连接ntop