Ubuntu 20.04 Web 服务器不会接收来自路由器转发的互联网网络流量

Ubuntu 20.04 Web 服务器不会接收来自路由器转发的互联网网络流量

我目前在重做本地网络服务器时遇到问题。

主要问题是它不再为互联网提供任何服务,但可以在本地局域网上正常提供服务。

最初(大约一年前),我使用 Ubuntu Server 20.04 设置了一个本地 Web 服务器,用于运行我正在开发的 Docker 容器应用程序。所有应用程序都是微服务,因此我不需要公开托管任何内容(因为那会在以后出现,即现在),但我仍然经历了以下过程:

  • 支付域名费用(来自 namecheap)
  • 将 DNS 重定向设置到我的公共 IP 地址
  • 使用静态 IP 地址设置 ubuntu 并在 LAN 上进行通信
  • 在路由器中设置端口转发,以便将 Web 服务器暴露给互联网(端口 80 和 443)。我去年运行的服务仅从 Web 中提取信息,不托管。但我想配置一个 Web 应用程序进行托管,这样我就不必做大量工作了。

最初,我只是在 ubuntu 上运行 Apache,然后我能够输入我的域名,例如:“mydomain.com”,它会显示默认的 apache 网页。一切都很顺利,我把它留在那里,直到我真正需要托管一个 Web 应用程序。

然而,在过去的一年里,我不得不将服务器迁移到新硬件,还安装了新的华硕路由器,并且出于某些原因不得不对我的本地网络进行彻底改造。因此,我将本地 IP 从 192.168.xx 改为 10.0.xx,现在我已经启动并运行了一个 Docker Web 应用服务,作为演示网站,可以从我的 LAN 中从 10.0.#.#:80 访问。所以我知道该网站 100% 处于活动状态。

其他一切都运行良好,但出于某种原因,我无法让 Ubuntu 响应外部域请求,而且我 100% 知道它指向我的公共 IP。即使我使用我的公共 IP“1.2.3.4:80”,它仍然不起作用。然而,网络内容的托管和网络是我最薄弱的知识基础。我最近卸载了 Apache,因为它导致我的 docker 容器端口出现问题,但我认为我不需要 apache。

我目前的临时解决方案是使用 OpenVPN 并只将 Web 应用程序与我的 LAN ips 一起使用。

当我进行迁移时,所有配置和原始设置都被复制了,我猜我没有将 Ubuntu 配置之一从原始的 192.168.#.# 更改为服务器的新 10.0.#.# ip。由于我并不经常使用 Ubuntu 服务器,而且自从我真正开始使用它以来已经一年了,我已经完全忘记了向路由器公开 ip/端口的所有配置。ufw 处于非活动状态,我不认为我配置了任何其他防火墙(目前)。我一直在网上搜索教程和指南,但没有一个能找到任何未更改以匹配我当前网络的设置或配置。

我的问题是:

  • 是否存在我可能忘记的配置文件(我可以发布任何需要的)?
  • 如果我已经使用 Docker 容器处理 Web 应用程序,我认为不需要运行 Nginx 或 Apache。但我是否真的需要一个服务器应用程序来接收流量并将其发送到 Docker?

相关内容