LoginSignup
0

More than 5 years have passed since last update.

[JAWS-UG CLI] ACM入門 #4 ACMによるSSL証明書の作成

Posted at

これはAWS Certificate Manager (ACM)入門ハンズオン資料の一部です。
最初から続けて行っている場合「0.準備」の各項は作業不要です。第1項へ進んでください

前提条件

ドメインを取得済みであること。
SES Incomingで admin@ドメイン名 宛の電子メイルが受信可能になっていること。

0. 準備

0.1. ドメイン名の変数への格納

変数へドメイン名を格納します。
ここでは example.tk とします。自分のドメイン名に読み替えてください。

コマンド
DOMAINNAME="example.tk" && echo ${DOMAINNAME}
結果(例)
      example.tk

0.2. 電子メイル受信用S3バケットの変数

S3バケット名を ドメイン名.sesincoming とします。
注:各自で違うバケット名を指定した場合はそれを指定してください。

コマンド
SES_S3_BUCKET=${DOMAINNAME}.sesincoming
echo ${SES_S3_BUCKET}
結果(例)
      example.tk.sesincoming

1. ACMによるSSL証明書の作成

SSL証明書をCloudFrontで使用する場合は us-east-1 リージョンに作成する必要があります。
ACMによるSSL証明書は作成したリージョンでのみ使用可能で、リージョンを跨ぐことはできませんから注意が必要です。
このため、以下の手順ではコマンドラインにリージョンを明示しています。
今回は example.tk と www.example.tk の両方でアクセスできるSSL証明書を作成します。

1.1. 証明書作成要求

コマンド
CERT_ARN=`aws acm request-certificate --domain-name ${DOMAINNAME} \
 --subject-alternative-names www.${DOMAINNAME} \
 --region us-east-1 --output text` && echo ${CERT_ARN}
結果(例)
      arn:aws:acm:us-east-1:777777777777:certificate/9eb6865a-63a3-48df-92c2-ae113c877b33

証明書のARNが取得されますが、まだ使用する事はできません。
ドメイン所有確認の電子メイルが自動送信されるので、これを確認します。

1.2. ドメイン所有確認

先ほど設定したS3バケットに電子メイルが届いているのでこれを取得します。

コマンド
aws s3 ls ${SES_S3_BUCKET}
結果(例)
      2016-10-12 17:10:36      10203 2kjfjklew90fjklfk4od0wpkgit9fk9jfdkdfi9z
      2016-10-12 17:10:34      10170 4krul2vjrqniql7p11470po8fedf3ifjniegsc01
      2016-10-12 16:55:30        645 AMAZON_SES_SETUP_NOTIFICATION

長い無機質な名前の物が届いた電子メイルです。
この名前をコピーペーストし MAIL_FILENAME 変数へ格納します。
(注:複数個存在する場合、「ファイルサイズの小さい方」を選択してください)
ファイルをローカルへコピーします。

コマンド
MAIL_FILENAME="4krul2vjrqniql7p11470po8fedf3ifjniegsc01"
aws s3 cp s3://${SES_S3_BUCKET}/${MAIL_FILENAME} ./
結果(例)
      download: s3://example.tk.sesincoming/4krul2vjrqniql7p11470po8fedf3ifjniegsc01 to ./4krul2vjrqniql7p11470po8fedf3ifjniegsc01

電子メイル本文中に認証用のURLがあるため、これを抽出します。

コマンド
grep https ${MAIL_FILENAME} | grep context
結果(例)
      https://certificates.amazon.com/approvals?code=8342b457-0f14-4234-b512-80488e3d2d12&context=0d7739c8-7045-4576-ac37-cf9829a3007d-75732d776573742d32

WebブラウザでこのURLを開き、 I Approve をクリックします。
Success! と表示されたら認証完了です。

1.3. 証明書の発行確認

証明書が発行されたか確認します。

コマンド
aws acm describe-certificate --certificate-arn ${CERT_ARN} \
 --region us-east-1 --query Certificate.Status
結果(例)
      "ISSUED"

ISSUED と表示されれば発行済みです。

各種サービスで変数 CERT_ARN へ格納されたarnを指定すればSSL証明書を使用することができます。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0