![有人试图入侵我的服务器吗?我该怎么办?](https://linux22.com/image/854545/%E6%9C%89%E4%BA%BA%E8%AF%95%E5%9B%BE%E5%85%A5%E4%BE%B5%E6%88%91%E7%9A%84%E6%9C%8D%E5%8A%A1%E5%99%A8%E5%90%97%EF%BC%9F%E6%88%91%E8%AF%A5%E6%80%8E%E4%B9%88%E5%8A%9E%EF%BC%9F.png)
几周前,我在这里发布了一个问题,关于ssh
我在使用 Ubuntu 12.04 机器时遇到的一些问题。今天,我试图允许其他人访问该机器,但他们一直收到密码错误。我查看了var/logs/auth.log
更多信息,发现了以下内容:
May 11 19:45:33 myserver sshd[9264]: Did not receive identification string from 211.110.xxx.x
May 11 19:45:38 myserver sshd[9267]: Did not receive identification string from 211.110.xxx.x
May 11 19:45:44 myserver sshd[9270]: Did not receive identification string from 211.110.xxx.x
May 11 19:45:49 myserver sshd[9274]: Did not receive identification string from 211.110.xxx.x
我有近 10,000 行代码,它们似乎都或多或少说了同样的事情(还有 4 个 auth.log.gz 文件,我猜它们也差不多?)。有时请求中会附加一个随机用户名,input_userauth_request: invalid user bash [preauth]
我不太了解服务器,但看起来有人正试图访问我的服务器。
在 Google 上搜索如何在 Ubuntu 中阻止 IP 地址并最终得到这个:iptables -A INPUT -s 211.110.xxx.x -j DROP
,但在运行该命令并检查日志后,我仍然每 5 秒收到来自这个 IP 的请求。
我如何才能了解更多正在发生的事情并处理这些不断的请求?
答案1
从您的描述来看,这似乎是对您的服务器的自动攻击。大多数攻击都是这样的,除非攻击者认识您并且对您心怀怨恨...
无论如何,您可能想要研究一下可以从常用存储库获取的denyhosts。它可以分析重复的尝试并阻止其IP地址。您可能仍会在日志中发现一些信息,但它至少有助于缓解任何安全问题。
至于获取更多信息,我真的不想费心。除非他们是业余爱好者,否则他们会使用远程服务器来做他们的肮脏工作,这不会告诉你他们到底是谁。最好的办法是找到 IP 范围的管理员(WHOIS 是你的好朋友),并让他们知道你从该 IP 收到了很多访问尝试。他们可能会善意地对此采取措施。
答案2
您不想在日志中看到此失败的登录尝试,因此您应该在网络中过滤此 IP。
如果您有自己的路由器或硬件防火墙(不是服务器上的防火墙),请使用它来阻止此 IP。您也可以要求您的互联网提供商阻止它。
如果服务器是 VPS,请要求您的 VPS 提供商阻止此 IP。大多数情况下,他们不会拒绝您的帮助请求,因为这对他们来说是免费的。
与来自多个不同 IP 的攻击相比,来自单个 IP 的攻击更容易缓解。要防范分布式攻击,您需要付费购买网络提供商的特殊服务。在服务器级别,您可以使用 Denyhosts 或 Fail2ban 进行对抗。Fail2ban 不仅保护 ssh,还保护其他服务。它占用的内存稍多一些。Fail2ban 使用 iptables 来阻止 IP,而 DenyHosts 使用文件 hosts.deny,两者都使用日志来查找恶意尝试。您还可以配置 iptables 来限制不依赖日志的 ssh 尝试速率。
答案3
以上都是很好的答案,但是......
你写了“我试图允许其他人访问该机器,但他们一直收到密码错误”
由于我们大多数人使用的是动态 IP,且提供商 DNS 租约时间有限,因此大多数人在路上时都使用动态 DNS 服务访问我们的服务器。您的远程用户是否也使用此类服务来访问您,并且这就是您看到的 IOP 地址?
顺便说一句 - 许多“端口窃听”黑客依靠你做许多家庭服务器用户所做的事情,即他们不更改默认的交付状态登录 ID。(通常是“admin”!!)并且只是尝试所有可能的密码组合
答案4
1. 除非您需要永远不要将服务器的标准端口打开到网络上。设置路由器以打开随机端口(如 53846)并将其转发到该机器的端口 22。
机会黑客可以扫描大范围的 IP 地址以查找已知端口(例如 22)并尝试利用。
第二步反击。对他进行 Nmap,找出他在做什么。然后尝试接近他。就像回击一样。如果他知道你在攻击他,他可能会停下来。
您还可以像警告一样疯狂地向他发出信号。
3. 如果您想找点乐子,您可以打开来宾帐户。确保没有任何权限。将其限制在来宾主目录中。如果您想耍点小聪明,您可以设置一个假的根目录结构来玩一玩。将密码设置为普通密码或无密码。让他登录。
然后您可以使用写入命令并询问他为什么坚持攻击您的服务器。