在CentOS上部署Tomcat时出现防火墙故障


10

我正在尝试在CentOS环境中部署Tomcat服务器,但是它没有收到请求。

执行startup.sh可以正常工作,并且日志显示tomcat正在运行

16-Dec-2016 13:36:58.440 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler [http-nio-8080]
16-Dec-2016 13:36:58.444 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler [ajp-nio-8009]
16-Dec-2016 13:36:58.445 INFO [main] org.apache.catalina.startup.Catalina.start Server startup in 14803 ms

运行netstat检查侦听端口时,它显示为侦听

$netstat -atnp|grep LISTEN

tcp        0      0 0.0.0.0:8080            0.0.0.0:*               LISTEN      3321/java

为了跳过防火墙,我在iptables上添加了自定义规则。

$iptables -nL

Chain INPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:8080
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:50060
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:50030
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:50105
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:50090
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:50075
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:50070
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            state NEW tcp dpt:123
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0            state RELATED,ESTABLISHED
ACCEPT     icmp --  0.0.0.0/0            0.0.0.0/0
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            state NEW tcp dpt:22
REJECT     all  --  0.0.0.0/0            0.0.0.0/0            reject-with icmp-host-prohibited

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

我在顶部添加了该规则,以避免在普遍拒绝之后添加该规则的错误。由于服务返回以下内容,因此iptables处于活动状态:

$service iptables status
Redirecting to /bin/systemctl status  iptables.service
● iptables.service - IPv4 firewall with iptables
Loaded: loaded (/usr/lib/systemd/system/iptables.service; enabled; vendor preset: disabled)
Active: active (exited) since Fri 2016-12-16 13:09:47 EST; 1h 45min ago
Main PID: 728 (code=exited, status=0/SUCCESS)
CGroup: /system.slice/iptables.service

但是,请求未到达Tomcat,因为localhost访问日志为空。

Firewalld不会干扰连接,因为它声称已被禁用:

$firewall-cmd --state
not running

我还缺少其他防火墙设置吗?


什么版本的CentOS?如果您运行service iptables status会怎样?
安东尼·佛尼托

我添加了其他iptables规则。Mi版本是CentOS Linux版本7.2.1511(核心)。呼叫服务iptables状态显示iptables为活动状态。
贾里德·罗克斯

您是否尝试禁用防火墙?这样做可以缩小问题范围。
Vikelidis Kostas

好的,因此防火墙端口已打开,服务正在侦听。但是,当您尝试连接到它时会发生什么?
迈克尔·汉普顿

Answers:


10

我认为这是您正在混合技术。

尝试:

服务iptables停止

看到你仍然得到同样的回应

如果这样做,则需要删除iptables或firewalld

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.