被阻止的 IP 发起 SSH 攻击

被阻止的 IP 发起 SSH 攻击

我运行一个 CentOS 5.7 64 位服务器,它有一个奇怪的问题。

当我查看我的日志时,/var/log/secure我注意到一个奇怪的 IP 正尝试使用许多奇怪的用户名连接到 ssh。

日志的输出:http://pastebin.com/raw.php?i=3uYjPrLL

我运行了已经阻止该 IP 的 fail2ban,并且我还通过 iptables 再次手动阻止了该 IP。

运行iptables -n -L我得到了这个输出:

Chain fail2ban-SSH (1 references)
target     prot opt source               destination
DROP       all  --  50.115.166.129       0.0.0.0/0
RETURN     all  --  0.0.0.0/0            0.0.0.0/0

所以拦截已到位。Iptables 也在运行,我已经通过 iptables 拦截了许多 IP,这些拦截都运行正常。

但不知何故,这个 IP 却可以访问我的机器。有人知道这是怎么回事吗?

答案1

问题是您的fail2ban-SSH链被应用于端口 22 的流量,而 sshd 并没有监听该端口。因此,fail2ban 会从身份验证日志中获取失败信息,并正确更新拒绝链。但 ssh 流量从未发送到该链,因此您的恶意攻击者(现在已被禁止与端口 22 通信)仍能够与 2222 上的 sshd 通信。

假设你正在使用标准 CentOS /etc/sysconfig/iptables,你需要将当前部分中的行更改filter为类似

-A INPUT -p tcp --dport 22 -j fail2ban-SSH

-A INPUT -p tcp --dport 2222 -j fail2ban-SSH

至于你的手动删除,你已经添加了它那些字句

 689M  126G ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED

 0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:2222 state NEW

因此它永远不会被调用来限制端口 2222 的新流量或任何此类连接中的后续数据包,因为这些已经被允许。规则的顺序是必不可少的在 iptables 中,因为第一个决定性的匹配获胜。

相关内容