艾体宝干货 | 教程:使用ntopng和nProbe监控网络流量

news2024/11/19 1:25:20

本教程旨在分享如何通过 ntopng 和 nProbe 这两款工具,深入了解和掌握网络流量监控的艺术。我们将提供从基本概念到高级应用的全面指导,涵盖了在多种平台和设备上的部署和配置步骤。不论您是专业人员还是技术爱好者,跟随本教程,都能够有效地安装、配置并运用这些工具,以洞察网络的运行状态和性能,确保网络安全与高效运行。

一、什么是Ntopng

Ntopng 是原始 ntop 的下一代版本,它是一款用于监控网络使用情况的网络流量探测器。能从镜像流量、NetFlow 导出器、SNMP 设备、防火墙日志和入侵检测系统中收集流量信息,从而提供 360° 网络可视性。

ntopng 有三个版本:社区版、专业版(小型企业版)和企业版。社区版免费使用,并且开源。服务器的物理网卡可通过指定其接口名称进行监控,如./ntopng -i eth0

不过,我们将在流量收集模式下使用 ntopng 和 nProbe,后者可以充当探针/代理。nProbe 和 ntopng 之间的通信通过 ZeroMQ 进行,ZeroMQ 是一种发布-订阅协议,允许 ntopng 与 nProbe 通信。

ntpong 社区版安装在 Ubuntu 服务器 18.04.1 上,IP 地址为 172.17.100.7/16。Ubuntu 在 VirtualBox 虚拟机中运行。主机(华硕 k55vm)的 IP 地址为 172.17.100.2/16。主机与 SOHO 路由器相连,SOHO 路由器作为网关与 IP 地址为 172.17.100.1/16 的互联网网关相连。网络图如图 1 所示。

nProbe 安装在 Raspberry Pi 3B 上,IP 地址为 172.17.100.50/16。Windows 7 安装在受监控的 PC 上,IP 地址为 172.17.100.10/16,该 PC 连接到 Cisco Catalyst 交换机 3550 的 FastEthernet0/3。安装了 nProbe 的树莓派连接到 FastEthernet0/24。思科交换机连接到 SOHO 路由器。

图 1 - 网络拓扑结构标题

以下是拓扑结构中所有设备的默认密码列表。

设备 - 用户名/密码

  1. 树莓派:pi/raspberry
  2. Ubuntu 服务器 18.04:ubuntu/ubuntu
  3. ntopng: admin/admin123
  4. Cisco Catalyst 3550:admin/admin,enable 密码:cisco
  5. ntpong Web 界面:http://172.17.100.7:3000

硬件

  1. Raspberry PI 3B

- Raspbian GNU/Linux 9.4 (stretch)

- nProbe v.8.5.180917

  1. 华硕 K55Vm 16GB 内存

- 主机操作系统 Linux Kubuntu 18.04.1

- 带客户虚拟机的 Oracle VirtualBox 5.2:

-- Ubuntu 16.04.5 服务器,已安装 Ntopng

1. 端口镜像配置

为了从连接 PC(172.17.100.10/16)的受监控(源)端口 Fa0/3 向连接 Raspberry PI 的目标端口 Fa0/24 发送流量,我们需要在 Cisco 上配置端口镜像功能:

Switch(config)# monitor session 1 source interface Fa0/3

Switch(config)# monitor session 1 destination interface Fa0/24 encapsulation dot1q ingress vlan 1

确保 nProbe 向 ntpong 发送流量。

2. 在 Raspberry Pi 3B 上安装 Raspbian Stretch

Raspbian Strech 安装在 Raspberry Pi 3B 上。nProbe 安装在 Raspbian Stretch 之上。

2.1 为 Raspberry Pi3 下载 Raspbian Stretch 并将映像复制到 SD 卡

我们将下载最新的 Raspbian Stretch 并将其保存到 x86-64 Kubuntu 18.04。

$ wget https://downloads.raspberrypi.org/raspbian_lite_latest

解压缩镜像

$ unzip raspbian_lite_latest

确保SD卡未被挂载。如果是,请卸载该卡。

$ sudo umount /dev/mmcblk0

将提取的 piCore 映像复制到 SD 卡。

$ sudo dd bs=4M if=2018-06-27-raspbian-stretch-lite.img of=/dev/mmcblk0 status=progress conv=fsync

从 Kubuntu 中取出 SD 卡并插入树莓派。用用户名 pi 和密码 raspberry 登录。

2.2. 利用 SD 卡上的所有空间

默认情况下,镜像文件只占用 4GB 的 SD 卡空间。请执行以下命令。

# raspi-config

导航至 Advanced Options(高级选项)-> A1 Expand Filesystem(A1 扩展文件系统) 确保操作系统可以使用 SD 卡上的所有存储空间。文件系统将在下次重启时扩大。

2.3 配置静态 IP 地址

为接口 eth0 设置静态 IP 地址。

# echo "interface eth0" >> /etc/dhcpcd.conf

# echo "static ip_address=172.17.100.50/16" >> /etc/dhcpcd.conf

# echo "static routers=172.17.100.1" >> /etc/dhcpcd.conf

# echo "static domain_name_servers=172.17.100.1 8.8.8.8" >> /etc/dhcpcd.conf

2.4 启用 SSH 服务器

导航至 Interface Options-> SSH(接口选项-> SSH)并单击 Yes(是)启用 SSH 服务器。

# raspi-config

2.5 设置时区

我们需要配置正确的时区(图 2)。

# dpkg-reconfigure tzdata

图 2 - Raspberry PI 上的时区配置标题

3. 在 Raspbian 上安装和配置 nProbe

3.1 安装 nProbe

下载并导入公钥。

$ wget http://packages.ntop.org/apt/ntop.key

$ sudo su

# apt-key add ntop.key

添加 ntop 软件源。

# echo "deb http://apt.ntop.org/stretch_pi armhf/" > /etc/apt/sources.list.d/ntop.list

# echo "deb http://apt.ntop.org/stretch_pi all/" >> /etc/apt/sources.list.d/ntop.list

# apt-get update

从软件源安装 nprobe。

# apt-get install nprobe

3.2 nProbe 配置

我们将在另一篇文章中讨论 nProbe 配置。

4. Ubuntu 18.04.1 服务器的安装和配置

Ubuntu 18.04.1 作为 VirtualBox guest 虚拟机运行,本教程不涉及其安装。

4.1 Ubuntu 18.04.1 服务器的静态 IP 地址配置

Ubuntu 18.04 使用 netplan 配置网络接口(图 3)。根据需要更改网卡名称,我的网卡名称是 enp0s3。

$ cat /etc/netplan/01-systemd-networkd-eth.yaml

图 3 - Ubuntu 18.04 的静态 IP 地址配置标题

保存更改。

$ sudo netplan apply

5. 在 Ubuntu 18.04.x LTS 服务器上安装和配置 Ntopng

ntpong 可以从软件源安装,也可以从源代码编译安装。我们将展示这两种方法,请选择你喜欢的安装方式。

5.1 从版本库安装 ntpong

将 repository universe 添加到 /etc/apt/sources.list 中(图 4)。使用你喜欢的文件编辑器。

$ sudo su

# vi /etc/apt/sources.list

标图 4 -将 Universe 添加到 Ubuntu 存储库列表题

# apt-get update

# apt-get install ntopng

5.2 Ntop源码编译和安装

如果您喜欢手动安装,下面是步骤。

$sudo su

添加universe存储库,因为我们将从存储库中安装redis服务器(图4)。

安装PF_RING、nDPI和ntpong的依赖项。

$ sudo apt-get install autoconf pkg-config libtool libcurl4-openssl-dev rrdtool librrd-dev libmysqlclient-dev bison flex libpcap0.8-dev libmaxminddb-dev libsqlite3-dev libpcap-dev

5.2.1从存储库安装 Redis 服务器

$ sudo apt-get install redis-server redis-tools

5.2.2 PF_RING 安装

$ git clone https://github.com/ntop/PF_RING.git

$ cd PF_RING/kernel

$ make

$ sudo insmod ./pf_ring.ko

$ cd ../userland

$ make

$ cd ~

5.2.3 nDPI 安装

$ git clone https://github.com/ntop/nDPI.git

$ cd nDPI

$ ./autogen.sh

$ ./configure –with-pic

$ make

$ cd ~

5.2.4 ntopng 安装

$ git clone https://github.com/ntop/ntopng.git

$ cd ntopng

$ ./autogen.sh

$ ./configure

$ make geoip

$ make

$ sudo make install

5.2.5 ntopng 安装后步骤

如果您在启动 ntpong 时发现权限问题,请将以下目录的所有者从 root 更改为nobody。

# chown -R nobody /var/lib/ntopng/

6. 测试

打开您常用的网络浏览器并输入 URL http://172.17.100.7:3000。如果您正确遵循说明,您将看到 Ntopng 登录页面。默认用户名是admin,密码是admin。首次登录时系统会提示您更改密码。

我们将在下一个教程中讨论 ntpong 流收集模式。

标题图5-ntopng登录页面

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1710361.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

『香橙派』基于Orange Pi AIpro打造高效个人云存储解决方案

📣读完这篇文章里你能收获到 了解Orange Pi AIpro硬件优势,为构建高效云存储基础设施的理想平台。学会使用Orange Pi AIpro硬件平台,搭载Ubuntu Server系统,打造云存储环境。掌握利用Kodbox软件,享受文件管理、多格式…

如何将 Langfuse 链接到自有 PostgreSQL 数据库并升级 PostgreSQL 版本

在本文中,我们将介绍如何将 Langfuse 应用程序链接到自有的 PostgreSQL 数据库,并升级 PostgreSQL 以支持 jsonb 类型。 前提条件 运行 CentOS 7 的服务器已安装的 PostgreSQL 9.2 或更低版本需要将 Langfuse 连接到自有数据库,并升级 PostgreSQL 以支持 jsonb 类型1. 将 La…

迅为RK3562开发板专为3562编写10大分类2900+页文档

iTOP-3562开发板采用瑞芯微RK3562处理器,内部集成了四核A53Mali G52架构,主频2GHZ,内置1TOPSNPU算力,RK809动态调频。支持OpenGLES1.1/2.0/3.2、0penCL2.0、Vulkan 1.1内嵌高性能2D加速硬件。 内置独立NPU, 算力达 1TOPS,可用于轻…

2024中青杯数学建模竞赛B题药物属性预测思路代码论文分享

2024年中青杯数学建模竞赛B题论文和代码已完成,代码为B题全部问题的代码,论文包括摘要、问题重述、问题分析、模型假设、符号说明、模型的建立和求解(问题1模型的建立和求解、问题2模型的建立和求解、问题3模型的建立和求解)、模型…

设计模式:外观模式 导诊台。空指针异常

文章目录 UML类图目录结构思路Register.javaOutpatientService.javaPrice.javaPharmacy.javaFacade.java空指针异常 Test.java UML类图 目录结构 思路 照着写,然后getRegister()方法的具体实现就是:打印一句话,然后到…

Java集合面试题集——2024最新大厂面试

文章目录 1. 集合框架2. ArrayList和LinkedList2.1 源码分析2.2 ArrayList listnew ArrayList(10)中的list扩容几次?2.3 如何实现数组和List之间的转换2.4 ArrayList和LinkedList的区别2.5 如何保证ArrayList的线程安全?2.6 CopyOnWriteArrayList是如何实现线程安全…

优选免单:重塑电商销售模式的新策略

随着电商行业的不断发展,一种名为“优选免单”的新兴销售模式正逐渐崭露头角。该模式以独特的价格策略、创新的奖励机制和巧妙的社交网络应用为核心,成功激发了消费者的购买热情,并实现了销售的高速增长。 一、规范运营,避免潜在风…

STL源码刨析:序列式容器之list

目录 1.前言 2.list的节点定义和结构 3.list的迭代器定义和结构 4.list的定义和结构 5.list的内存管理 6.list的元素操作 前言 在刨析了vector容器的源码后,list容器相比与vector容器,其元素的插入和删除较快,不需要对原本容器中的元…

哈希冲突的常见解决方法【附C++代码】

在C中,哈希表是一种常用的数据结构,用于实现快速的插入、删除和查找操作。 哈希表的核心在于哈希函数,它将输入的关键字转换为一个数组索引。然而,不同的关键字可能映射到相同的索引,这种情况称为哈希冲突。 有效地解…

【MIT 6.5840(6.824)学习笔记】GFS

1 分布式存储系统难点 在设计大型分布式系统或存储系统时,初衷通常是为了获得显著的性能提升,通过数百台计算机的资源来并行完成大量工作。因此,性能问题成为最初的关注点。一个自然的想法是将数据分片(Sharding)&…

GPT-4 与 GPT-4 Turbo有什么区别?

在不断发展的人工智能和自然语言处理领域,OpenAI 的 GPT 系列一直走在最前沿,彻底改变了机器理解和生成类人文本的方式。每一次迭代,进步都会突破可能性的界限。 最新的条目 GPT-4 和 GPT-4 Turbo 引起了人工智能社区内外的极大兴趣和争论。…

保留字与标识符

目录 保留字 标识符 自学python如何成为大佬(目录):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm1001.2014.3001.5501 保留字 保留字是Python语言中一些已经被赋予特定意义的单词。开发程序时,不可以把这些保留字作为变量、函数、类、…

河道流量监测解决方案 河道水位监测 水质在线监测-计讯物联科技

在城市河道与入海口间的通道施工项目中,拦水坝不仅承担着调节水流、保护生态平衡的使命,也是确保施工区域安全的关键屏障。当前,项目团队面临着严峻的挑战:水位的异常上升和流量的急剧变化,这些都可能对拦水坝的稳定性…

公司预防文件泄密的常见手段 | 文件防泄密软件推荐排行榜

在当今信息化社会,企业面临着越来越多的文件泄密风险。为了保护企业的核心信息和资产,公司需要采取一系列手段来预防文件泄密。本文将介绍公司预防文件泄密的常见手段,并推荐五款优秀的防泄密软件,帮助企业构建更为严密的数据安全…

Mongodb 可视化工具Robot 3t安装【windows环境下】

下载应用 打开连接点我 选择windows版本并点击下载 下载完毕,双击并傻瓜安装 连接数据库 点击图标, 点击create创建连接 填写host和port 如果有用户名密码的,在authentication里填写 5. save 并连接即可使用!

Python自动化办公Excel数据处理实战指南

目录 一、引言 二、需求分析 三、技术选型 四、实战操作 数据读取 数据清洗 数据分析 数据输出 五、学习资源推荐: 六、结语 一、引言 在现代办公环境中,Excel数据处理是一项不可或缺的技能。然而,当数据量庞大、处理流程复杂时&a…

页面加载不出来,报错[@umijs/runtime] load component failed

问题描述 页面加载不出来数据,一直在旋转,控制台输出内容如下: 原因分析: 之前页面是没有问题的,在写当前页面突然出现页面加载不出来,控制台报错,主要是页面引入了这行代码报错 import { …

教育小程序的性能优化:从前端到后端的综合提升策略

随着教育小程序的普及,其性能直接影响用户体验和教学效果。本文将从前端到后端,详细探讨教育小程序的性能优化策略,帮助开发者打造高效、流畅的教育应用。 一、前端性能优化策略 代码优化 减少HTTP请求:合并CSS、JavaScript文件…

安装CUDA Toolkit解决异常:OSError: CUDA_HOME environment variable is not set.

安装CUDA Toolkit 安装CUDA Toolkit异常信息分析下载CUDA执行安装配置环境变量验证 安装CUDA Toolkit 异常信息 在执行pip install flash_attn,安装一个推理加速库的时候,遇到如下异常: Looking in indexes: https://mirrors.aliyun.com/p…

RocketMQ学习(1) 快速入门

mq的一些前置知识和概念知识可以看这篇文章——SpringCloud入门(3) RabbitMQ,比如常见mq的对比等等,这篇文章不再赘述。 目录 RocketMQ概念、安装与配置docker配置 RocketMQ快速入门**同步消息消费模式 **异步消息*单向消息**延迟消息*顺序消息批量消息事…