zuntan02のはてなブログ

備忘録的なものです。時々職場の技術者ブログにも転記してますが、メインはこちらで。

AWS Certificate Manager使ってみた

AWS Certificate Manager、略称ACMならSSLが無料(※)で利用できると聞いたのでやってみた。
よくある質問 - AWS Certificate Manager(簡単に SSL/TLS 証明書を作成、管理、配置) | AWS
※実際はELBの費用を考える必要がある。下記参照されたい。

【2018年追記】

★2017年11月よりメール認証のほかにDNSでの認証も可能となった。
 こっちのほうが楽ちんなので今後はDNS認証で行くことになると思われる。
DNS を使って AWS Certificate Manager の検証を簡単に | Amazon Web Services ブログ
以下はメール認証しかなかった時代の遺物です。。

【メリット】

  • 証明書は一年ごとの自動更新となり、更新は1年ごとのメール承認のみである模様。
  • 証明書自体のの利用は無料。

【デメリット】

  • ACMドメイン認証(DV)のみとなり、組織認証(OV)、実在認証(EV)証明書の発行はされません。
  • 証明書の設置はロードバランサ上となるため、別途ロードバランサの費用が発生する。

→EC2インスタンス1個で賄っている様なサイトの場合、ELBを追加すると最低月額$18くらいの増加を覚悟しないといけない。SSL化”だけ”が目的ならこれまで通りCoreSSLとかで買ってwebサーバで解決、の方が安いかも。
ACMの証明書は「少なくとも 1 つのドメイン」が登録できるので、「*.hogehoge.com」と「*.fugafuga.jp」の両証明書を1台のELBにオフロードさせることができる。複数ドメインを総SSL化するとか言いうときはコストメリットあり。

【感想】

・最初の承認メールさえ受信できればあとはスゲー簡単。
・Route53使ってないとダメかなと思ってたけど外部DNSでも大丈夫だった。
・もう「開発環境のオレオレ証明書」とも、(なんと)年次更新作業ともオサラバな感じ。素晴らしい。

証明書の作成

[AWSマネコン]-[Certificate Manager]-[今すぐ始める]
 ドメインhoge.fuga.jp
 追加の名前 *.hoge.fuga.jp(ワイルドカード証明書も使える)
[確認とリクエスト]-[続行]、で、認証メールが届く

※メールのあて先はFAQにあるように、
WHOISルックアップしてドメインの連絡先情報から登録車・管理者・技術担当者(これはwhois公開代行してるとNG)
・リクエストしたドメイン
 admin@
 administrator@
 hostmaster@
 webmaster@
 postmaster@
 にも送られる。この辺から受信して
”To approve this request, go to Amazon Certificate Approvals at”の次に来るURLでサイトを開き、
[I Approve]で承認したら作成は完了

証明書のELBへの配置

AWS Certificate Manager 証明書はElastic Load Balancing または Amazon CloudFrontで使用できます

ELB新規作成の時

f:id:zuntan02:20160628180332p:plain

ELBで既にSSL証明書を設置していた場合の更新画面

f:id:zuntan02:20160628180339p:plain

証明書の選択、配置は特に迷うことはないはずです。
 
f:id:zuntan02:20160628180535p:plain
証明者発行者がAmazonなのが新鮮。