我知道 /var/log/btmp 是用于记录失败的登录尝试的。通常,这么大的文件表示有人进行了暴力破解。6GB 是过去 3 年积累下来的。我已采取措施隐藏 sshd,以便除了我之外的任何人都无法访问它。这些步骤应该会大大减少此文件中的日志条目数量。
到目前为止的所有内容都只是噪音——机器人试图暴力破解服务器。
我的问题是,如何安全地清空此文件,或将其缩减到上个月?我知道此文件的格式不是纯文本,所以我不想破坏文件(希望以后能够查看它)。
答案1
使用 检查文件内容last -f /var/log/btmp
。如果您遇到机器人问题,请尝试将默认 sshd 端口从 更改22
为类似 的内容2222
。您也可以安装拒绝主机作为一种限制登录尝试的方法。
无论哪种方式,您都可以安全地使用 截断文件: > /var/log/btmp
。
答案2
我建议使用 logrotate。这里有一个示例配置:http://www.question-defense.com/2009/07/03/how-to-read-varlogbtmp-rotate-the-btmp-log-with-logrotate