如何在Linux上配置基于Web的网络流量监控系统

如何在Linux上配置基于Web的网络流量监控系统,第1张

ntopng的特性

从数据流级别与协议级别对本地网络流量进行实时分析

支持域、AS(自制系统)与VLAN级别的统计分析

支持IP地址地理定位

支持基于“服务探索”(例如Google、Facebook)的深度报文检测(DPI)

历史流量分析(例如分别按照小时、日、周、月、年进行分析)

支持sFlow、NetFlow(v5/v9版)以及基于nProbe的IPFIX

网络流量矩阵(谁正在和谁谈话?)

支持IPv6

在Linux上安装ntopng

官方网页上提供了针对Ubuntu和CentOS的二进制安装包。如果你使用的恰好是以上二者其一,并且懒得用源码安装,可以直接到官网下载二进制文件包安装,并忽略这一小节下面的内容。

如果你想通过源码安装最新的ntopng,请继续往下看。

如果你是Debian、Ubuntu或Linux Mint,执行以下命令:

$ sudo apt-get install libpcap-dev libglib2.0-dev libgeoip-dev redis-server wget libxml2-dev $ tar xzf ntopng-1.0.tar.gz -C ~ $ cd ~/ntopng-1.0/ $ ./configure $ make geoip $ make

上面的几个步骤中,“make geoip”将会自动通过wget从maxmind.com下载一个免费版的GeoIP数据库,因此,这里最好确保你的系统能联网。

如果你是Fedora:

$ sudo yum install libpcap-devel glib2-devel GeoIP-devel libxml2-devel libxml2-devel redis wget $ tar xzf ntopng-1.0.tar.gz -C ~ $ cd ~/ntopng-1.0/ $ ./configure $ make geoip $ make

如果你是CentOS或RHEL,首先设置EPEL repository,然后再执行上面和Fedora一样的命令就可以。

在Linux上配置ntopng

ntopng安装完毕之后,接下来,新建一个ntopng配置目录,然后按照下列命令准备默认的配置文件。这里我假设你的本地网络地址为C类“192.168.1.0/24”。

$ sudo mkir /etc/ntopng -p $ sudo -e /etc/ntopng/ntopng.start

修改如下:

--local-networks "192.168.1.0/24"

--interface 1

$ sudo -e /etc/ntopng/ntopng.conf

修改如下:

-G=/var/run/ntopng.pid

在运行ntopng之前,要确认先启动redis,刚才不说了,redis为ntopng提供键值存储嘛~

在Debian、Ubuntu和Linux Mint上,这样启动:

$ sudo /etc/init.d/redis-server restart $ sudo ./ntopng

在Fedora、CentOS和RHEL上,这样启动:

$ sudo service redis restart $ sudo ./ntopng

ntopng默认监听TCP的3000端口,使用下列命令加以确认:

$ sudo netstat -nap|grep ntopng tcp 0 0 0.0.0.0:3000 0.0.0.0:* LISTEN 29566/ntopng

基于Web界面的网络流量监控

一旦ntopng成功运行,就可以打开浏览器,访问地址http://<你的主机IP地址>:3000

这时,你会看到ntopng的登录界面。使用默认帐密:“admin/admin”。

下面是一些截图。

top流的实时可视化图像

top主机的实时统计,包括top协议和top AS数量

基于DPI的自动程序/服务探索生成的的实时数据报告

历史流量数据分析

via: http://xmodulo.com/2013/10/set-web-based-network-traffic-monitoring-linux.html

1、ApacheApache是世界使用排名第一的Web服务器软件。

2、IIS是微软公司主推的服务器。

3、GFEGoogle的web服务器。

4、Nginx的HTTP服务器。

5、Lighttpd服务器。

6、Zeus是一个运行于Unix下的非常优秀的Web Server,据说性能超过Apache,是效率最高的Web Server之一。

7、(8)Resin提供了最快的jsp/servlets运行平台。

8、Jetty是一个开源的servlet容器,它为基于Java的web内容,例如JSP和servlet提供运行环境。

9、BEA WebLogic是用于开发、集成、部署和管理大型分布式Web应用、网络应用和数据库应用的Java应用服务器。

10、Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。

1. 使用 iptraf

iptraf是一个实时查看网络流量的文本屏幕界面工具。

如果系统没有安装

如果是 RHEL,那么就去找安装盘中的 iptraf*.rpm 包安装;

如果是 CentOS,那么用 yum install -y iptraf 进行安装

iptraf是一个文本全屏幕界面, *** 作起来比较简单明了。最好使用 putty 来看,SecureCRT可能显示乱码。

它提供了很多统计方式:

(1)IP traffic monitor

(2)General interface statistics

(3)Detailed interface statistics

如果跟上 -B 参数,还可以后台执行,把数据保存到文件中,位于 /var/log/iptraf 目录。

2. sar

如果系统没有安装,

如果是 RHEL,那么就去安装盘中找 sysstat*.rpm 包安装;

如果是 CentOS,那么用 yum install -y sysstat 安装。

sysstat是一个工具包,包含有几个很有用的系统检测程序,iostat,mpstat和sar.

Turbolinux的各个版本上,都包含这个工具包.

iostat用于输出CPU,I/O系统和磁盘分区的统计信息.可以用来分析磁盘I/O,带宽等信息.

mpstat用于输出CPU的各种统计信息. 可以用来分析程序运行时在内核态和用户态的工作情况.

sar用于定时搜集系统的各种状态信息.然后可以对系统各个时间点的状态进行监控.

sar有很多用途,如果要来监控网络流量,使用下面的命令行方式:

sar -n DEV interval count

其中,interval是统计时间间隔,以秒为单位;count是总共统计几次,如果为0就不断的统计直到 Ctrl+C 打断,否则执行count次就退出。

比如:sar -n DEV 1 4

比如:sar -n DEV 10 0

IFACE:LAN接口

rxpck/s:每秒钟接收的数据包

txpck/s:每秒钟发送的数据包

rxbyt/s:每秒钟接收的字节数

txbyt/s:每秒钟发送的字节数


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/9029669.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-24
下一篇 2023-04-24

发表评论

登录后才能评论

评论列表(0条)

保存