Web 服务器不允许公共连接

Web 服务器不允许公共连接

我无法访问虚拟机中的本地 Web 服务器进行测试,我不明白为什么。SSH 和 VNC 工作正常。该服务器是一台 Virtualbox bitnami 机器,在笔记本电脑上运行桥接连接。

这是 IP 配置:

调制解调器/路由器地址:192.168.1.1
笔记本电脑:192.168.1.86
虚拟机:192.168.1.89

  • 调制解调器/路由器已连接到互联网,并且我在 noip.com 上有一个完全正常工作的 DDNS 域。
  • 我既可以从我的公共 IP ping 调制解调器,也可以从 LAN 外部的公共域 ping 调制解调器。
  • 我已经在调制解调器/路由器上配置了以下端口:
    SSH 192.168.1.89 TCP TCP:22 TCP:22 active
    HTTP 192.168.1.89 TCP TCP:80 TCP:80 active
    VNC 192.168.1.86 TCP 5900 5900 active

  • 在局域网内,我可以从笔记本电脑和其他设备访问服务器。

  • 在 LAN 之外使用 DDNS 地址,我可以使用 VNC 访问笔记本电脑,使用 SSH 访问虚拟机

因此基本上,除了 HTTP 之外,一切都运行正常。

答案1

您的 ISP 可能阻止了来自您网络外部的连接。

许多 ISP 会阻止常见的服务端口(HTTP、HTTPS、FTP、SMTP 等),以防止客户在家中运行托管服务,除非他们以更高的价格订购“商务舱”或更高级别的服务。

封锁这些特定端口可以有效阻止人们利用住宅服务计划开展业务。

请与您的 ISP 联系,看看他们是否正在做此事。

还要检查虚拟机内是否运行了防火墙。可能需要打开端口 80/443。由于您可以通过 SSH 顺利连接,我猜您可能已经考虑过这一点。

答案2

从评论中的帖子和 sudo lsof -i 的输出可以看出,机器上运行着 varnishd,它是 HTTP 加速器守护进程。
“varnishd 守护进程接受来自客户端的 HTTP 请求,将它们传递到后端服务器并缓存返回的文档,以便更好地满足对同一文档的未来请求。”
它的配置可能有问题。看看这个: https://www.varnish-cache.org/docs/2.1/reference/varnishd.html

相关内容