*

ACM(Amazon certificate Manager) をELBにインストールしてKusanagiで作ったEC2インスタンスに紐づける

公開日: : Amazon EC2 ,


Amazonが提供している無料のSSL certificate、ACMを使ってみます。

日本リージョンでは2016年の5月からサービス開始ということで、比較的新しいサービスになります。

やりたいこと

AWSに作られたウェブサイトをhttps化する

私の環境はこちら

・Kusanagiイメージから作成したEC2インスタンス
・ELBは使っていない
・日本リージョン

知っておくべきこと

・現時点(2016年10月25日)では、ACMで発行された証明書はELB(Elastic Load Balancers)もしくはAmazon Cloud Frontにのみ適用できます。EC2インスタンスに直接読み込ませるようなことはできません

・ACMで発行した証明書自体は無料ですが、ELB、Amazon Cloud Frontの利用料は当然かかります。なので値段の上では今までELBを使っていなかった私のような人は、他の業者から証明書を買うのと変わらないかも。。ですが、他にも便利な点がたくさんあるので、AWSでサイトを運用している人はぜひ活用してみましょう。

手順

今回はELBを使ってSSL化していきます。ということでやることは大きく二つ。
1.ACMで証明書を作成する
2.ELBの設定
3.ELBのDomain nameをEC2インスタンスに紐づける

2.ELBの設定

ゴールはELB経由でhttp通信できるようになることです。(httpsではなくhttpです)

1. AWSにログインし、EC2のコントロールパネルに進みます。次に左サイドバーのLoad Balancersをクリックします
loadbalancer1

2.Create Load Balancer ボタンを押下します。Classic Load balancerを選びContinueを押します。
elb2

3.Load balancer nameにお好きな名前をいれ、表示された画面で下記のようにHTTPS通信を追加します。
elb3

4.次に表示された画面でCreate a new security groupをクリックし、TCP 80とTCP 443を許可します。

5.次に表示された画面でACMで作成した証明書を読み込みます。
elb4

6.次にHealthCheckの設定をします。
  デフォルトのままでOKですが、Document Rootのindex.htmlをたたいて、Health checkをするので、index.htmlが
  ないなら作って配置してください。

7.次にこのELBにぶら下げたいEC2インスタンスを選択します。

8.最後にタグをつけます。オプションなので空白でもOKです。Review and Createを押すと作成完了です。

3.ELBのDomain NameをEC2インスタンスに紐づける

ELBには固定IPが振られず、Domain nameのみ発行されます。

↓ELBのDomain nameはこんな名前のやつです。
ACM-xxxxxxx-ELB-xxxxxxx.ap-northeast-1.elb.amazonaws.com

サイトのドメイン名とこのELBを紐づけるにはドメインレジストラのAレコードに書いてあげる必要がありますが、通常のドメインレジストラではAレコードのターゲットにいれられるのはIPアドレスのみで、文字を入力できません。

そこで登場するのがRoute 53というAmazonのサービスです。平たくいうとAmazonが提供するName Serverです。

このRoute53ではAレコードにELBのDomain nameを書くことが出来ます。

1.AWSサービス一覧からRoute53をクリックします。
rt53

2.左サイドバーからHOsted zonesをクリックし、表示された画面でCreate Hosted Zoneをクリックします。Domain Nameの入力を求められるので、入力し、TypeをPublic Hosted Zoneにします。

3.するとレコードが表示されます。デフォルトではNXとSOAレコードが入っています。ここでCreate Record Setを押下します。下記のような画面が右に表示されるので、AliasをYesにします。するとAlias TargetにACMで登録した証明書がでてくるので選択します。 これでサイトのドメイン名とELBがひもづきました。
rt53_2

4.ドメインレジストラ(例お名前ドットコム)にログインし、Name Serverを変更します。これによりお持ちのドメインにアクセスが来た時にAmazon Route53のName Serverを見るようになります。入れる値は先ほどデフォルトで入っていたNXレコードの値です。

例:
ns-175.awsdns-2.com.
ns-1521.awsdns-6.org.
ns-670.awsdns-13.net.
ns-1779.awsdns-31.co.uk.

4.この状態でELBのDomain nameをURLバーに入れてアクセスすると、サイトのドメインにリダイレクトされれば設定成功です。

Ads by Google

Ads by Google

関連記事

no image

Amazon EC2 で登録しているクレジットカードが期限切れになると、、、

Amazon EC2 で登録しているクレジットカードが期限切れになると、、、 なんとカードの登

記事を読む

Amazon EC2で管理者コンソールにログインできるユーザーを増やす方法

企業でAmazon EC2を利用されている方、ログインアカウントを複数欲しいというケースはない

記事を読む

[AWS] Amazon EC2 でPasswordログインできるようにする方法

Amazon EC2でインスタンスを作るとデフォルトでは秘密鍵によるSSHが提供されます。 が

記事を読む

めんどくさがり屋のあなたへ。AmazonEC2を使って9分でできるWordPressセットアップ

はてなやFC2などの無料ブログから、独自の環境へブログの移行を考えている方はたくさんいらっしゃる

記事を読む

Amazon EC2で定期的にバックアップを取る方法

こちらのサイトを参考に作成しました。 一部補足が必要と思われる箇所があったので実際に行った手順

記事を読む

Linux上のMySQLをファイルベースで移動する方法

Amazon EC2などのクラウドサーバが暴走し、アクセス不可になった場合、こちらの手順でデ

記事を読む

Amazon EC2でメールが飛ばない時にチェックすること

1.fromの値が適切になっているか 自動で割り当てられたホスト名がFromに設定されていると

記事を読む

AWSに立てたnginxサーバでアクセス元IPが変わってしまう場合の解決策

現象 Amazon EC2でnginxでWebサーバを立てたとき、アクセスログをみると、ア

記事を読む

no image

やばい、ディスク使用率99%!! 17分でAmazon EC2 でハードディスク(EBS)の容量を上げる方法

Amazon EC2 を使ってWebサイトを運用している方、気がついたらディスクの容量がパンパン!な

記事を読む

Amazon EC2 インスタンスがSSHログイン不可、管理コンソールからリブートもできない時にやること

Amazon EC2を利用していると突然SSHログインができなくなり、かつ管理コンソールから

記事を読む

Ads by Google

Ads by Google

Ads by Google

Ads by Google
新着記事をRSSで受けとる
PAGE TOP ↑