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を実行してリスニングポートを確認すると、listenと表示される
$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
ただし、localhostアクセスログが空であるため、リクエストはTomcatに到達していません。
Firewalldは無効になっていると主張しているため、接続に干渉していません。
$firewall-cmd --state
not running
他に欠けているファイアウォール設定はありますか?
CentOSのバージョンは?service iptables statusを実行するとどうなりますか?
—
Anthony Fornito 2016
残りのiptablesルールを追加しました。MiバージョンはCentOS Linuxリリース7.2.1511(コア)です。サービスiptables statusを呼び出すと、iptablesがアクティブとして表示されます。
—
Jared Rox
ファイアウォールを無効にしようとしましたか?これを行うと、問題を絞り込むことができます。
—
Vikelidis Kostas
ファイアウォールポートが開いていて、サービスが待機しています。しかし、それに接続しようとするとどうなりますか?
—
マイケルハンプトン