使用第三方提供的Centos5.8 vmx安装的虚拟机实例, 在安装Tomcat时发现启动后8080端口无法访问, 先检查是否selinux作了限制

# 查看selinux状态
sestatus
getenforce
# 查看selinux对端口的限制情况
semanage port -l
# 其中8080端口是否打开:
semanage port -l|grep 8080

排除了selinux的问题后, 发现是iptables引起. 查询发现, centos5.x里, 使用了一个 RH-Firewall-1-INPUT 的target, 所有INPUT和FORWARD都会target过去,

-A INPUT -j RH-Firewall-1-INPUT -A FORWARD -j RH-Firewall-1-INPUT

就是这个RH-Firewall-1-INPUT导致了8080端口无法访问.

据说在Centos6.x 里面 RH-Firewall-1-INPUT 已经被废除. 因为是测试环境, 所以直接清空保存了:

iptables -F iptables -X iptables -Z
# 查看, -n参数将IP数字化,-v输出更多信息,包括in out网口
iptables -L -n -v
# 保存
service iptables save
# 重启
service iptables start

后查看是否生效

RH官网上有详细解释: https://access.redhat.com/site/documentation/en-US/Red_Hat_Enterprise_MRG/1.3/html/Messaging_Installation_Guide/sect-Messaging_Installation_Guide-Authentication_and_Authorization-FirewallConfiguration.html

Update 20150711

在Centos6.3里, 默认只打开了22端口, 其他的端口都需要到iptables里显式打开:

# 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
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT

在22端口的规则下面, 照抄即可, 例如开放8080端口的通信

-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT

相关文章:

  • 2022-01-06
  • 2021-08-24
  • 2021-06-08
  • 2021-11-08
  • 2022-12-23
  • 2021-10-11
  • 2022-12-23
  • 2022-01-11
猜你喜欢
  • 2022-12-23
  • 2021-12-13
  • 2021-07-06
  • 2021-12-14
  • 2021-11-16
  • 2022-01-17
  • 2021-09-17
相关资源
相似解决方案