无法从外部网络访问 Ubuntu Web 服务器站点

无法从外部网络访问 Ubuntu Web 服务器站点

因此,我在 Ubuntu 14.04 服务器发行版上设置了一个 LAMP Web 服务器,并在其上安装了 owncloud 和 wordpress。它通过以太网连接到网络,据我所知,连接性很好(它可以 ping 站点并顺利获取更新)。当我从服务器所连接的路由器连接到无线网络(同一网络)时,我可以正常访问 wordpress 和 owncloud。但是,当我尝试从其他网络位置(例如从我的公寓)访问它时,问题就出现了。会话超时。

我按照指示检查了端口 80 和 443 的端口转发(ZyXEL PK5001Z-CenturyLink 路由器)http://portforward.com/english/routers/port_forwarding/ZyXEL/PK5001Z-CenturyLink/Apache.htm。我尝试对服务器 IP 地址上的每个端口进行 ping 操作,但没有成功。

我对编程和网络还很陌生,所以这可能是一个简单的解决方案,我只是不知道该去哪里找。任何建议都将不胜感激。服务器和地址的信息列在下面。提前谢谢您。

IP:192.168.0.170

URL:fernweh.ddns.net“/wordpress”或“/owncloud”

通过 noip.com 分配动态 IP

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 更新

好的,我按照建议配置了 noip2,但仍然没有成功。我还在几个较高的端口上设置了端口转发(也按照建议),仍然没有成功。

然后我检查了哪些端口实际上是打开的

'nmap -v -sT local'

发现了 1000 个端口,其中只有 2 个未被过滤

'80/tcp   http   open
 443/tcp  https  closed'

我是否需要使用

'iptables -A INPUT -p tcp --dport "port number" -j INPUT'

或者说这不相关?

答案1

192.168.0.170 是服务器在您的私有 LAN 中使用的私有 IP 地址。任何人都可以使用它,因此永远不会路由到互联网。要访问互联网,您需要将路由器指定为默认网关。您已经知道这一点,因为您在路由器上启用了端口转发。

当我 ping 你的 DDNS 地址时,fernweh.ddns.net它会解析为你的内部 IP

$ ping fernweh.ddns.net
PING fernweh.ddns.net (192.168.0.170) 56(84) bytes of data.

由于上述原因,这是行不通的。

我想你已经在运行 NoIP 客户端了?如果是,请重新配置它

sudo /usr/local/bin/noip2 -C

如果没有,请下载并安装就像描述的一样。由于只给出链接而不给出其他内容的做法不太好:

下载源码包到你的主文件夹并解压

cd ~/Downloads
wget http://www.no-ip.com/client/linux/noip-duc-linux.tar.gz
tar xf noip-duc-linux.tar.gz
cd noip-2.1.9-1/

切换到root:sudo -s并安装

make install

最后,您需要运行它noip2或将其设为服务,以便它在启动时运行。(请参阅README.first源文件夹中的)

它将编译二进制文件并引导您完成配置。

此外:

  • 您无法 ping 端口。ping通过发送 ICMP 数据包来工作。与 TCP/UDP 不同,ICMP 没有端口的概念。您的路由器和/或 ISP 可能会阻止 ping 到您。
  • 正如@Zacharee1 和@Daniel 在评论中提到的,您的 ISP 也可能阻止了 HTTP(S) 等知名端口。在高端口上运行您的 Web 服务器。这样,您还可以获得非常轻微的攻击保护,因为需要进行完整的端口扫描才能发现正在运行的 Web 服务器。请注意,这不是足够的安全措施!保持您的 WordPress 和 OwnCloud 安装为最新版本。

相关内容