我最近首次在服务器上安装了 Debian Jessie。显然,fail2ban 是在这个过程的早期就设置的。
它可以禁止 IP 地址并向我发送电子邮件,但基于 Apache 的邮件不包含相关日志文件的任何摘录。而基于 SSH 的邮件则包含。
Apache 报告示例:
你好, IP 193.201.227.112 刚刚被 Fail2Ban 禁止,原因是 针对 apache-xmlrpc 进行了 5 次尝试。 以下是有关 193.201.227.112 的更多信息: (有关信息已删除) /home/*/logs/*access.log 中包含 IP:193.201.227.112 的行 问候, 失败禁止
SSH 报告示例:
你好, IP 184.173.26.138 刚刚被 Fail2Ban 禁止,原因是 针对 ssh 进行了 3 次尝试。 以下是有关 184.173.26.138 的更多信息: (有关信息已删除) /var/log/auth.log 中包含 IP:184.173.26.138 的行 11 月 5 日 08:21:38 示例 sshd[20158]: 来自 184.173.26.138 端口 51131 ssh2 的无效用户 ubnt 的密码失败 11 月 5 日 08:21:38 示例 sshd[20158]: 错误:收到来自 184.173.26.138 的断开连接:3:com.jcraft.jsch.JSchException:身份验证失败 [预身份验证] 问候, 失败禁止
/etc/fail2ban/jail.local 提取:
动作 = %(action_mwl)s # JAILS [SSH] 已启用=真 最大重试次数 = 3 (..) [apache-xmlrpc] 已启用=真 端口 = http,https 动作 = %(action_mwl)s 过滤器 = apache-xmlrpc 日志路径 = /home/*/logs/*access.log 最大重试次数 = 5
Debian Wheezy(其中包括日志文件行)和 Jessie 之间有什么变化吗?
pastebin.com/qK8ARrsz 上的 Apache 报告中缺少的日志文件和行的详细信息(在此处触发误报垃圾邮件错误!)
(稍后添加)/var/log/fail2ban.log 没有抱怨:
2015-11-04 23:27:08,862 fail2ban.actions[1993]: 警告 [ssh] 禁止 109.161.203.139 2015-11-04 23:38:58,786 fail2ban.actions[1993]: 警告 [ssh] 解除对 59.47.0.148 的禁令 2015-11-05 00:55:53,869 fail2ban.actions[1993]: 警告 [ssh] 禁止 14.29.113.190 2015-11-05 00:57:38,031 fail2ban.actions[1993]: 警告 [ssh] 禁止 109.161.216.214 2015-11-05 05:47:06,644 fail2ban.filter [1993]: 警告使用 DNS 查找确定 IP:mbl-109-61-47.dsl.net.pk = ['124.109.61.47'] 2015-11-05 05:47:13,282 fail2ban.actions[1993]: 警告 [ssh] 禁止 124.109.61.47 2015-11-05 08:00:20,049 fail2ban.actions[1993]: 警告 [apache-xmlrpc] 禁止 193.201.227.112 2015-11-05 08:21:36,278 fail2ban.filter [1993]: 警告使用 DNS 查找确定的 IP:8a.1a.adb8.ip4.static.sl-reverse.com = ['184.173.26.138'] 2015-11-05 08:21:39,333 fail2ban.filter [1993]: 警告使用 DNS 查找确定的 IP:8a.1a.adb8.ip4.static.sl-reverse.com = ['184.173.26.138'] 2015-11-05 08:21:39,858 fail2ban.actions[1993]: 警告 [ssh] 禁止 184.173.26.138
一方面,这不是什么大问题,因为他们仍然被禁止,但另一方面,我特别使用一个 Apache 过滤器来查看恶意用户到处搜索什么文件 - fckeditor 或 uploadify.php 等 - 这样就可以尽早禁止他们。
谢谢。