Amazon EC2

ACM(Amazon certificate Manager) をELBにインストールしてKusanagiで作った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

-Amazon EC2
-,

© 2024 みる米技術部 Powered by AFFINGER5