Linux 上网络监控工具 ntopng 的安装

本文涉及的产品
云数据库 Redis 版,社区版 2GB
推荐场景:
搭建游戏排行榜
简介:

当今世界,人们的计算机都相互连接,互联互通。小到你的家庭局域网(LAN),大到最大的一个被我们称为互联网。当你管理一台联网的计算机时,你就是在管理最关键的组件之一。由于大多数开发出的应用程序都基于网络,网络就连接起了这些关键点。

这就是为什么我们需要网络监控工具。ntop 是最好的网络监控工具之一。来自维基百科的知识“ntop是一个网络探测器,它以与top显示进程般类似的方式显示网络使用率。在交互模式中,它显示了用户终端上的网络状态。在网页模式中,它作为网络服务器,创建网络状态的HTML转储文件。它支持NetFlow/sFlowemitter/collector,这是一个基于HTTP的客户端界面,用于创建ntop为中心的监控应用,并使用RRD来持续存储通信数据”。

15年后的今天,你将见到ntopng——下一代ntop。

ntopng是什么

Ntopng是一个基于网页的高速通信分析器和流量收集器。Ntopng基于ntop,它运行于所有Unix平台、MacOS X和Windows。

特性

ntopng网站上,我们可以看到他们说它有众多的特性。这里列出了其中一些:

  • 按各种协议对网络通信排序
  • 显示网络通信和IPv4/v6的激活主机
  • 持续不断以RRD格式存储定位主机的通信数据到磁盘
  • 通过nDPI,ntop的DPI框架,发现应用协议
  • 显示各种协议间的IP通信分布
  • 分析IP通信,并根据源/目的地址进行排序
  • 显示IP通信子网的矩阵(谁在和谁通信?)
  • 报告按协议类型排序的IP协议使用率
  • 生成HTML5/AJAX网络通信数据

安装的先决条件

Ntop为CentOS和基于64位Ubuntu预编译好了包,你可以在它们的下载页面找到这些包。对于32位操作系统,你必须从源代码编译。本文在CentOS 6.4 32位版本上测试过。但是,它也可以在其它基于CentOS/RedHat的Linux版本上工作。让我们开始吧。

开发工具

你必须确保你安装了编译ntopng所需的所有开发工具,要安装开发工具,你可以使用yum命令:

 
  1. # yum groupinstall Development Tools

安装TCL

 
  1. # yum install tcl

安装libpcap

 
  1. # yum install libpcap libpcap-devel

安装Redis

 
  1. # wget http://redis.googlecode.com/files/redis-2.6.13.tar.gz
  2. # tar zxfv redis-2.6.13.tar.gz
  3. # cd redis-2.6.13
  4. # make 32bit
  5. # make test
  6. # make install

安装ntopng

方法 1 :

 
  1. # wget http://sourceforge.net/projects/ntop/files/ntopng/ntopng-1.1_6932.tgz/download
  2. # tar zxfv ntopng-1.1_6932.tgz
  3. # cd ntopng-1.1_6932
  4. # ./configure
  5. # make
  6. # make install

方法 2 :

在我的CentOS 6.4上,我使用方法 1时收到了一个错误消息,错误消息内容如下:

 
  1. ./third-party/LuaJIT-2.0.2/src/libluajit.a : could not read symbols : File in wrong format

所以,我切换到了SVN来安装。对于此方法,需要联网,步骤如下:

 
  1. # svn co https://svn.ntop.org/svn/ntop/trunk/ntopng/
  2. # ./autogen.sh
  3. # ./configure
  4. # make
  5. # make install

由于ntopng是一个基于网页的应用,你的系统必须安装有工作良好的 Web 服务器

为ntopng创建配置文件

如果一切都已安装完毕,那么我们该来运行它了。默认情况下,如果我们在./configure这一步没有明确修改安装文件夹的话,redis和ntopng将安装到/usr/local/文件夹。接下来,我们需要为ntopng创建配置文件。在本文中,我们使用vi作为文本编辑器。你也可以使用你所中意的文本编辑器来创建ntopng的配置文件。

 
  1. # cd /usr/local/etc
  2. # mkdir ntopng
  3. # cd ntopng
  4. # vi ntopng.start

放入这些行:

 
  1. --local-network "10.0.2.0/24"
  2. --interface 1

 
  1. # vi ntopng.pid

放入该行:

 
  1. -G=/var/run/ntopng.pid

保存这些文件,然后继续下一步。

运行ntopng

我们假定你已正确安装了网络服务器,那么下一步就是运行redis服务器。

 
  1. # /usr/local/bin/redis-server

Starting Redis Server

Starting Redis Server

然后,运行ntopng

 
  1. # /usr/local/bin/ntopng

Starting Ntopng

Starting Ntopng

测试ntopng

现在,你可以通过访问http://yourserver.name:3000来测试ntopng应用,你将会看到ntopng登录页面。首次登录,你可以使用用户‘admin’和密码‘admin’。

Ntop Login page

Ntop Login page

仪表盘相当简洁。当你登入后,你将看到关于最高流量通信者页面。

Ntopng Flow Talker

Ntopng Flow Talker

如果你点击右侧顶部的流量菜单,ntopng将会显示活动流量的更多细节。

Ntopng Flows

Ntopng Flows

主机菜单上,你可以看到连接到流的所有主机。

Ntopng Hosts List

Ntopng Hosts List

如果你点击主机 > 交互,ntop将显示一个漂亮的主机间的交互信息图表。

Ntopng Hosts Interaction

Ntopng Hosts Interaction

仪表盘菜单组成部分:

顶级主机(发送+接收)

Ntopng Hosts

Ntopng Hosts

顶级应用协议

Ntopng Apps

Ntopng Apps

界面菜单将引领你进入更多内部菜单。包菜单将给你显示包的大小分布。

Ntopng packets

Ntopng packets

协议菜单将为你显示使用了多少协议及其使用百分比。

Ntopng protocol

Ntopng protocol

Ntopng protocols - detail

Ntopng protocols - detail

你也可以通过使用历史活跃度菜单查看活跃度。

Ntopng Historical Activity

Ntopng Historical Activity

Ntopng Historical Activity detail

Ntopng Historical Activity detail

最后一项要点是,你也可以通过顶部右侧区域的设置菜单(齿轮图标的那一个)管理哪些用户可以访问ntopng。

Ntopng Users

Ntopng Users

Ntopng为你提供了一个范围宽广的时间线,从5分钟到1年都可以。你只需要点击你想要显示的时间线。图表本身是可以点击的,你可以点击它来进行缩放。

当然,ntopng能做的事比上面图片中展示的还要多得多。你也可以将定位和电子地图服务整合进来。在ntopng自己的网站上,有已付费的模块可供使用,如nprobe可以扩展ntopng可以提供给你的信息。更多关于ntopng的信息,你可以访问ntopng网站


原文发布时间为:2015-06-21

本文来自云栖社区合作伙伴“Linux中国”

相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore     ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
目录
相关文章
|
9天前
|
安全 Linux 虚拟化
网络名称空间在Linux虚拟化技术中的位置
网络名称空间(Network Namespaces)是Linux内核特性之一,提供了隔离网络环境的能力,使得每个网络名称空间都拥有独立的网络设备、IP地址、路由表、端口号范围以及iptables规则等。这一特性在Linux虚拟化技术中占据了核心位置🌟,它不仅为构建轻量级虚拟化解决方案(如容器📦)提供了基础支持,也在传统的虚拟机技术中发挥作用,实现资源隔离和网络虚拟化。
网络名称空间在Linux虚拟化技术中的位置
|
9天前
|
缓存 Linux 测试技术
安装【银河麒麟V10】linux系统--并挂载镜像
安装【银河麒麟V10】linux系统--并挂载镜像
59 0
|
9天前
|
网络协议 安全 Linux
Linux网络名称空间之独立网络资源管理
Linux网络名称空间是一种强大的虚拟化技术🛠️,它允许用户创建隔离的网络环境🌐,每个环境拥有独立的网络资源和配置。这项技术对于云计算☁️、容器化应用📦和网络安全🔒等领域至关重要。本文将详细介绍在Linux网络名称空间中可以拥有的独立网络资源,并指出应用开发人员在使用时应注意的重点。
|
9天前
|
安全 网络协议 Linux
Linux网络名称空间概述
Linux网络名称空间是操作系统级别的一种虚拟化技术🔄,它允许创建隔离的网络环境🌐,使得每个环境拥有自己独立的网络资源,如IP地址📍、路由表🗺️、防火墙规则🔥等。这种技术是Linux内核功能的一部分,为不同的用户空间进程提供了一种创建和使用独立网络协议栈的方式。本文旨在全方面、多维度解释Linux网络名称空间的概念、必要性和作用。
Linux网络名称空间概述
|
9天前
|
监控 Unix Linux
Linux操作系统调优相关工具(四)查看Network运行状态 和系统整体运行状态
Linux操作系统调优相关工具(四)查看Network运行状态 和系统整体运行状态
26 0
|
9天前
|
Linux C语言
linux yum安装ffmpeg 图文详解
linux yum安装ffmpeg 图文详解
28 0
|
9天前
|
NoSQL Linux Redis
linux 下和win下安装redis 并添加开机自启 图文详解
linux 下和win下安装redis 并添加开机自启 图文详解
15 0
|
9天前
|
Linux
linux yum 安装rar和unrar
linux yum 安装rar和unrar
34 0
|
7天前
|
存储 算法 Linux
【实战项目】网络编程:在Linux环境下基于opencv和socket的人脸识别系统--C++实现
【实战项目】网络编程:在Linux环境下基于opencv和socket的人脸识别系统--C++实现
20 6
|
9天前
|
Linux
Linux操作系统调优相关工具(三)查看IO运行状态相关工具 查看哪个磁盘或分区最繁忙?
Linux操作系统调优相关工具(三)查看IO运行状态相关工具 查看哪个磁盘或分区最繁忙?
20 0