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에 도달하지 않습니다.

방화벽은 연결이 해제되었다고 주장하여 연결을 방해하지 않습니다.

$firewall-cmd --state
not running

누락 된 다른 방화벽 설정이 있습니까?


CentOS의 버전은 무엇입니까? 서비스 iptables 상태를 실행하면 어떻게됩니까?
Anthony Fornito

나머지 iptables 규칙을 추가했습니다. Mi 버전은 CentOS Linux 릴리스 7.2.1511 (코어)입니다. 서비스 iptables 상태를 호출하면 iptables가 활성으로 표시됩니다.
Jared Rox

방화벽을 비활성화하려고 했습니까? 이렇게하면 문제를 좁힐 수 있습니다.
Vikelidis Kostas

방화벽 포트가 열려 있고 서비스가 수신 대기 중입니다. 그러나 연결하려고하면 어떻게됩니까?
Michael Hampton

답변:


10

나는 여기서 일어나고있는 것은 당신이 당신의 기술을 혼합하고 있다는 것입니다.

시험:

서비스 iptables 중지

당신은 여전히 ​​같은 응답을 참조하십시오

그렇다면 iptables 또는 방화벽을 제거해야합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.