Apache-2.2
apache 沒有從外部響應(防火牆/iptables 問題)
已
CentOS
安裝httpd
. 可以從機器內部連接lynx
到http://localhost
和到http://10.20.30.40
(真實IP)。無法從外部連接。以下是摘錄:/etc/httpd/conf/httpd.conf
Listen 0.0.0.0:80 <VirtualHost 10.20.30.40:80> DocumentRoot /var/www/vhost1 ErrorLog logs/vhost1-error_log CustomLog logs/vhost1-access_log common </VirtualHost>
我正在嘗試從位於同一子網上的機器連接(據我所知)。
日誌文件中沒有任何可疑之處。請問有什麼建議嗎?
更新:執行時
iptables -L
我有以下行(也許是相關的)REJECT all -- anywhere anywhere reject-with icmp-host-prohibited
:。更新 N2:
iptables -vnL
輸出:Chain INPUT (policy ACCEPT 0 packets, 0 bytes) pkts bytes target prot opt in out source destination 0 0 ACCEPT udp -- virbr0 * 0.0.0.0/0 0.0.0.0/0 udp dpt:53 0 0 ACCEPT tcp -- virbr0 * 0.0.0.0/0 0.0.0.0/0 tcp dpt:53 0 0 ACCEPT udp -- virbr0 * 0.0.0.0/0 0.0.0.0/0 udp dpt:67 0 0 ACCEPT tcp -- virbr0 * 0.0.0.0/0 0.0.0.0/0 tcp dpt:67 1576K 1643M RH-Firewall-1-INPUT all -- * * 0.0.0.0/0 0.0.0.0/0 Chain FORWARD (policy ACCEPT 0 packets, 0 bytes) pkts bytes target prot opt in out source destination 0 0 ACCEPT all -- * virbr0 0.0.0.0/0 192.168.122.0/24 state RELATED,ESTABLISHED 0 0 ACCEPT all -- virbr0 * 192.168.122.0/24 0.0.0.0/0 0 0 ACCEPT all -- virbr0 virbr0 0.0.0.0/0 0.0.0.0/0 0 0 REJECT all -- * virbr0 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable 0 0 REJECT all -- virbr0 * 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable 0 0 RH-Firewall-1-INPUT all -- * * 0.0.0.0/0 0.0.0.0/0 Chain OUTPUT (policy ACCEPT 354K packets, 58M bytes) pkts bytes target prot opt in out source destination Chain RH-Firewall-1-INPUT (2 references) pkts bytes target prot opt in out source destination 922 823K ACCEPT all -- lo * 0.0.0.0/0 0.0.0.0/0 19 1412 ACCEPT icmp -- * * 0.0.0.0/0 0.0.0.0/0 icmp type 255 0 0 ACCEPT esp -- * * 0.0.0.0/0 0.0.0.0/0 0 0 ACCEPT ah -- * * 0.0.0.0/0 0.0.0.0/0 159K 28M ACCEPT udp -- * * 0.0.0.0/0 224.0.0.251 udp dpt:5353 2869 640K ACCEPT udp -- * * 0.0.0.0/0 0.0.0.0/0 udp dpt:631 0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:631 1239K 1589M ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED 8 1064 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:22 175K 25M REJECT all -- * * 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited
試試這個看看是否有幫助:
sudo /sbin/iptables -A INPUT -p tcp --dport http -j ACCEPT
如果您事先使用以下內容,則可以輕鬆恢復:
/sbin/iptables-save > /tmp/fw
如果您想完全關閉 iptables(儘管最好適當地配置它),請使用:
sudo /sbin/chkconfig iptables off
否則,使規則持久保存到 /etc/sysconfig/iptables:
/sbin/iptables-save > /etc/sysconfig/iptables
在 CentOS 7 或更高版本上
在 CentOS 7 和 RHEL 7 上,您可能會使用
firewall-cmd
來允許 HTTP 流量。firewall-cmd --permanent --add-service=http firewall-cmd --reload