大约每 100 个站点中就有 1 个站点每隔几天就会使 VPS 崩溃。Apache 连接数达到数百,而 mysql 请求数达到数百万。这会导致 CPU 永久处于 100%+ 并使服务器完全无法使用。重新启动可以修复几天的情况。如何找到邪恶的?
我有 mod_status 和 extendedstatus ON 但仍然,它只显示最近的几个请求。不确定如何使用它来缩小 100 个站点的范围。
其余时间服务器使用 20-30% 的资源,因此它不会因站点而超载。
大约每 100 个站点中就有 1 个站点每隔几天就会使 VPS 崩溃。Apache 连接数达到数百,而 mysql 请求数达到数百万。这会导致 CPU 永久处于 100%+ 并使服务器完全无法使用。重新启动可以修复几天的情况。如何找到邪恶的?
我有 mod_status 和 extendedstatus ON 但仍然,它只显示最近的几个请求。不确定如何使用它来缩小 100 个站点的范围。
其余时间服务器使用 20-30% 的资源,因此它不会因站点而超载。
我不太了解您的服务器配置,但我会尽力提供帮助。
首先启动
iptables
并且不允许攻击您的服务器之后,我认为这
logrotate
可以帮助我们找到影响力最大的网站。安装
logrotate
要验证 logrotate 是否已成功安装,请在命令提示符下运行它。
该实用程序的配置和默认选项
logrotate
存在于:一些重要的配置设置是:旋转间隔、日志文件大小、旋转计数和压缩。
特定于应用程序的日志文件信息(覆盖默认值)保存在:
我的想法是监控http访问文件。具有更多访问权限的站点必须具有更大的访问日志。
Logrotate
并cron
会关注我们并向您发送有关问题的邮件......编辑
logrotate.conf
并添加一些代码sudo nano /etc/logrotate.conf
你必须定制
size
- 日志文件的大小,根据您的需要path_to_apache_logs
更改 - 根据日志路径更改路径vhost.conf
更多关于定制的信息
logrotate.conf
可以在这里找到设置为每 5 分钟
cron
运行一次logrotate
当您处于“攻击”状态时,您的访问日志将快速增长。
Cron
将运行logrotate
以检查日志文件大小,如果文件大小为 XX,将轮换日志,重新启动 atache 并向您发送邮件。因为每个虚拟主机都有自己的访问文件,你会知道女巫网站是服务器“杀手”