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

2024-08-21 14:48

本文主要是介绍如何在Linux上配置基于Web的网络流量监控系统,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

当你在本地网络监控网络流量,根据流量大小、监控平台/接口、数据库类型等等,可以有许多不同的选择。

ntopng是一套开源(遵循GPLv3协议)网络流量分析解决方案,提供基于web界面的实时网络流量监控。支持跨平台,包括Linux和MacOS X。ntopng类似于RMON远端网络监控代理,具有内置的Web服务能力,使用Redis键值服务按时间序列存储统计信息。你可以在任何指定的监控服务器上安装ntopng,只需使用任一web浏览器,就能实时访问服务器上的流量报告了。

本教程就来介绍如何使用ntopng在Linux上配置基于Web的网络流量监控系统

ntopng的特性

  • 从数据流级别与协议级别对本地网络流量进行实时分析
  • 支持域、AS(自制系统)与VLAN级别的统计分析
  • 支持IP地址地理定位
  • 支持基于“服务探索”(例如Google、Facebook)的深度报文检测(DPI)
  • 历史流量分析(例如分别按照小时、日、周、月、年进行分析)
  • 支持sFlow、NetFlow(v5/v9版)以及基于nProbe的IPFIX
  • 网络流量矩阵(谁正在和谁谈话?)
  • 支持IPv6

在Linux上安装ntopng

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

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

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

·········10········20········30········40········50········60········
1. sudo apt-get install libpcap-dev libglib2.0-dev libgeoip-dev redis-server wget libxml2-dev
2. tar xzf ntopng-1.0.tar.gz -C ~
3. cd ~/ntopng-1.0/
4. $ ./configure
5. make geoip
6. make

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

如果你是Fedora:

·········10········20········30········40········50········60········
1. sudo yum install libpcap-devel glib2-devel GeoIP-devel libxml2-devel
2. libxml2-devel redis wget
3. tar xzf ntopng-1.0.tar.gz -C ~
4. cd ~/ntopng-1.0/
5. $ ./configure
6. make geoip
7. make

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

在Linux上配置ntopng

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

·········10········20········30········40········50········60········
1. sudo mkir /etc/ntopng -p
2. sudo -e /etc/ntopng/ntopng.start

修改如下:

--local-networks "192.168.1.0/24"

--interface 1

 

·········10········20········30········40········50········60········
1. sudo -e /etc/ntopng/ntopng.conf

修改如下:

-G=/var/run/ntopng.pid

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

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

·········10········20········30········40········50········60········
1. sudo /etc/init.d/redis-server restart
2. sudo ./ntopng

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

·········10········20········30········40········50········60········
1. sudo service redis restart
2. sudo ./ntopng

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

·········10········20········30········40········50········60········
1. sudo netstat -nap|grep ntopng tcp 0 0 0.0.0.0:3000 0.0.0.0:* LISTEN 29566/ntopng

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

一旦ntopng成功运行,就可以打开浏览器,访问地址http://:3000

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

下面是一些截图。

top流的实时可视化图像

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

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

历史流量数据分析

这篇关于如何在Linux上配置基于Web的网络流量监控系统的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1093463

相关文章

Linux镜像文件制作方式

《Linux镜像文件制作方式》本文介绍了Linux镜像文件制作的过程,包括确定磁盘空间布局、制作空白镜像文件、分区与格式化、复制引导分区和其他分区... 目录1.确定磁盘空间布局2.制作空白镜像文件3.分区与格式化1) 分区2) 格式化4.复制引导分区5.复制其它分区1) 挂载2) 复制bootfs分区3)

Spring配置扩展之JavaConfig的使用小结

《Spring配置扩展之JavaConfig的使用小结》JavaConfig是Spring框架中基于纯Java代码的配置方式,用于替代传统的XML配置,通过注解(如@Bean)定义Spring容器的组... 目录JavaConfig 的概念什么是JavaConfig?为什么使用 JavaConfig?Jav

Spring Boot Interceptor的原理、配置、顺序控制及与Filter的关键区别对比分析

《SpringBootInterceptor的原理、配置、顺序控制及与Filter的关键区别对比分析》本文主要介绍了SpringBoot中的拦截器(Interceptor)及其与过滤器(Filt... 目录前言一、核心功能二、拦截器的实现2.1 定义自定义拦截器2.2 注册拦截器三、多拦截器的执行顺序四、过

JavaWeb项目创建、部署、连接数据库保姆级教程(tomcat)

《JavaWeb项目创建、部署、连接数据库保姆级教程(tomcat)》:本文主要介绍如何在IntelliJIDEA2020.1中创建和部署一个JavaWeb项目,包括创建项目、配置Tomcat服务... 目录简介:一、创建项目二、tomcat部署1、将tomcat解压在一个自己找得到路径2、在idea中添加

springboot的controller中如何获取applicatim.yml的配置值

《springboot的controller中如何获取applicatim.yml的配置值》本文介绍了在SpringBoot的Controller中获取application.yml配置值的四种方式,... 目录1. 使用@Value注解(最常用)application.yml 配置Controller 中

springboot中配置logback-spring.xml的方法

《springboot中配置logback-spring.xml的方法》文章介绍了如何在SpringBoot项目中配置logback-spring.xml文件来进行日志管理,包括如何定义日志输出方式、... 目录一、在src/main/resources目录下,也就是在classpath路径下创建logba

JavaWeb 中的 Filter组件详解

《JavaWeb中的Filter组件详解》本文详细介绍了JavaWeb中的Filter组件,包括其基本概念、工作原理、核心接口和类、配置方式以及常见应用示例,Filter可以实现请求预处理、响应后... 目录JavaWeb 中的 Filter 详解1. Filter 基本概念1.1 什么是 Filter1.

C++多线程开发环境配置方法

《C++多线程开发环境配置方法》文章详细介绍了如何在Windows上安装MinGW-w64和VSCode,并配置环境变量和编译任务,使用VSCode创建一个C++多线程测试项目,并通过配置tasks.... 目录下载安装 MinGW-w64下载安装VS code创建测试项目配置编译任务创建 tasks.js

Nginx概念、架构、配置与虚拟主机实战操作指南

《Nginx概念、架构、配置与虚拟主机实战操作指南》Nginx是一个高性能的HTTP服务器、反向代理服务器、负载均衡器和IMAP/POP3/SMTP代理服务器,它支持高并发连接,资源占用低,功能全面且... 目录Nginx 深度解析:概念、架构、配置与虚拟主机实战一、Nginx 的概念二、Nginx 的特点

2025最新版Android Studio安装及组件配置教程(SDK、JDK、Gradle)

《2025最新版AndroidStudio安装及组件配置教程(SDK、JDK、Gradle)》:本文主要介绍2025最新版AndroidStudio安装及组件配置(SDK、JDK、Gradle... 目录原生 android 简介Android Studio必备组件一、Android Studio安装二、A