質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Apache

Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

Tomcat

TomcatはApache Software Foundation (ASF)で開発されたオープンソースのWebコンテナです。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

Q&A

解決済

2回答

5766閲覧

LoadBalancer -> apache -> tomcat 構成時でのhttpsの取り扱いにつきまして

退会済みユーザー

退会済みユーザー

総合スコア0

Apache

Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

Tomcat

TomcatはApache Software Foundation (ASF)で開発されたオープンソースのWebコンテナです。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

0グッド

0クリップ

投稿2016/07/20 12:29

編集2016/07/20 15:54

いつもお世話になっております。

表題の件につきまして、よろしくお願い致します。

やりたいこととしましてAWS環境にて
Loadbalancerの設定は以下のようになっています。

LBプロトコル=http
LBポート=80
インスタンスプロトコル=http
インスタンスポート=80

LBプロトコル=https
LBポート=443
インスタンスプロトコル=https
インスタンスポート=443

この状態でapacheのhttpd.confに

Listen 80
Listen 443

を追記しました。

LBでSSLをインストールされているので
LBとApacheはhttpになりますので、
Listenで80と443としました。

さらにtomcatを動かすため、以下ajpの設定をし
<Location />
ProxyPass ajp://localhost:8009/
</Location>

この状態でhttp://sitedomain.com/としますと
tomcatアプリケーションが動作します。

一方、https://sitedomain.com/としますと、
tomcatアプリケーションが動作しますが、
ChromeにてURL欄の一番左の鍵マークが赤字で☓とでて、
「このサイトへの接続はプライベート接続でありません」
となってしまいます。

この表示にならないようにはどのような設定が必要でしょうか。

お手数をお掛けしますがご確認いただければ幸いです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

HTTPS通信は、簡単に言うと、もともと接続先の身分を保証する仕組みなので、
質問者さんのようにどこの馬ともしれないEC2へいきなりHTTPS接続すると、
Chromeは「コイツあやしいぞ!」という反応をします。
(質問者さんにとっては見知ったサーバでも、Chromeはそうではないのです。)

そのあやしいぞ、というのが、「このサイトへの接続はプライベート接続でありません」 です。

やや難しいですが、この問題の対処としては俗に言う"オレオレ証明書"を使うのが
最も安価で済むと思います。
いったんELBを挟まない構成でApacheがHTTPS通信を受け付けられるように
設定してみたほうがわかりやすいと思います。

また、ELBを挟む際、HTTPSのまま(暗号化されたまま)EC2に通信を渡す場合は、
確かELB側のプロトコルはHTTPSではなくTCPを指定する必要があったはずです。

投稿2016/07/24 03:45

Jucco

総合スコア30

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ベストアンサー

検証環境が手元にないので誤っているかもしれませんが、
SSL利用時のAJPコネクタはポート8443の方を使っていたかと。

Tomcatのserver.xml

xml

1<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol" 2 maxThreads="150" SSLEnabled="true" scheme="https" secure="true" 3 clientAuth="false" sslProtocol="TLS" />

この内容がデフォルトではコメントアウトされていますので解除し、(デフォルトで有効になっている8009はコメントアウトします)

httpd.conf

xml

1<VirtualHost *:443> 2 ServerName https://www.sampledomain.com 3 ProxyPass /app ajp://localhost:8443/app 4 SetEnv HTTPS ON 5</VirtualHost>

と、ロードバランサ内でもHTTPSの設定で書かないといけなかったと記憶しています。
SSLはロードバランサ側で行っている前提ですが。

ちょっと自信はありません(´・ω・`)

投稿2016/07/20 13:23

A-pZ

総合スコア12011

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2016/07/20 15:57

ご回答ありがとうございます。 >と、ロードバランサ内でもHTTPSの設定で書かないといけなかったと記憶しています。 こちらは念のため、ロードバランサ内ではなく、ロードバランサからわたされたWebサーバー側(apache側)の設定で理解しました。 明日、もう一度試してみます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問