(跳至结尾以了解较少背景信息)
我有一台 CentOS 6 机器,采取了一些安全措施 - 禁用 root 登录、设置强密码、为 FTP 和 SSH 设置用户白名单,并安装了 fail2ban。我尝试登录 SSH、FTP 和 SMTP 的次数处于“正常”水平,fail2ban 都能令人满意地处理这些情况。遗憾的是,我无法更改 SSH 端口号或强制密钥,尽管这是我在可能的情况下会做的事情。
今天我注意到一次更严重的攻击;这是我以前从未见过的。同一个 IP 反复尝试通过 SSH 进行 root 登录,但它会访问随机端口(每个端口最多尝试 3 次),但不知何故没有被 fail2ban 禁止 - 我认为这是因为端口号是随机的。
经过一番调查,发现/var/log/secure
几个小时内似乎有 22K 次尝试,因此我手动向 iptables 添加了一条规则,以删除来自该 IP 的所有内容。
sshd: Failed password for invalid user root from x.x.x.x port 48811 ssh2
我不知道攻击者在这里想做什么 - 他是想寻找开放端口,还是试图暴力破解 SSH,还是端口敲击?除了手动禁止攻击者外,我不知道该怎么做或在哪里寻找更多信息。
总结
在 *nix 系统中,我应该在哪里寻找攻击的证据,以及我应该如何解释这些信息来指导我采取什么措施?
答案1
您在消息中看到的端口号是他的源端口号,而不是目标端口号。在大多数 TCP 实现中,当您连接到任何服务器时,源端口号都是某个随机的高端口号。这也是他可以随时更改它的原因。
如果他通过连接到达您的 SSH 服务器,并且您的 SSH 服务器仅在端口 22 上监听,那么您可以确定他正在连接到端口 22(这意味着目标端口设置为 22)。
TCP中对源端口和目标端口的描述如下:http://en.wikipedia.org/wiki/Transmission_Control_Protocol