在家中设置带有 21 和 80 端口的服务器

在家中设置带有 21 和 80 端口的服务器

我确信这个问题在互联网上已经被问过很多次了,但是我仍然需要一些关于这个问题的建议,因为我对所有这些网络东西不是很熟悉。

我正在使用在 Debian 下运行的 Apache 设置服务器,同时在同一平台下使用 ProFTPD 设置 FTP 服务。假设我的服务器的内部 IP 是 192.168.1.123,并且是静态 IP。至于外部 IP,它是一个动态 IP,因此我设置了一个 DDNS 域,其中所有更新程序都在运行,并且假设 www.example.com 映射到我的家庭 IP。

因此,我想要的是,当我在 Web 浏览器中输入 www.example.com 时,它将显示托管在我服务器上的网页,可以使用ftp://www.example.com

我的问题是:

1) 将端口 80 和 21 转发到 192.168.1.123 的做法对吗?如果不对,正确的做法是什么?

2)如果我没错的话,转发端口 80 后我会收到以下消息(转发端口 21 时我会收到类似的消息):

Since port 80 is used, the DSL Modem Router WEB server port for your remote access will be moved to 8080.

当我在 Web 浏览器中输入 www.example.com 时,它会引导我进入路由器设置页面。当我输入 www.example.com:8080 时,浏览器抱怨无法连接到服务器。

因此,我更改了服务器 Apache 设置以监听端口 8080,并转发端口 8080。同样,当我尝试从家庭网络访问 www.example.com:8080 时,它会抱怨无法连接到服务器。但是,当我从朋友家访问 www.example.com:8080 时,它会在我的服务器中显示网页内容。

无论如何,我的目标是实现 www.example.com(端口 80,而不是:8080)显示托管在我的服务器上的网页,并且ftp://www.example.com让我访问我的文件。

如果有帮助的话,我正在使用的调制解调器路由器是 TP-Link TD-W8960N(如果您尝试搜索 TP-Link 站点,它不是最新型号。有一个同名的较新型号)。我正在使用的 DDNS 服务是 no-ip.com。

谢谢。

答案1

回答 1:是的。这是正确的做法。

答案 2:您应该禁用路由器 80 和 21 端口上运行的服务。不要忘记启用其他方法来访问路由器,例如 SSH。或者您可以将路由器的 Web 服务器移至另一个端口,例如 8080。或者,如果路由器可配置为仅监听内部端口并将外部端口转发到您的机器。因此... 您的路由器很可能不支持这些... 那么您将无法轻松地完成您想做的事情。

答案 2 的补充:您无法从内部网络访问您的网页,因为您的流量通过路由器传到外部世界,因为它认为您的外部 IP 在互联网中。您可以使用路由器上的脏配置来管理正确的工作,但最好将 IP 为 127.0.0.1 的 example.com 添加到您的 hosts 文件中。这样您的计算机就会自行查找 example.com。

相关内容