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

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

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

HTTPS(Hypertext Transfer Protocol Secure)はHypertext Transfer プロトコルとSSL/TLS プロトコルを組み合わせたものです。WebサーバとWebブラウザの間の通信を暗号化させて、通信経路上での盗聴や第三者によるなりすましを防止します。

SSL

SSL(Secure Sockets Layer)とは、暗号化されたプロトコルで、インターネット上での通信セキュリティを提供しています。

AWS(Amazon Web Services)

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

Q&A

解決済

2回答

4272閲覧

AWS https化不可

starsecond

総合スコア13

HTTPS

HTTPS(Hypertext Transfer Protocol Secure)はHypertext Transfer プロトコルとSSL/TLS プロトコルを組み合わせたものです。WebサーバとWebブラウザの間の通信を暗号化させて、通信経路上での盗聴や第三者によるなりすましを防止します。

SSL

SSL(Secure Sockets Layer)とは、暗号化されたプロトコルで、インターネット上での通信セキュリティを提供しています。

AWS(Amazon Web Services)

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

1グッド

0クリップ

投稿2020/01/23 08:23

編集2020/01/24 05:25

AWSにサーバーを立ててHPを公開しようとしています。
httpでは表示することが出来たのですが、AWS上でhttpsの設定をしても、ブラウザで保護されていない通信と表示されます。
以下のサイトを参考にしながら設定を行いました。
ドメインも新規取得しました。

https://recipe.kc-cloud.jp/archives/11084

ブラウザ(Chrome)の証明書情報の状態は「この証明書には問題ありません」(保護されていない通信クリック → 署名書 → 証明のパス)と出ていますが、他に設定すべき箇所はありますでしょうか。

上記サイトではnginxをインストールするよう書かれていますが、元々Apacheが起動しているため?sudo service nginx startでFAILEDが出ました。
元々インスタンスは作成されていたため、この作業をしなくてもhttp表示は出来ましたがhttpsにするためには必要なのでしょうか。

■気になる点
ロードバランサーのターゲットの登録で80番ポートでは「このターゲットは、現在ターゲットグループのヘルスチェックに合格しています。」と出ますが、443ポートでは「Health checks failed with these codes: [502]」と出ます。
色々検索してヘルスチェックのパスを/index.htmlにしてルートディレクトリに置きましたが、逆に80番ポートもエラーが出たため、元(/)に戻しています。
セキュリティグループはssh:22とhttp:80とhttps:443を許可しています。

コマンドラインでdig 取得ドメイン A とするとANSWER SECTIONでAレコードが二つ出てくる状態です。

初心者で申し訳ございませんがご教示の程よろしくお願いいたします。


2020/1/24 編集

リスナー設定
リスナー設定

ターゲットグループ(説明)
ターゲットグループ(説明)

ターゲットグループ(ターゲット)
ターゲットグループ(ターゲット)

ターゲットグループ(ヘルスチェック)
ターゲットグループ(ヘルスチェック)

ELBのセキュリティグループ
ELBのセキュリティグループ

EC2インスタンスのセキュリティグループ
EC2インスタンスのセキュリティグループ


1/24 14:23追記

トップ画面

yodel👍を押しています

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

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

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

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

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

guest

回答2

0

ベストアンサー

もともとApacheを入れていたのなら、nginxをそのまま使うとポートがバッティングして起動できないと思います。
参考サイトではnginxを使っているだけでApacheでも問題はないです。

ロードバランサーのターゲットの登録で80番ポートでは「このターゲットは、現在ターゲットグループのヘルスチェックに合格しています。」と出ますが、443ポートでは「Health checks failed with these codes: [502]」と出ます。

ALBのリスナーの80番と443番で別々のターゲットグループを設定しているんですか?
ALBのリスナー設定、ターゲットグループ
それとALB、EC2インスタンスそれぞれのセキュリティグループの設定を貼ってみてください。

※追記
ターゲットグループの設定で80番ポートをちゃんと指定して、ヘルスチェックはうまく行ってますね。
ターゲットグループのほうで443ポートを指定したら失敗するのは正しい挙動ですし、ALBに証明書を設定するのであればその必要もありません。(EC2のApacheでHTTPSの設定を入れていないと思いますので)
やりたいことは、ALBでHTTPSのリクエストを受けて、そのリクエストをEC2インスタンスに振り分けるということですね。
ここでのALB→EC2のリクエストの振り分けの設定がターゲットグループの設定です。なのでここを443ポートにする必要はありません。(ALB→EC2の間の通信も暗号化したいという要望があれば話は別ですが、プライベートネットワーク内の通信なので特に必要はないと思います。一応やるならこんな感じ

ALBではHTTPのリスナーを設定していないので、HTTPでアクセスしたら表示されるというのはむしろおかしな挙動ですね。
キャッシュがローカルに残ってるんでしょうかね?
キャッシュを消すか、シークレットウインドウを使うとか、スーパーリロードを試すとかしてみてください。

SSL化したのにHTTPでアクセスさせるのも微妙なので、常時HTTPSになるようにしましょう。
Apacheやnginxの設定でやると地味に面倒なんですが、ありがたいことに今はALBの設定だけでできるので、下にあるEC2インスタンスはALBからのHTTPリクエストさえ受け付けられれば十分です。

コマンドラインでdig 取得ドメイン A とするとANSWER SECTIONでAレコードが二つ出てくる状態です。

これはALBに2つのサブネットを設定しているからですね。
試しにALBのDNS名に対してdigコマンドを打ってみると同じ結果になると思います。

投稿2020/01/23 08:34

編集2020/01/24 03:25
yu_1985

総合スコア7427

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

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

starsecond

2020/01/23 08:59

経緯としては、https://recipe.kc-cloud.jp/archives/11188 でロードバランサーのプロトコルを443に変えるように書いてあったので443にしたところ502エラーが出ました。 https通信をするには443の設定が必要なのかと思いましたがこれもわかっておりません・・・ 今はターゲットグループの登録済ターゲットは80番ポートのみです。 ■ターゲットグループ xxxx 80 HTTP instance ロードバランサー名 vpc-xxxxx  ■リスナー設定 HTTPS : 443 arn...xxxxx デフォルト: xxxxxxxxxxx (ACM) 証明書の表示/編集 デフォルト: 転送先 xxxx ルールの表示/編集 --- ■ELBのセキュリティグループ HTTP TCP 80 マイIP/32 SSH TCP 22 マイIP/32 HTTPS TCP 443 マイIP/32 --- ■EC2インスタンスのセキュリティグループ HTTP TCP80 0.0.0.0/0 HTTP TCP80 ELBのセキュリティグループ (load-balancer-wizard-4) SSH TCP22 0.0.0.0/0 MYSQL/Aurora TCP3306 0.0.0.0/0 HTTPS TCP443 0.0.0.0/0 HTTPS TCP443 ::/0 すべての ICMP - IPv4すべて該当なし 0.0.0.0/0 すべての ICMP - IPv4すべて該当なし ::/0 よろしくお願いします。
yu_1985

2020/01/23 09:09

できれば本文のところにスクリーンショットを(見えたらまずいところは隠して)貼ってくれたほうがわかりやすいです。 ターゲットグループ自体の設定も見たいですね。 説明、ターゲット、ヘルスチェックのところあたりを。 何となくターゲットグループの設定がおかしいような気がしています。 この件とは関係ないですがELBのセキュリティグループで22番を許可する意味はないですね。 参考サイトにはリスナー設定についてほぼ言及されてないので混乱を生みそうな気はしますね…。
starsecond

2020/01/23 09:52

本文を編集して貼るかんじでいいですか? 明日画像を編集してまとめて貼ります! あと22番ポートは消しておきます。
starsecond

2020/01/24 02:14

画像を貼り付けました。 初心者なのでどこを隠していいのかよくわからないので変なとこまで隠してたらすいません。 ターゲットグループとロードバランサーは一つずつしか作成しておりません。 よろしくお願いします。
yu_1985

2020/01/24 03:26

長くなるので回答の方に追記しました。
starsecond

2020/01/24 05:13

>>ALBではHTTPのリスナーを設定していないので、HTTPでアクセスしたら表示されるというのはむしろおかしな挙動ですね。 すいません、現在はhttpでは表示出来ないようになっていました。 設定自体は問題ないということですか? ALB→EC2の間の通信はそのまま暗号化しないようにします。
yu_1985

2020/01/24 05:19

設定自体は問題ないと思います。 httpsで今アクセスするとどうなりますか?
starsecond

2020/01/24 05:28

画像を再度一つ貼り付けました。 画像の詳細設定から「ドメイン名 にアクセスする(安全ではありません)」をクリックすると一応ページは開けますが、URL左部分に「????保護されていない通信」と出てhttpsに赤二重線が付いています。
yu_1985

2020/01/24 07:12

証明書のドメインとアクセスしてるドメインは一致してますか? また、443のリスナーにちゃんと想定した証明書が設定できていますか? あとは一旦こちらを確認して該当するケースがないか確認してみてください。 https://aws.amazon.com/jp/premiumsupport/knowledge-center/acm-certificate-error-https/ 参考サイトは説明がざっくりしすぎているので、個々の手順は他のところを見たほうがいいかもしれません。 ACMでの証明書発行 https://www.ginzaitlab.com/posts/7330861/ 特に理由がなければ証明書はワイルドカードで発行すると楽です。 有料の証明書の場合ワイルドカードだと高くなったりしますが、無料なので。
starsecond

2020/01/24 08:30

出来ました!!! 参考URLを見てドメインをワイルドカードで指定してなかったので一旦証明書を消して、ドメイン+ワイルドカード追加でいとも簡単に・・・・ ありがとうございましたm(_ _)m
guest

0

ブラウザで保護されていない通信と表示されます。

「このサイトへの接続は完全には保護されていません」
だったら、mixed contents じゃないですかね?

使用しているリソースへの参照を全てhttpsにしてください。

投稿2020/01/23 08:41

編集2020/01/24 03:09
Y.H.

総合スコア7914

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

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

starsecond

2020/01/23 09:56

「完全に」とは出ていないです。 「このサイトへの接続は保護されていません」と赤い△で表示されています。 mixe contents じっくり読んでみます。
yodel

2020/01/24 02:22

mixed contents(HTTP通信で取得するコンテンツが混じっている)です。
Y.H.

2020/01/24 03:11

ご指摘ありがとうございます。 queryはmixだし文言はmixeだしダメダメだったのを修正しておきました。
starsecond

2020/01/24 05:22

https://feel-log.net/seo/ssl-notice-http-https/ を参考にしながらF12で確認しましたがコンソールの中にmixed contentsはありませんでした。 その他のPHPページではhttpがありましたので全て消しました。(ページ移動は相対パスで指定) そのあとキャッシュクリアをして再読み込みしましたが変化はありませんでした。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問