kavin

linux下运用Ntop监控网络流量

kavin linux 2018-05-07 2502浏览 0

 

网络流量反映了网络的运行状态,是判别网络运行是否正常的关键数据, 在实际的网络中,如果对网络流量控制得不好或发生网络拥塞,将会导致网络吞吐量下降、网络性能降低。通过流量测量不仅能反映网络设备(如路由器、交换机 等)的工作是否正常,而且能反映出整个网络运行的资源瓶颈,这样管理人员就可以根据网络的运行状态及时采取故障补救措施和进行相关的业务部署来提高网络的 性能。对网络进行流量监测分析,可以建立网络流量基准,通过连接会话数的跟踪、源/目的地址对分析、TCP流的分析等,能够及时发现网络中的异常流量,进 行实时告警,从而保障网络安全。本节将介绍的Ntop便可以提供详细的网络流量明细表。

1.Ntop简介

____Ntop是一种监控网络流量的工具,用NTOP显示网络的使用情况比其他一些网管软件更加直观、详细。NTOP甚至可以列出每个节点计算机的网络带宽利用率。

2.Ntop主要功能

Ntop主要提供以下一些功能:

①.自动从网络中识别有用的信息;

②.将截获的数据包转换成易于识别的格式;

③.对网络环境中通信失败的情况进行分析;

④.探测网络环境中的通信瓶颈,记录网络通信的时间和过程。

____Ntop可以通过分析网络流量来确定网络上存在的各种问题;也可以用来判断是否有黑客正在攻击网络系统;还可以很方便地显示出特定的网络协议、占用大量带宽的主机、各次通信的目标主机、数据包的发送时间、传递数据包的延时等详细信息。

3. Ntop支持的协议

____Ntop比MRTG更容易安装,如果用手机话费来比喻流 量,MRTG便如同提供总费用的电话账单,而Ntop则是列出每一笔费用的明细一样。目前市场上可网管型的交换机、路由器都支持SNMP协议,Ntop支 持简单网络管理协议,所以可以进行网络流量监控。Ntop几乎可以监测网络上的所有协议: TCP/UDP/ICMP、(R)ARP、IPX、Telnet、DLC、Decnet、DHCP-BOOTP、AppleTalk、Netbios、 TCP/UDP、FTP、HTTP、DNS、Telnet、SMTP/POP/IMAP、SNMP、NNTP、NFS、X11、SSH和基于P2P技术的 协议eDonkey。

4.Ntop支持插件

①.ICMPWATCH:

____用于端口检测很多人都已经知道了可以借助NETSTAT -AN来查看当前的连接与开放的端口,但NETSTAT并不万能,比如Win2000遭到OOB攻击的时候,不等NETSTAT就已经死机了。为此,出现 了一种特殊的小工具——端口监听程序。端口监听并不是一项复杂的技术,但却能解决一些局部问题。

②.NetFlow:

____近年来,很多服务提供商一直使用NetFlow。因为NetFlow在大型广域网环境里具有伸缩能力,可以帮助支持对等点上的最佳传输流,同时可以用来进行建立在单项服务基础之上的基础设施最优化评估,解决服务和安全问题方面所表现出来的价值,为服务计费提供基础。

③.rrdPlugin:

____用于生成流量图。RRD的作者,也是MRTG的作者,RRD可以简单的说是MRTG的升级版,它比MRTG更灵活,更适合用shellperl等程序来调用,成生所要的图片。

④.sFlow:

____sFlow(RFC 3176)是基于标准的最新网络导出协议,能够解决当前网络管理人员面临的很多问题。sFlow已经成为一项线速运行的“永远在线”技术,可以将 sFlow技术嵌入到网络路由器和交换机 ASIC芯片中。与使用镜像端口、探针和旁路监测技术的传统网络监视解决方案相比,sFlow能够明显地降低实施费用,同时可以使面向每一个端口的全企业 网络监视解决方案成为可能。与数据包采样技术(如RMON)不同,sFlow是一种导出格式,它增加了关于被监视数据包的更多信息,并使用嵌入到网络设备 中的sFlow代理转发被采样数据包,因此在功能和性能上都超越了当前使用的RMON、RMON II和NetFlow技术。sFlow技术独特之处在于它能够在整个网络中,以连续实时的方式监视每一个端口,但不需要镜像监视端口,对整个网络性能的影 响也非常小。

____另外,Ntop还允许用户安装插件用,以提供对于特定协议下具体统计数据的报告,如NFS和NetBIOS插件。当然,Ntop也可以生成运行它的主机的统计数据,列出开放套接字、接收和发送的数据以及每个过程的相关主机对。

二、Ntop系统的部署

对于共享网络,只须将连接到共享网络中的流量采集点的网络接口置为混杂工作模式,就可实现采集网络流量数据的功能。与交换网络相比,网络发生拥塞时,集线 器网络的可靠性很低,SNMP问询命令和回应数据包可能发生延迟或丢失,这时候Ntop检测数据也就不准确了,对于交换网络的情况,需要交换设备的支持 (如具有SPAN端口的交换机)。流量采集主机连接到交换设备的一个端口后,通过交换机的SPAN至(Switched PortAnalyzer)端口把要分析的所有流量镜像到该采集点上。SPAN在使用中非常灵活,可以监视交换机的单个端口,也可以监视多个端口,还可以 对VLAN进行监视。这就使流量异常监测系统具有了很大的灵活性。在一些流量比较大的企业,我们一般选用两个网卡,一块网卡作为Ntop专用嗅探网卡,连 到核心交换机的镜像端口,另一块配上IP地址并开放相应端口(默认是3000,也可以修改),连接交换机的作用是用来登录Web界面进行管理,Ntop的 部署如图所示。

Ntop没有自己的捕包工具,它需要一个外部的捕包程序库:libpcap。Ntop利用libpcap独立地从物理链路上进行捕包,它可以借助 libpcap的平台成为一个真正的与平台无关的应用程序。它直接从网卡捕包的任务由libpcap承担,所以我们必须确保Linux系统下正确安装了 libpcap。

三.Ntop安装配置

____Ntop工作时需要使用zlib、gd、libpcap及libpng的函数,安装前须检查服务器中是否已经含有下列的软件:zlib(zlib-1.1.3-xx以上)、gd(gd-1.3.xx以上)、libpng。可以使用RPM来确认:

rpm -qa | grep libpcap

rpm -qa | grep zlib

rpm -qa | grep gd

rpm -qa | grep libpng

如果发现缺少任何一个就需要自行安装,举例如下。

1.安装libpcap

# tar zxvf libpcap-0.9.8.tar.gz

# cd libpcap-0.9.8

#./configure

# make&&make install

2.安装RRDtool

____RRDtool是指Round Robin Database 工具(环状数据库)。Round Robin是一种处理定量数据以及当前元素指针的技术。想象一个周边标有点的圆环,这些点就是时间存储的位置。从圆心画一条到圆周的某个点的箭头,这就是 指针。一个圆环上没有起点和终点,可以一直存储下去。经过一段时间后,所有可用的位置都会被用过,该循环过程会自动重用原来的位置。这样,数据集不会增 大,并且不需要维护。

#tar -zxvf rrdtool-1.3.1.tar.gz

#export PKG_CONFIG_PATH=/usr/lib/pkgconfig/

#./configure

#make

#make install

3.安装Ntop

下载ntop安装包:http://www.nmon.net/packages/rpm/x86_64/ntop/

#rpm -ivh ntop-3.3.10-.x86.rpm

#yum install ntop \\CentOS系统

#apt-get install ntop \\Debian系统

____注意:在Ossim 系统中已经为我们安装好Ntop软件,可以直接使用。如果您选择单独安装可以继续参考以下内容。另外如果您使用Red Hat Linux 、Fedora或CentOS请首先关闭 SELinux功能。

4.建立Ntop用户并配置权限

#useradd ntop

5.建立Ntop存放数据的目录

#mkdir -p /var/ntop

#chown -R ntop.ntop /var/ntop

6.复制ntop.conf配置文件

#cp /ntop-3.3.10/ntop.conf.sample /etc/ntop.conf

7.设置管理密码

在执行ntop之前必须先建立管理员密码,长度至少5位。使用参数-A建立管理员密码

#ntop -A

8.Ntop的管理员密码重置方法

Ntop的用户密码文件是经过加密存储在ntop_pw.db文件中,Ntop用户密码存储位置:

64位版本:/var/lib/ntop_db_64/ntop_pw.db

64位版本需先删除其密码文件ntop_pw.db,然后用notp -A 重置管理员密码后,最后重启ntop服务就能生效。

#/etc/init.d/ntop restart

另外,注意一个细节,ntop的访问日志位置在/var/log/ntop/目录下,它的pcap log在/var/lib/ntop目录下。

四、应用Ntop

1.启动Ntop

#/usr/local/bin/ntop -i eth0 -d -L -u ntop -P /var/ntop --use-syslog=daemon

命令行中各项简要介绍如下。

l -i "eth0":指定监听网卡。

l -d:后台执行。

l -L:输出日志写入系统日志(/var/log/messages)。

l -u ntop:指定使用Ntop身份执行。

l -P /var/ntop:指定Ntop数据库的文件位置。

l -use-syslog=daemon:使用系统日志进程。

l -w:使用其他端口,指定ntop使用其他端口,例如执行ntop –w 1900以后,便可以使用http://ip:1900来连接ntop

2.利用Web浏览器查看Ntop状况

Ntop的通讯端口为3000,所以在浏览器使用IP:3000进入ntop便可看到ntop欢迎界面
除此之外,Ntop另一个重要功能是探测DDoS类型攻击,主要是它可以通过分析网路流量来确定网路上存在的各种问题,也可以用来判断是否有骇客正在攻击 网路系统,还可以很方便地显示出特定的网路协议、佔用大量频宽的 主机、各次通信的目标主机、资料包的发送时间、传递资料包的延时等详细讯息。

上面介绍了一些ntop工具的特点,不过还有很多由于篇幅限 制没有给大家介绍,要知道Ntop这个工具只是Ossim平台的一个很小的模块,Ossim系统中集成的ntop可以将netflow数据存入mysql 数据库,并可以再下次系统启动后继续从数据库中读取,不会影响新生成的数据分析图。要了解Ossim是什么,请参考我的其他有关博文或视频。


继续浏览有关 Ntop 的文章
发表评论