ACMでSSL証明書を楽々自動更新

お久しぶりです、ビジネスイノベーションセンターの『ab』です。(部署、変わりました!)
ご無沙汰している間に部署も変わり、そして証明書も変わりましたので今回はその後者の話をしたいと思います。

はじめに

弊社のとあるプロジェクトでは、商用にも利用可能な無料の証明書「Let’s Encrypt」を採用していました。
導入も簡単で、更新の自動化も可能だったことから、以前ブログでも紹介したことがありました。
※その時の記事はこちら「Let’s Encrypt で SSL 証明書を楽々自動更新」を参照ください
と、「Let’s Encrypt」証明書をお勧めしていたわけなのですが、実はほどなくして別のサービスに乗り換えていたのでした。

現在利用している証明書

現在は AWS Certificate Manager(以降、ACM)を利用してセキュアな通信を実現しています。
ACM とは、AWS のサービスのひとつで、SSL/TLS 証明書のプロビジョニング、管理を行うサービスです。
ACM ももちろん無料で自動更新可能です。
そして導入もとても簡単でコマンド不要、画面操作だけで証明書の発行が出来てしまいます。
ただし、その ACM を利用するためには準備がいくつか必要です。

ACM 利用の前提条件

  1. ドメイン取得
    (ACM はドメイン認証となるので、あらかじめドメインを取得しておく必要があります)
  2. 対象ドメインでメール受信できる環境
    (cresco.co.jp がドメインの場合、admincresco.co.jp などでメールが受信可能な環境)
  3. ELBまたはCloudFrontのどちらかの利用

※これらは全て AWS のサービスで利用可能です

環境構成図

それぞれの導入/構築手順は色々なサイトに分かりやすくまとめてあるので省略しますが、
弊社のとあるプロジェクトの環境はこんな感じになりました。ご参考までに。

最後に

「Let’s Encrypt」の利用についてですが、外部公開しているようなウェブサイトは問題ありませんが、弊社のとあるプロジェクトのような社内限定サイトの場合は、発行元である「Let’s Encrypt」からのアクセスを許可する必要があります。
しかし現在、「Let’s Encrypt」はIP非公開…。(IPは変更になる可能性があるから公開しないそうです)
ACM はそのような場合でも問題なく利用でき、またすでに EC2 など他の AWS サービスを利用しているのであれば管理も一元化できるメリットもあります。
ただし、ACM 自体は無料ですが ELB などは別途費用がかかりますのでその点はご了承を。

  • このエントリーをはてなブックマークに追加