如何找出谁在使用我的带宽?


17

老实说,我的服务器管理能力很差,但老板要求我帮助。他的服务器每天有2GB的有限带宽,今天他收到公司的警告,他超过了该带宽并使用了... 24GB。

由于不可能,因为他走了,他问我是否可以找到问题所在。我不知道从哪里开始或做什么。

任何信息将对我如何找出问题所在有所帮助。

机器正在Ubuntu 12.04上运行。最奇怪的是,根据从托管方收到的图表,仅使用传出传输。

编辑

感谢您的建议,我将运行tcpdump并尝试检查结果


请发表您的评论作为评论,而不是在问题正文中。
EEAA 2012年

这是我的问题,我可以在后台运行tcpdump,这样它会收集一天的数据吗?
卡米尔

可以,可以。您需要在屏幕会话或类似的过程中运行它。但是要当心……您需要确保有足够的磁盘来存储所有捕获的数据。您可能应该阅读tcpdump手册页,并查看如何将其配置为仅捕获TCP / IP标头,而丢弃其余的数据包数据。
EEAA 2012年

Answers:


18

为了立即进行监视,您可以使用iftop。这将向您显示当前活动的连接及其正在使用的带宽。一旦确定了高流量的连接,请找到本地端口号并用于netstat查找该连接属于哪个进程。

sudo netstat -tpn | grep 12345

对于长期监控,我建议使用Darkstat之类的东西。这可以使您按主机和端口进行细目分类,这可能使您确定流量与什么有关。


1
iotop?还是您在考虑iftop
EEAA 2012年

@ErikA嗯,是的。那是我说的!
mgorven

7

我建议安装ntop。

http://www.ntop.org/

将其放在主机网关/路由器位置,并观察一天/一周的流量。Ntop提供了一个Web UI,您可以在其中按IP /端口/协议进行细分。


2

好了,在这种情况下,数据包捕获通常是第一个开始的地方。确保已安装tcpdump($ sudo apt-get install tcpdump),然后运行以下命令:

$ sudo tcpdump -w packet.log

这会将所有数据包的日志写入packet.log。让它运行几分钟,然后下载该文件并使用Wireshark进行检查。如果神秘流量仍在发生,那么粗略浏览一下数据包捕获数据就应该很明显。


使用Wireshk,请使用“统计”菜单-“端点”。然后,您可以选择IP或TCP或其他列表,并按每个端点接收/发送的数量排序。端点将是IP地址或机器。但是某些端点可能是网关或交换机,因此必须在该网关上执行另一个tcpdump和wireshark来跟踪带宽用户。
gaoithe

2

看看tcpdump。它可以转储所有网络流量(不仅顾名思义就是tcp),然后可以使用Wireshark等应用程序读取。在Wireshark中,非常容易过滤某些类型的数据,甚至绘制网络I / O的图形。

另一个有用的工具可能是netstat,它显示正在进行的网络连接的列表。也许有些连接不应该存在。Tcpdump更加有用(捕获几分钟,然后检查是否已经看到源代码),但是netstat可能会为您提供快速概述。

顺便阅读一下,我首先想到的是您的服务器上存在恶意软件,或者该恶意软件正被用于放大攻击。但是要检查这一点,您首先需要运行tcpdump。

编辑:请注意,tcpdump可能需要以root身份运行,也许您需要使用sudo tcpdump

另一个编辑:由于我找不到真正的网页来链接一般的放大攻击,所以这里有一个简短的版本:

像DNS这样的协议在UDP上运行。UDP通信是无连接的,因此您可以很容易地欺骗其他人的IP地址。由于DNS答案通常大于查询,因此可以将其用于DoS攻击。攻击者发送查询,请求DNS服务器具有给定名称的所有记录,并告诉DNS服务器该请求源自X。此X是攻击者想要进行DoS的目标。然后,DNS服务器会进行回复,将(大的,例如4kB)回复发送给X。

这是放大,因为攻击者发送的数据少于X实际接收的数据。DNS并非唯一可行的协议。


1
是。tcpdump -i any -w /tmp/traffic.pcap。使用Wireshk,请使用“统计”菜单-“端点”。按接收/发送的数量排序。
gaoithe

2

最好的工具可能是iftop,可以通过sudo apt-get install iftop轻松地apt-get'。它将根据罪魁祸首IP /主机名显示输出:

             191Mb      381Mb                 572Mb       763Mb             954Mb
└────────────┴──────────┴─────────────────────┴───────────┴──────────────────────
box4.local            => box-2.local                      91.0Mb  27.0Mb  15.1Mb
                      <=                                  1.59Mb   761kb   452kb
box4.local            => box.local                         560b   26.8kb  27.7kb
                      <=                                   880b   31.3kb  32.1kb
box4.local            => userify.com                         0b   11.4kb  8.01kb
                      <=                                  1.17kb  2.39kb  1.75kb
box4.local            => b.resolvers.Level3.net              0b     58b    168b
                      <=                                     0b     83b    288b
box4.local            => stackoverflow.com                   0b     42b     21b
                      <=                                     0b     42b     21b
box4.local            => 224.0.0.251                         0b      0b    179b
                      <=                                     0b      0b      0b
224.0.0.251           => box-2.local                         0b      0b      0b
                      <=                                     0b      0b     36b
224.0.0.251           => box.local                           0b      0b      0b
                      <=                                     0b      0b     35b


─────────────────────────────────────────────────────────────────────────────────
TX:           cum:   37.9MB   peak:   91.0Mb     rates:   91.0Mb  27.1Mb  15.2Mb
RX:                  1.19MB           1.89Mb              1.59Mb   795kb   486kb
TOTAL:               39.1MB           92.6Mb              92.6Mb  27.9Mb  15.6Mb

不要忘记旧版* nix上经典而强大的sar和netstat实用程序!

另一个很棒的工具是nload,这是一个实时监视带宽的很棒的工具,可以使用sudo apt-get install nload轻松安装在Ubuntu或Debian中。

Device eth0 [10.10.10.5] (1/2):
=====================================================================================
Incoming:


                               .         ...|
                               #         ####|
                           .. |#|  ...   #####.         ..          Curr: 2.07 MBit/s
                          ###.###  #### #######|.     . ##      |   Avg: 1.41 MBit/s
                         ########|#########################.   ###  Min: 1.12 kBit/s
             ........    ###################################  .###  Max: 4.49 MBit/s
           .##########. |###################################|#####  Ttl: 1.94 GByte
Outgoing:
            ##########  ###########    ###########################
            ##########  ###########    ###########################
            ##########. ###########   .###########################
            ########### ###########  #############################
            ########### ###########..#############################
           ############ ##########################################
           ############ ##########################################
           ############ ##########################################  Curr: 63.88 MBit/s
           ############ ##########################################  Avg: 32.04 MBit/s
           ############ ##########################################  Min: 0.00 Bit/s
           ############ ##########################################  Max: 93.23 MBit/s
         ############## ##########################################  Ttl: 2.49 GByte

1

搜索了一段时间之后,出现了什么问题(几天内超过60GB带宽),我发现我的服务器是DDOS攻击源。

首先,我尝试在其上安装Oracle DB,因此创建了oracle用户。黑客设法以某种方式打破了该用户的通行证(我想我应该变得更难了:(),他们在Oracle主目录下创建了一个隐藏目录,其中有一个crontab,该目录手动运行了一些重目标,使其泛滥成灾。

此外,黑客在我的服务器上创建了2个新用户:avahi和color。我该怎么办?我用谷歌搜索,似乎同名的软件并不危险,但是我删除了那些用户(还有oracle)。

此外,我删除了其中所有内容的整个Oracle主页。

我想我需要进一步保护服务器的安全,因为它可能会再次受到攻击,谢谢大家的帮助!


4
我会擦除您的服务器,然后重新启动,在妥协后,我从不信任服务器。从轨道上挪开该站点,这是唯一可以确保的方法。
Unix管理员2012年

Yupp我要做的是,首先备份一些数据(svn存储库,有用的脚本)
kamil 2012年

确保数据仍然具有完整性,入侵者已经知道修改源代码和脚本以放置后门。我想肯定是最新的SVN源与最近检查出的版本相比之前的入侵中得到。
Unix的看门人

0

捕获超出带宽配额的一天中发送的所有数据包可能不是最明智的方法-您将如何获取系统数据进行分析?

您在包装盒上有什么访问权限?哪些端口是开放的?您是否检查了正在运行的服务的日志?诸如awstats之类的东西将汇总FTP,HTTP和SMTP日志(假设这些服务器已配置为在日志中记录数据)。OTOH mrtg将按端点/端口记录和跟踪网络使用情况。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.