如何确定我的实例上哪个网站接收大量流量?

如何确定我的实例上哪个网站接收大量流量?

我是服务器管理新手,刚刚设置了一个新的四核实例,可托管大约 15 个网站。

过去几天,我的服务器负载平均保持在 15.00 左右。我认为这是因为一个(或许是多个)网站被垃圾邮件机器人发送了垃圾邮件。

在命令行中输入“top”会显示来自用户“www-data”的许多进程,这表明有大量网络流量。有没有一种简单的方法可以确定我的哪个网站正在遭受攻击?

读取 apache 错误日志是一项非常困难的任务,因为大多数网站每天都会接收 10,000 多个独立用户的流量。

任何帮助,将不胜感激!

答案1

每个vhost(域)都应该编写自己的access.log

然后只需比较日志文件的文件大小即可。如需更详细的统计数据,您应使用日志文件分析器,如 awstats (http://awstats.sourceforge.net/

答案2

您可以在 apache 上启用服务器状态模块。它对于实时查看服务器的运行情况非常有用。

(确保通过 .htaccess 限制对服务器状态模块的访问,不要将其公开!)

答案3

安装并使用名为伊夫托普或者也可以使用工具wireshark以便进行更好的分析。

答案4

我安装了 iftop,发现它对于识别哪些主机正在发送我的服务器请求非常有用。但是,apachetop 是一个更好的工具,可以查看各个虚拟主机上正在请求哪些文件。它还告诉我哪些 IP 地址正在发出请求

相关内容