CentOS 5,端口 8080 不允许流量

CentOS 5,端口 8080 不允许流量

我正在尝试在我的 CentOS 5、Apache 2.2.3 服务器上打开端口 8080。当我转到 ip:8080/mydirectory 时 - 它超时了。到目前为止,我已经运行了以下命令:

$ iptables -A INPUT -p tcp --dport 8080 -j ACCEPT
$ service iptables save
$ iptables -A OUTPUT -p tcp --dport 8080 -j ACCEPT
$ service iptables save
$ iptables -A FORWARD -p tcp --dport 8080 -j ACCEPT
$ service iptables save
$ service iptables restart
$ service httpd restart

以下是我的 iptables 的输出

$ iptables -L -n
Chain INPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:8080

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:8080

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:8080

我编辑了 apache 来反映这一添加:

<VirtualHost *:8080>
  DocumentRoot "/var/www/html"
  ServerName dedicatedipgoeshere
</VirtualHost>

感谢您的任何帮助!

答案1

您需要将其添加Listen 8080到您的 apache 配置中。只需将其放在 VirtualHost 块的正上方即可。

例子:

Listen 8080
<VirtualHost *:8080>
  DocumentRoot "/var/www/html"
  ServerName dedicatedipgoeshere
</VirtualHost>

答案2

您不需要弄乱 FORWARD 和 OUTPUT 链,只需弄乱 INPUT。

 iptables -I INPUT -p tcp --dport 8080 -j ACCEPT

如果你的输出策略不是 ACCEPT,则输出

 iptables -I OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

但是如果上层是您的 iptables 规则集,那么超时不是因为防火墙,而可能是 apache 没有监听 8080。因为您的所有链都有 ACCEPT 策略。

尝试

 netstat -tpln

检查 apache 是否正在监听 8080。

答案3

据我所知,CentOS 默认启用(并阻止)SELinux。我邀请您阅读这篇维基文章了解有关 SELinux (特别是模式) 的更多信息。

您可以通过 CLI 调整设置system-config-securitylevel-tui。此解决方案的快速测试是将 SELinux 设置为宽容并添加您希望允许的端口 - 如下所示本文。如果您知道自己在做什么,我才建议禁用它,特别是对于生产系统!

相关内容