我不确定如何在标题中描述这个问题,所以我会给你提供一些背景信息。
我有一台运行 Ubuntu 12.10 Server 和 Apache 2.2.22(所有软件包均为最新发布版本)的机器。它已经运行了大约 7 个月,运行非常顺畅,而且我偶尔只遇到一些小问题,这主要是因为我的愚蠢。
昨晚我很无聊,决定尝试一下托词,看看我是否可以让它工作。我很清楚它的 Web 界面可能会干扰我的 Apache 设置,所以我安装并在 TCP 端口 81 上启动它。然后我立即检查了我的网站,它们都是仍在运行,这意味着这种诡计并没有干扰 Apache。我启动它并进行了一些扫描,间歇性地检查以确保我的网站仍然正常运行;事实确实如此。
在我搞定 Subterfuge 之后,我停止了它并尝试了CTRL + C
subterfuge 进程(它“附加”在我的 SSH 会话中)。无论我点击多少次,它都不会退出CTRL+C
。我关闭了我的 SSH 会话并重新登录。当我重新登录时,一切都很好,但我注意到我的网站不再响应(给出“连接被拒绝错误”)。我没有尝试修复它,我只是去睡觉,想着问题可能会自行解决。
时间快进到今天早上。网站仍然没有响应,我通过 SSH 进入服务器检查情况。当我登录时,它告诉我有 3 个僵尸进程,然后我打开时看到了htop
。僵尸都是伪装进程。我正常退出它们(使用SIGTERM
)htop
,它们就像乖乖的小僵尸一样消失了。我的网站仍然没有响应连接。
此时,我以为这是我的路由器配置的问题,所以我登录了。我将转发的端口更改为 HTTP alt,然后更改为任意私有端口。但这仍然没有解决问题。
目前情况总结如下:
- 服务器正在响应所有其他类型的连接(SSH、HTTPS、VNC)
- 服务器惯于响应来自互联网的 HTTP 请求。
- 服务器将要响应来自本地网络的 HTTP 请求。
- 服务器将要响应来自互联网的 HTTPS 请求。
Nmap
从互联网扫描时,扫描显示端口 80 为“开放” 。IPTABLES
、ufw
等都是已禁用。- 我重启了路由器
- 网络上的另一台服务器响应请求
更新:
我没有更改任何 Apache 配置,但现在,当您从浏览器访问服务器时,它会以默认的“它有效!”页面响应,表示文档根目录中没有内容。之前存在的所有文件都确实仍然存在,所以我将研究权限问题的可能性(或者文档根目录以某种方式发生了改变)。目前看来,这可能只是中国人在对我进行黑客攻击。
有人能想到什么吗?提前感谢您的时间,我知道这是一个很长的问题。
答案1
最终,我还是没能解决这个问题。这个系统实际上导致我们的网络陷入瘫痪;我认为它感染了一些恶意软件。我关闭了这台机器(运行了 57 天后),将其从网络上拔下,至今仍未将其恢复运行。我目前正在尝试解决一些真的涉及 XenServer 或 ESXi 的旧机器。感谢您的建议,但我认为这台机器的问题更大。