我已经在互联网上运行了几天的 Ubuntu 8.04 服务器......我打开了端口 21 和 22 用于 FTP 和 SSH...所有其他端口都关闭了。
我跑了
netstat
并发现这个
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp6 0 68 10.7.1.71%134645824:ssh 125.211.221.145%8:47777 ESTABLISHED
看起来好像 125.211.221.145 已与服务器建立了 SSH 连接...并且正在发送数据包...有人可以在不进行身份验证的情况下建立 SSH 连接吗?
我对该地址进行了反向 DNS 查找...根据此资源,它似乎来自中国...
http://www.ipaddresser.com/
我猜想大多数服务器都会一直抵御这种攻击,但有人守在这样的端口上是否很不寻常?有没有办法在服务器级别阻止某些 IP?
该服务器位于坚固的 Cisco 防火墙后面。
答案1
“ESTABLISHED” 仅表示 TCP 会话已打开。它确实不是意味着他们已成功通过身份验证。例如,Nmap 在扫描端口 22 时将创建一个完整、合法的 TCP 会话。(它会验证守护进程是否正常sshd
、检查版本字符串等。)此人可能正在运行简单的端口扫描程序,甚至试图暴力破解您的密码。
要弄清楚到底发生了什么,您需要花一些时间查看日志。花大部分时间查找成功和失败的登录。此外,只需运行“ who
”即可知道是否有人确实通过该连接登录。
的输出last
也可能有用。
答案2
Insyte 抢先了一步。
要删除来自该 IP 的所有连接:
iptables -A INPUT -s 125.211.221.145 -j DROP
答案3
- 不要在端口 22 上运行 ssh。
- 不允许从整个互联网连接您运行 ssh 的任何端口。** 如果您需要从随机位置连接,请安装 knockd。
- 不要运行 ftp。
答案4
我运行一个名为 fail2ban 的程序,它可以读取 ssh 和 ftp 等常见守护进程的日志。它使用正则表达式来监控这些日志中的失败登录尝试,并更新防火墙规则以阻止可能入侵者的 IP。您可以自定义 fail2ban 的行为,例如在阻止 IP 之前尝试失败多少次以及阻止时间。它运行良好,我对它非常满意。查看这里。
虽然我不熟悉 gareth_bowles 的 BlackHosts,但我怀疑它与 fail2ban 类似。