我有一台运行 Ubuntu 10.04 的机器,并且安装了 Apache2。当我在机器上时,我可以访问http://本地主机/它可以正常连接到 Web 服务器。我也可以直接访问我的 IP 并连接,没有任何问题。但是,如果我尝试从网络上的另一台计算机连接,无论是通过 DNS 还是直接 IP,我的连接都会超时。
但是,我可以通过 SSH 顺利地连接到该盒子,并且可以 ping 该盒子。
有任何想法吗?
谢谢
更新:
在本地计算机上运行 nmap 时,我得到以下信息:
wayne@media-box:~$ sudo nmap -sS -O -PI -PT 192.168.1.70
Starting Nmap 5.00 ( http://nmap.org ) at 2010-06-28 06:32 CDT
Interesting ports on media-box (192.168.1.70):
Not shown: 995 closed ports
PORT STATE SERVICE
22/tcp open ssh
25/tcp open smtp
80/tcp open http
143/tcp open imap
993/tcp open imaps
但是,如果我从网络上的另一个盒子运行它:
Starting Nmap 5.00 ( http://nmap.org ) at 2010-06-28 06:32 CDT
Interesting ports on media-box (192.168.1.70):
Not shown: 998 filtered ports
PORT STATE SERVICE
22/tcp open ssh
113/tcp closed auth
那么 80 对盒子本身开放,但不对外界开放?我该如何解决这个问题?
答案1
您是否安装了其他防火墙?
- 是的,shorewall
出色地
# sudo apt-get remove shorewall
这样就可以解决问题。
答案2
有可能某些因素启用了 Ubuntu 的内置防火墙 ufw(但通常默认禁用)。尝试运行:
$ ufw status
如果 ufw 已启用,而您想禁用它,请运行ufw disable
。如果您想保持防火墙启用并将 HTTP 流量列入白名单,请运行ufw allow Apache
答案3
这肯定是防火墙的问题,但如果没有看到防火墙规则,我就无法告诉你可能出了什么问题。你可以运行
iptables -L
列出它们,并将输出粘贴到您的问题中(如果您需要帮助解释它)。
我写过一篇IPTables 教程/参考(链接是我的网站)可能会有用。其中一部分是关于在 Linux 服务器上配置防火墙的简短指南,即运行哪些命令、添加哪些规则以及按什么顺序添加。
答案4
从本地网络访问此盒子时,您使用的是盒子的私有 IP 还是公共 IP?
从本地网络访问时,您应该使用 192.168.XXX.XXX、10.XXX.XXX.XXX 或 172.16.XXX.XXX 前缀之一...