非默认端口上的Apache,需要iptables的帮助

我设置Apache来监听端口8000。

它从127.0.0.1工作正常,但端口8000上的IP地址不起作用

IP地址是我的路由器,我已经把端口8000转发到我的盒子

nmap没有显示端口8000,我想我需要一个iptables规则来打开这个

到目前为止我跑了:

iptables -I INPUT -p tcp -m tcp --dport 8000 -j ACCEPT iptables-save 

但是这似乎不工作到目前为止..任何提示?

您可以通过执行以下操作来validationapache实际上正在侦听端口0.0.0.0:8000:

 netstat -ntlp 

你可以通过这样做来validationiptables是否有正确的规则:

 iptables -nvL 

在iptables输出中,确保在接受规则之前没有任何规则拒绝连接。 此外,尝试validation它可以从同一networking上的另一台计算机访问,然后尝试在networking外(通过路由器)。

我很困惑,你想做什么?

如果你想让apache监听端口8000,只需告诉它:

 <VirtualHost <your box IP>:8000> ServerName yourservername ... </VirtualHost> 

正如你所提到的,你的路由器已经设置为转发stream量到端口8000,所以一切都应该没问题。

根据上面的configuration更改,重新启动Apache。 从盒子端口到8000端口,看看是否有效,然后从另一个路由器后面尝试,最后从外面。