回答編集履歴
2
iptablesの設定内容を修正した。
test
CHANGED
@@ -6,25 +6,17 @@
|
|
6
6
|
|
7
7
|
iptablesによって80番ポートへの通信が8080番ポートに転送されていた。
|
8
8
|
|
9
|
+
それにより、ELBからApacheを通らず直接Tomcatにアクセスしていた。
|
10
|
+
|
9
11
|
以下の様な設定が入っていたので、削除した。
|
10
12
|
|
11
13
|
```
|
12
14
|
|
13
|
-
|
15
|
+
-A PREROUTING -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 8080
|
14
16
|
|
15
|
-
:PREROUTING ACCEPT [0:0]
|
16
|
-
|
17
|
-
:OUTPUT ACCEPT [0:0]
|
18
|
-
|
19
|
-
:POSTROUTING ACCEPT [0:0]
|
20
|
-
|
21
|
-
-A PREROUTING -p
|
17
|
+
-A PREROUTING -p udp -m udp --dport 80 -j REDIRECT --to-ports 8080
|
22
|
-
|
23
|
-
COMMIT
|
24
18
|
|
25
19
|
```
|
26
|
-
|
27
|
-
※実際の設定の通りかは分からないが、このような設定だった。
|
28
20
|
|
29
21
|
### http-proxy.confの設定に問題があった。
|
30
22
|
|
@@ -69,5 +61,3 @@
|
|
69
61
|
$ /usr/sbin/setsebool httpd_can_network_connect true
|
70
62
|
|
71
63
|
```
|
72
|
-
|
73
|
-
|
1
結果を追記した。
test
CHANGED
@@ -1,7 +1,73 @@
|
|
1
|
-
ま
|
1
|
+
紆余曲折ありましたが、結果として修正が必要だった点について記述します。
|
2
|
-
|
3
|
-
Tomcatとは別のようなので、ほかにEC2のインスタンスはありませんか?
|
4
2
|
|
5
3
|
|
6
4
|
|
5
|
+
### iptablesにポートの転送ルールが入っていた。
|
6
|
+
|
7
|
+
iptablesによって80番ポートへの通信が8080番ポートに転送されていた。
|
8
|
+
|
9
|
+
以下の様な設定が入っていたので、削除した。
|
10
|
+
|
11
|
+
```
|
12
|
+
|
13
|
+
*nat
|
14
|
+
|
15
|
+
:PREROUTING ACCEPT [0:0]
|
16
|
+
|
17
|
+
:OUTPUT ACCEPT [0:0]
|
18
|
+
|
19
|
+
:POSTROUTING ACCEPT [0:0]
|
20
|
+
|
21
|
+
-A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080
|
22
|
+
|
23
|
+
COMMIT
|
24
|
+
|
25
|
+
```
|
26
|
+
|
27
|
+
※実際の設定の通りかは分からないが、このような設定だった。
|
28
|
+
|
29
|
+
### http-proxy.confの設定に問題があった。
|
30
|
+
|
31
|
+
8080番ポートを指定しておらず、localhostではなくFQDNになっていた。
|
32
|
+
|
33
|
+
以下の設定を行った。
|
34
|
+
|
35
|
+
```
|
36
|
+
|
37
|
+
ProxyPass /◯◯/ ws://localhost:8080/◯◯/
|
38
|
+
|
39
|
+
ProxyPassReverse /◯◯/ ws://localhost:8080/◯◯/
|
40
|
+
|
41
|
+
ProxyPass /◯◯/ ajp://localhost:8009/◯◯/
|
42
|
+
|
43
|
+
```
|
44
|
+
|
45
|
+
※最終的にうまくいった設定ではない
|
46
|
+
|
7
|
-
|
47
|
+
### SELinuxによってApacheとTomcatの通信が制限されていた。
|
48
|
+
|
49
|
+
http-proxy.confへの設定を行って起動すると、
|
50
|
+
|
51
|
+
Apacheのエラーログに以下が出力された。
|
52
|
+
|
53
|
+
```
|
54
|
+
|
55
|
+
[Tue Sep 01 00:06:13.923821 2015] [proxy:error] [pid 11518:tid 140522228266752] (13)Permission denied: AH00957: WS: attempt to connect to 127.0.0.1:8080 (localhost) failed
|
56
|
+
|
57
|
+
[Tue Sep 01 00:06:13.924028 2015] [proxy:error] [pid 11518:tid 140522228266752] AH00959: ap_proxy_connect_backend disabling worker for (localhost) for 60s
|
58
|
+
|
59
|
+
[Tue Sep 01 00:06:13.924054 2015] [proxy_wstunnel:error] [pid 11518:tid 140522228266752] [client 127.0.0.1:44894] AH02452: failed to make connection to backend: localhost
|
60
|
+
|
61
|
+
```
|
62
|
+
|
63
|
+
SELinuxによってApacheとTomcatの間の通信が制限されていたので、
|
64
|
+
|
65
|
+
以下の設定変更を行った。
|
66
|
+
|
67
|
+
```
|
68
|
+
|
69
|
+
$ /usr/sbin/setsebool httpd_can_network_connect true
|
70
|
+
|
71
|
+
```
|
72
|
+
|
73
|
+
|