AWS ACMで無料SSLはどこまで使える?制限と落とし穴、DV・OV・EVの使い分けまで解説

AWSでSSL証明書を扱うなら、まず候補に上がるのが「AWS Certificate Manager(ACM)」です。無料でドメイン認証(DV)の証明書を発行でき、更新も自動化されるため、常時SSL化はかなり手軽に実現できます。

ただし実務では、「CloudFrontはどのリージョンの証明書を使うのか」「DNS検証が通らない」「EC2に直接設定できないのはなぜか」といったポイントでつまずきやすいのも事実です。また、DVで本当に十分なのかOVやEVを選ぶべきケースの判断も重要です。

本記事では、ACMで“できること/できないこと”を起点に、運用で詰まりやすい具体ポイントと証明書の使い分けまで整理して解説します。

SSL証明書とは

SSL証明書を使うことで、ウェブサイトのセキュリティを強化することが可能です。「https:// 」 から始まるURLの場合は、SSL証明書を利用した通信となっています。

SSL証明書では、「暗号化」と「運営者の認証」という二つのセキュリティ強化が可能です。

暗号化

利用者のブラウザとWEBサーバー間の通信を暗号化を行います。暗号化をすることで、利用者の個人情報などの漏洩を防ぐことが可能です。

たとえば、ECサイトなどでは、クレジットカード情報を入力することがあります。SSL証明書を利用しないhttp通信で情報を送信した場合、悪意のある第三者から通信内容を盗聴されたり、改ざんされる恐れがあります。SSL証明書を利用しているhttps通信の場合は、通信内容が暗号化されており第三者が中身を見ることができません。そのため、情報が外部に漏れたり、改ざんされる心配がなくなります。

運営者の認証

ウェブサイトの運営者の情報を第三者によって証明することが可能です。

普段気にすることはありませんが、ブラウザからSSL証明書の詳細情報を見ることが可能です。閲覧は、ブラウザのアドレスバーの左にある、鍵マークをクリックすることで行います。

yahoo.co.jpであればヤフーが、google.co.jpであればグーグルがサイト運営しています。証明書の詳細を見ることで、正しい運営者が運営しているかの確認が可能です。

SSL証明書の種類

SSL証明書は大きく分けて3種類あります。

 ・ドメイン認証(DV)
 ・企業認証(OV)
 ・EV認証(EV)

どの種類の証明書でも通信の暗号化は行われます。

違いは運営者の認証範囲です。

ドメイン認証(DV)

最も手軽なものがドメイン認証です。ドメイン認証では、通信の暗号化と、ドメイン名についての認証がされます。

ドメイン名の認証があることで、アクセスしようとしているドメインが、正しいサーバーへアクセスしていることが保証されます。悪意があるインフラ管理者がいる環境では、https://yahoo.co.jp にアクセスしているにもかかわらず、別のサーバーにアクセスさせることが可能です。別のサーバーで似たサイトを用意しておけば、気づかれずに個人情報を取得することができてしまいます。ドメイン認証があることで、ドメイン名と接続先サーバーの保証がされるため、安心してサイトの利用が可能になります。

世間的には常時SSLが当たり前となっています。最低でもドメイン認証のSSL証明書の利用を検討すべきです。

企業認証(OV)

企業認証は、ドメイン認証と同様に通信の暗号化と、ドメイン名についての認証が行われます。それに加えて、運営企業が実在することを証明します。

クレジットカードなどの重要な個人情報は、信頼できるサイト以外では入力したくないものです。

企業認証を利用することで、個人情報を渡す先の企業情報を明示することが可能です。
ECサイトやサービスサイトで、クレジットカードなどの重要な個人情報を扱う場合は、企業認証以上の証明書の利用を検討しましょう。

EV認証(EV)

EV認証では、ドメイン認証よりも強固な認証作業を行います。ドメイン認証は企業の実在有無まで確認を行います。EV認証になると企業が実在しており、運営がされている企業かどうかや、承認者や署名者の確認が行われます。

金融系のサイトなど、特にセキュリティが重要なサイトの場合に利用されています。

AWSではACMを利用

AWSでは、無料でSSL証明書の利用が可能です。

ACM(AWS Certificate Manager)を使うことで、証明書の発行や自動更新が可能です。また、ELBやCloudFrontなど、AWSの各サービスへのデプロイを行うことができます。

これらはすべて、セルフサービスで提供されています。

従来であれば、CSRを発行した上で、認証局からSSL証明書を購入していました。ACMを使うことで、CSR発行の手間をなくし、費用ゼロでSSL証明書の発行が可能になります。

ACM利用上の注意

手間が少なく無料でSSL証明書の発行ができるACMですが、注意点もあります。

・EC2インスタンスへの設定はできない
・ドメイン認証のみ発行が可能
・ドメイン認証以外を利用する場合は自信で購入が必要

EC2インスタンスへの設定はできない

ACMで作成したSSL証明書は、AWSでマネージドされたサービスへのみ適用が可能です。そのため、EC2インスタンス上で動かすWEBサーバーへの適用はできません。

EC2インスタンス上でWEBサーバーを立てるためには、apacheやnginxなど設定が必要です。それらのWEBサーバーは、ユーザー管理となります。そのため、ACMで発行したSSL証明書の利用ができません。

EC2インスタンス上で提供するWEBサービスへSSL証明書を適用させるためには、前段にALBやCloudFrontを配置します。ALBやCloudFrontへは、ACMで発行したSSL証明書の適用が可能になるので、そちらへ適用させます。

ACMで発行したSSL証明書をAmazon EC2へ適用できるようになりました!

2022年9月24日にAWSより発表がありました。
AWS Certificate Manager (ACM) for Nitro Enclaves が Apache HTTP ウェブサーバーのサポートを開始の発表がありました。

設定方法等については、技術ブログにまとめているのご参考にしてください。
ACMのSSL証明書(Amazonの無料証明書)をEC2(Apache)で利用してみた

ドメイン認証のみ発行が可能

ACMでは「ドメイン認証」のみが発行可能です。「企業認証」や「EV認証」を発行することはできません。とはいえ、常時SSL化のために利用する用途であれば十分すぎるほどの利用価値があります。

企業認証やEV認証を利用したい場合

ドメイン認証ではなく、企業認証やEV認証を利用したい場合は少し複雑になります。

EC2インスタンスのみで利用する場合は、従来通りの方法で問題ありません。自分でSSL証明書を取得して、WEBサーバーへSSL証明書の設定を行います。

ALBやCloudFrontなど、AWSのサービスで利用する場合は少し複雑です。AWSのサービスでSSL証明書を使うためには、ACMから適用する必要があります。そのため、自身で取得したSSL証明書を、ACMへアップロードする必要があります。

ディーネットのSSL証明書サービス

ディーネットが提供するAWS運用代行サービスでは、SSL証明書の取得、更新、設定についてすべてお任せいただけます。

AWSのACMでは、ドメイン認証サービスしか取得できません。ディーネットへお任せいただくと、ACMでの無料SSL証明書の発行はもちろん、有償の企業認証、EV認証付きのSSL証明書の発行が可能です。

ACMやEC2インスタンスへの設置や、更新管理などすべて対応しますので、お客様はAWS固有のサービス仕様を意識する必要はありません。

A. はい。ACMで発行できるドメイン認証(DV)証明書は無料です。更新も自動で行われるため、期限切れ対応の運用コストもほぼ不要になります。

Q. ACMで発行できる証明書の種類は?

A. 新規発行できるのはDV(ドメイン認証)のみです。OVやEVは外部で取得し、ACMへインポートして利用します。

Q. ACMの証明書はどこで使えますか?

A. 主にALB(ELB)やCloudFrontなどのAWSマネージドサービスで利用します。基本はこれらを経由してHTTPS化する設計が推奨されます。

Q. CloudFrontで証明書が使えないのはなぜですか?

A. CloudFrontで使うACM証明書は「us-east-1(バージニア北部)」リージョンに存在している必要があります。別リージョンで発行した証明書は選択できないため注意が必要です。

Q. DNS検証が通らない原因は何ですか?

A. よくあるのは「CNAMEレコードの設定ミス」「反映待ち」「ホスト名の入力違い」です。特に外部DNSを使っている場合、反映に時間がかかることがあります。

Q. EC2インスタンスに直接SSL証明書は設定できますか?

A. 原則としてはALBやCloudFront経由での利用が前提です。例外的に「ACM for Nitro Enclaves」を使えばApacheへの適用は可能ですが、構成が複雑になるため一般的には推奨されません。

Q. DV証明書で十分なのはどんなケースですか?

A. ブログ、コーポレートサイト、LP、初期フェーズのSaaSなど「通信の暗号化が主目的」であればDVで問題ありません。多くのWebサービスはこの範囲に収まります。

Q. OVやEV証明書はどんなときに必要ですか?

A. 企業の実在性を明示したい場合や、金融・ECなどでブランド信頼が重要な場合に検討されます。特にフィッシング対策や対外的な信用を重視する場合はOV/EVが選ばれます。

Q. ACMだけで全てのSSL要件を満たせますか?

A. 常時SSL化や一般的なWeb用途には十分ですが、OV/EVが必要な場合や特殊な構成では外部証明書の取得・インポートが必要になります。

Q. 証明書が自動更新されないケースはありますか?

A. あります。代表的なのは「DNS検証レコードを削除してしまった場合」や「対象ドメインの解決ができない状態」です。自動更新に任せきりでも、DNSの維持は必須です。

最後までご覧いただきありがとうございます

この記事では、SSL証明書とAWSで扱う場合の注意点についてご説明しました。

ACMを使うことで、無料のドメイン認証のSSL証明書が利用可能です。常時SSL用途で使う場合は、大きなメリットとなります。半面、企業認証などの証明書を利用する場合は、複雑な手順が必要になってきます。

必要に応じて使い分けていきましょう。