如何控制 VPS 上 3 个独立目录中不断增长的日志文件?

如何控制 VPS 上 3 个独立目录中不断增长的日志文件?

我有一个虚拟专用服务器我使用 lxadmin 设置的帐户。

我有一个统计文件位于 /home/http/tanguay.info/stats/填满速度非常快。查看它,我发现有 1000 个条目的引用者显然是垃圾网站。

  • 我怎么能够阻止请求从这个网站?(几周前一位朋友登录并使用了iptables这似乎阻止了其中一些请求,但我必须重新启动,并且看起来这些更改已经消失了。)
  • 因为我没有手动设置 Apache(通过 lxadmin 完成),我不知道此统计文件在哪里/为何创建?我应该从哪里开始查找?

替代文本

  • 我问了一个类似问题有人建议我检查 /etc/logrotate.conf看起来像这样:

替代文本

但这似乎反而影响了以下目录,这是日志文件不断增长的另一个来源,但目前并不那么严重:

替代文本

还有人建议,在/etc/http/conf/http.conf我注释掉了“ErrorLog”行,这是我几周前做的,但它对上面的任何一个日志文件目录都没有影响:

替代文本

还建议我修改/etc/logrotate.d/httpd文件,将其改为“基于大小”而不是“基于时间”。这是文件。我如何将其更改为“基于时间”:

替代文本

但后来我意识到,这与我所知道的两个日志文件目录无关,但第三已填满的日志文件集:

替代文本

我该如何从这里继续进行(1)避免这三个不同的日志文件目录填满我的 VPS 驱动器,以及(2)如何使用 iptables 阻止来自垃圾网站的请求?

答案1

好吧,您花了很多功夫粘贴带有红线和其他内容的屏幕截图。您可能只需使用“man logrotate”命令(如配置文件建议的那样),这样您就可以定位正确的目录。

Logrotate 有几个功能可以帮助您节省磁盘空间。第一个是“保留多少日志”——如果您将其设置得较低,它会很快删除旧文件。第二个是“压缩”——当它轮换日志文件时,它会对其进行压缩,这将为您节省大量磁盘空间。(不过,它在压缩时会占用大量 CPU。它实际上不应该花那么长时间。)

如果存在,请查看 /etc/logrotate.d 目录,看看是否还有更多 apache 的配置。(/etc/ 中以 .d 结尾的文件意味着文件所在的系统会自动在其中查找具有特定扩展名的文件并将其读取为配置文件。例如,logrotate 将读取 /etc/logrotate.d/foo.conf 和 /etc/logrotate.d/bar.conf,但会忽略 /etc/logrotate.d/baz.c)。

封锁主机通常不是一个好主意,因为它并不能真正解决您面临的问题,即磁盘空间问题。您可以设置一些自动操作,但这可能会导致后续问题,因为您最终可能会禁止 AOL 等服务的网关,并且您将遇到无法解决的暂时性问题。

答案2

  • 使用防火墙阻止违规 IP。具体方法取决于您如何管理防火墙。(shorewall、原始 iptables 规则等)。对于“自动”操作,请查看失败2ban
  • 除非你做出改变,否则 Apache 会创建两个日志文件,访问日志错误日志
  • 注释掉配置选项通常会导致 apache 使用其内置默认值。而不是禁用它。
  • logrotate 似乎配置为保留四周的日志文件。您可能需要取消注释“compress”选项,以便 logrotate 自动压缩日志文件。它将自动删除较旧的文件。
  • 第一页lxadmin 安装文档显示它使用 awe stats 来生成站点统计信息。这就是统计文件的来源。

相关内容