昨天,我的 VPS 托管提供商阻止了我的 VPS 进出网络,因为他们收到了索尼娱乐公司的滥用通知,声称我的 VPS 的 IP 正在攻击他们的服务器。
在电子邮件中,他们说只有 1 小时,但仍然......
然后,我的 VPS 提供商阻止了进出我的 VPS 的所有流量,因此现在我只能通过 VNC KVM 连接。
我正在使用以下服务运行 Debian 9:
- 虚拟分钟
- 圆立方体
- 阿帕奇2
- PHP
- Node.js(pm2,一些正在运行的节点应用程序)
- 标准邮件服务器
- OpenVPN服务器
几乎所有这些都是由安装和维护的Virtualmin GPL
。
我不知道如何查明是否有人真的使用我的 VPS 对其他人进行 DDoS(或其他机器人攻击)。
我应该怎么办?
答案1
Virtualmin 是一种非常非常糟糕的服务器管理方式,因为根据定义,您用它mod_suexec
来完成基本的服务器维护。是的,我知道这是一个有用的工具,但相信我,它造成的问题远远超过好处。
这是坏消息,您的服务器已受到威胁,没有安全的从中恢复的方法。备份您的邮件、您的 openvpn 配置并与服务器吻别。你最好重新开始。好消息是,现在您可以重新开始,您可以正确地做到这一点。设置一个邮件服务器,做起来并不难。设置 openvpn 只允许特定的 ip 访问它。禁用所有不需要的 apache 模块。禁用您不使用的所有节点应用程序。禁用所有不需要的 php 模块。即使用最小特权原则。
您可能永远不会成为最好的 *nix 管理员,但请尽可能多地使用命令行。你在这里学到了重要的一课,你为自己做事越容易;坏人越容易控制服务器。我个人只向世界开放端口 80 和 443,端口 22 只对 VPN 开放,而 VPN 本身只能访问我在办公室和家里的 IP 地址。
如果我需要邮件,那么 987 是一个很好的端口,但除此之外...锁定该机器,您不需要向世界开放任何其他端口。像 virtualmin/webmin/etc 这样的工具如果使用最小权限原则设置的话是很棒的,但最终它们真的不是你的朋友。