- Linux管理员教程
- 首页
- CentOS概述
- 基本的CentOS Linux命令
- 文件/文件夹管理
- 用户管理
- 配额管理
- Systemd服务启动和停止
- 使用systemctl进行资源管理
- 使用cgroups进行资源管理
- 进程管理
- 防火墙设置
- 在CentOS Linux中配置PHP
- 使用CentOS Linux设置Python
- 在CentOS Linux中配置Ruby
- 为CentOS Linux设置Perl
- 安装和配置Open LDAP
- 创建SSL证书
- 安装Apache Web服务器CentOS 7
- 在CentOS 7上设置MySQL
- 设置Postfix MTA和IMAP/POP3
- 安装匿名FTP
- 远程管理
- CentOS中的流量监控
- 日志管理
- 备份和恢复
- 系统更新
- Shell脚本
- 软件包管理
- 卷管理
- Linux管理员实用资源
- Linux管理员 - 快速指南
- Linux管理员 - 实用资源
- Linux管理员 - 讨论
Linux管理员 - CentOS中的流量监控
有一些第三方工具可以为CentOS流量监控添加增强的功能。在本教程中,我们将重点介绍那些打包在主要CentOS发行版存储库和Fedora EPEL存储库中的工具。
总会有管理员(由于某种原因)只能使用主要CentOS存储库中的工具的情况。大多数讨论的实用程序都是为具有物理访问权限的Shell的管理员设计的。当使用可访问的Web GUI进行流量监控时,使用ntop-ng或Nagios等第三方实用程序是最佳选择(而不是从头开始重新创建此类功能)。
有关可配置Web GUI解决方案的更多研究,以下是一些开始研究的链接。
LAN/WAN场景的流量监控
Nagios
Nagios已经存在很长时间了,因此,它经过了反复的测试和验证。在某个时候,它是完全免费和开源的,但后来发展成为一个企业解决方案,并采用了付费许可模式来支持企业复杂性的需求。因此,在计划任何使用Nagios的部署之前,请确保开源许可版本能够满足您的需求,或者计划在考虑企业预算的情况下进行支出。
大多数开源Nagios流量监控软件可以在以下地址找到:-https://www.nagios.org
有关Nagious的简要历史,以下是官方的Nagios历史页面:-https://www.nagios.org/about/history/
ntopng
另一个允许通过Web GUI进行带宽和流量监控的强大工具称为ntopng。ntopng类似于Unix实用程序ntop,可以收集整个LAN或WAN的数据。提供用于管理、配置和制图的Web GUI,使其易于整个IT部门使用。
与Nagious一样,ntopng也提供了开源和付费企业版本。有关ntopng的更多信息,请访问该网站:http://www.ntop.org/
安装Fedora EPEL存储库 - 企业Linux的额外软件包
为了访问流量监控所需的一些工具,我们需要将CentOS系统配置为使用EPEL存储库。
EPEL存储库并非由CentOS官方维护或支持。但是,它由一组Fedora Core志愿者维护,以解决企业Linux专业人员常用的软件包,这些软件包未包含在CentOS、Fedora Core或Red Hat Linux Enterprise中。
注意
请记住,EPEL存储库不是CentOS的官方存储库,可能会破坏生产服务器上与常见依赖项的兼容性和功能。考虑到这一点,建议始终在运行与生产相同服务的非生产服务器上进行测试,然后再部署到关键系统上。
实际上,与CentOS的任何其他第三方存储库相比,使用EHEL存储库的最大优势在于我们可以确保二进制文件没有被篡改。最好不要使用来自不受信任来源的存储库。
综上所述,官方的EPEL存储库在CentOS中非常常见,可以通过YUM轻松安装。
[root@CentOS rdc]# yum -y install epel-release Loaded plugins: fastestmirror, langpacks Loading mirror speeds from cached hostfile * base: repo1.dal.innoscale.net * extras: repo1.dal.innoscale.net * updates: mirror.hmc.edu Resolving Dependencies --> Running transaction check ---> Package epel-release.noarch 0:7-9 will be installed --> Finished Dependency Resolution Dependencies Resolved --{ condensed output }--
安装EPEL存储库后,我们将对其进行更新。
[root@CentOS rdc]# yum repolist Loaded plugins: fastestmirror, langpacks epel/x86_64/metalink | 11 kB 00:00:00 epel | 4.3 kB 00:00:00 (1/3): epel/x86_64/group_gz | 170 kB 00:00:00 (2/3): epel/x86_64/updateinfo | 753 kB 00:00:01 (3/3): epel/x86_64/primary_db --{ condensed output }--
此时,我们的EPEL存储库应该已经配置好并可以使用了。让我们首先安装nload用于接口带宽监控。
在本教程中,我们将重点介绍以下工具:
- nload
- ntop
- ifstst
- iftop
- vnstat
- 网络占用
- Wireshark
- TCP Dump
- Traceroute
这些都是Linux企业中监控流量的标准工具。每个工具的使用范围从简单到高级,因此我们只会简要讨论Wireshark和TCP Dump等工具。
安装和使用nload
在CentOS中安装并配置了EPEL存储库后,我们现在应该能够安装和使用nload了。此实用程序旨在实时绘制每个接口的带宽。
与大多数其他基本安装一样,nload是通过YUM软件包管理器安装的。
[root@CentOS rdc]# yum -y install nload Resolving Dependencies --> Running transaction check ---> Package nload.x86_64 0:0.7.4-4.el7 will be installed --> Finished Dependency Resolution Dependencies Resolved =============================================================================== =============================================================================== Package Arch Version Repository Size =============================================================================== =============================================================================== Installing: nload x86_64 0.7.4-4.el7 epel 70 k Transaction Summary =============================================================================== =============================================================================== Install 1 Package Total download size: 70 k Installed size: 176 k Downloading packages: --{ condensed output }--
现在我们已经安装了nload,使用它非常简单。
[root@CentOS rdc]# nload enp0s5
nload将监控指定的接口。在本例中,enp0s5是以太网接口,实时从终端获取网络流量负载和总带宽使用情况。
如您所见,nload将绘制指定接口的传入和传出数据,并使用井号“#”提供数据流的物理表示。
所示屏幕截图是加载一个简单的网页,同时还有一些后台守护进程流量。
nload的常用命令行开关为:
命令 | 操作 |
---|---|
-a | 时间段 |
-t | 时间更新间隔(毫秒),默认为500 |
-u | 设置流量测量单位的显示 |
-U | 设置总进/出流量测量单位,与-u相同 |
nload的标准语法为:
nload [options] <interface>
如果未指定接口,nload将自动获取第一个以太网接口。让我们尝试以兆字节为单位测量总进/出数据,并以兆比特为单位测量当前数据传输速度。
[root@CentOS rdc]# nload -U M -u m
当前接口的进/出数据以兆比特每秒为单位测量,并且每行“Ttl”表示总进/出数据,以兆字节为单位显示。
nload对于管理员查看有多少数据通过接口传递以及当前有多少数据进/出指定接口很有用。
要查看其他接口而不关闭nload,只需使用左右方向键即可。这将循环遍历系统上的所有可用接口。
可以使用-m开关同时监控多个接口:
[root@CentOS rdc]# nload -u K -U M -m lo -m enp0s5
load同时监控两个接口(lo和enp0s5):