我已经安装了CentOS 6,但是我只能通过closures防火墙来打开Apache2。
有人可以告诉我如何在不closures防火墙的情况下打开apache2到外部?
更新:
我的iptablesconfiguration如下:
# Firewall configuration written by system-config-firewall # Manual customization of this file is not recommended. *filter :INPUT ACCEPT [0:0] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [0:0] -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT -A INPUT -p icmp -j ACCEPT -A INPUT -i lo -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT -I FORWARD -m physdev --physdev-is-bridged -j ACCEPT -A INPUT -j REJECT --reject-with icmp-host-prohibited -A FORWARD -j REJECT --reject-with icmp-host-prohibited -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT COMMIT
这台机器有IP“192.168.59.142”,我需要通过我的networking上的另一台机器访问它的Apache。
UPDATE2:
解决方法是在“/ etc / sysconfig / iptables”中添加此规则,然后重新启动iptables
-I INPUT -d 192.168.59.142 -p tcp --dport 80 -j ACCEPT
这应该工作
iptables -I INPUT -p tcp --dport 80 -j ACCEPT
-I将把新规则插入到表格的开头。 使用-A它将被追加到表的末尾,并且您的覆盖REJECT规则将优先,因为iptables通过规则从上到下工作,第一个匹配胜利。
看看你已经发布的configuration,如果你移动了
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
以上
-A INPUT -j REJECT --reject-with icmp-host-prohibited
这也会起作用。 重新启动您的防火墙
sudo /sbin/service iptables restart
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
解决方法是在“/ etc / sysconfig / iptables”中添加此规则,然后重新启动iptables
-I INPUT -d 192.168.59.142 -p tcp --dport 80 -j ACCEPT
另外,CentOS还有configuration工具system-config-firewall ,这使得打开Web服务器端口非常容易。
在ncurses界面中,select“自定义”,并勾选“WWW(HTTP)”。
在我的CentOS 6.4系统上,它将以下规则添加到/etc/sysconfig/iptables :
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT