无法远程访问 Tomcat 应用程序,但可以访问 Apache 应用程序

无法远程访问 Tomcat 应用程序,但可以访问 Apache 应用程序

我正在一台干净的 Ubuntu 12.04 服务器上安装 Atlassian 的 Confluence 4.2。Confluence 在 Tomcat 6 上运行,并使用 PostgreSQL 9.1 作为其数据存储。我已经安装并配置了 phpPgAdmin 来管理 PostgreSQL,以及 Zentyal 来管理服务器。这两个应用程序都使用 Apache。

我遇到的问题是,虽然我可以从远程 PC 毫无问题地访问 phpPgAdmin 和 Zentyal,但我只能在本地运行时访问 Confluence(由本地主机、IP 地址或主机名指定)。相反,我收到错误HTTP 502 Connection Failed

通过实验,我还安装了 Ajenti,它似乎使用的是 lighttpd 而不是 Apache 或 Tomcat,它在本地连接时也能正常工作,但在远程连接时也会出现相同的 HTTP 502 错误。因此,Apache 提供的应用程序可以正常工作,但其他服务提供的应用程序则不行 - 有人对此有印象吗?距离我上次管理 Linux 系统已经过去 10 多年了,所以我已经生疏了!

答案1

事实证明,我的 iptables 配置有问题,导致防火墙阻止了远程访问。我手动添加了端口 8000、8080 和 8090,但没有起作用;因此,我保存了 iptables 配置,并注意到相关部分是:

-A INPUT -j iglobal
-A INPUT -p icmp ! -f -m icmp --icmp-type 8 -m state --state NEW -j ACCEPT
-A INPUT -p icmp ! -f -m icmp --icmp-type 0 -m state --state NEW -j ACCEPT
-A INPUT -p icmp ! -f -m icmp --icmp-type 3 -m state --state NEW -j ACCEPT
-A INPUT -p icmp ! -f -m icmp --icmp-type 4 -m state --state NEW -j ACCEPT
-A INPUT -p icmp ! -f -m icmp --icmp-type 11 -m state --state NEW -j ACCEPT
-A INPUT -p icmp ! -f -m icmp --icmp-type 12 -m state --state NEW -j ACCEPT
-A INPUT -j idrop
-A INPUT -p tcp -m tcp --dport 8090 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 8080 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 8000 -j ACCEPT

将其移至-A INPUT -j idrop本节末尾似乎已修复该问题。

相关内容