オンプレの証明書運用の実態

オンプレ環境でのSSL証明書管理は、多くの現場で以下のような「年次イベント」になっている。

  1. 認証局(DigiCert・GlobalSign等)から証明書を購入(有料)
  2. CSR(証明書署名要求)を手動で生成
  3. 発行された証明書をLB・Apache等に手動で配置
  4. 有効期限をカレンダーに登録して翌年の作業を予約
  5. 有効期限切れ直前に冷や汗をかきながら更新作業

証明書の配布先が複数台(LB × 2台、Apache × 4台など)になると、配置漏れや設定ミスによるサービス断のリスクも高まる。

ACMで何が変わるか

AWS Certificate Manager(ACM)は、証明書の発行・更新・ALB/CloudFrontへの適用をすべて自動で行うマネージドサービスだ。

発行コスト
認証局からの購入:数万〜数十万円/年
ACM:無料(AWS Certificate Manager パブリック証明書)
更新作業
オンプレ:手動・毎年
ACM:自動更新(60日前に自動リクエスト・適用)
証明書配布
オンプレ:各サーバーに手動配置
ACM:ALB / CloudFrontに自動適用(手動配置不要)
ワイルドカード
オンプレ:高額(数万円〜)
ACM:無料で発行可能(*.example.com形式)

⚠️ ACMの制約

ACM証明書はAWS内のマネージドサービス(ALB・CloudFront・API Gateway等)でのみ使用できる。EC2インスタンスにSSHで入って直接インストールする用途には使えない(その場合は別途証明書を取得・配置する必要がある)。

SSL終端パターンの選択

AWSではSSL終端をどこで行うかを設計として選択できる。

パターン構成採用ケース
CloudFrontのみ CloudFront終端 → ALB(HTTP) 静的サイト・ALBが不要なシンプル構成
ALBのみ ALB終端 → コンテナ(HTTP) CloudFrontが不要な社内向けAPI
両方終端(推奨) CloudFront終端 → ALB終端(再暗号化) 大規模・セキュリティ要件が厳しいケース
End-to-End CloudFront → ALB → コンテナまで暗号化 PCI DSS等の完全暗号化要件

CloudFront + ALB の2段終端設計

大規模システムで最も推奨されるパターンが「2段終端」だ。CloudFrontとALBがそれぞれ独立したACM証明書を持つ。

2段終端の構成
クライアント
    │ HTTPS (TLS 1.2/1.3)
    ▼
CloudFront
    ・ACM証明書 ① (us-east-1 で発行 ※必須)
    ・TLSポリシー:TLSv1.2_2021 等
    ・DDoS対策(AWS Shield Standard)
    ・WAF統合(IP制限・レートルール)
    │
    │ HTTPS(再暗号化)← VPC外からの通信を守る
    ▼
ALB
    ・ACM証明書 ② (ALBと同じリージョンで発行)
    ・TLSポリシー:ELBSecurityPolicy-TLS13-1-2-2021-06 等
    ・ターゲットグループへのルーティング
    │
    │ HTTP(VPC内部・Security Groupで保護)
    ▼
ECS / EKS コンテナ

💡 「再暗号化」が必要な理由

CloudFrontからALBへの通信がHTTPだと、VPC内部とはいえ同じリージョンの別サービスを経由する可能性がある。再暗号化(HTTPS)にすることで、CloudFront → ALB 間の盗聴リスクをゼロにできる。セキュリティ要件が厳しい業界(金融・官公庁)では再暗号化が事実上の標準。

セキュリティポリシーの選び方

ALBのセキュリティポリシーでは、許可するTLSバージョンと暗号スイートを選択できる。

ポリシー名TLSバージョン推奨用途
ELBSecurityPolicy-TLS13-1-2-2021-06TLS 1.2 / 1.3新規システム・標準推奨
ELBSecurityPolicy-2016-08TLS 1.0〜1.3古いクライアント対応が必要な場合
ELBSecurityPolicy-FS-1-2-2019-08TLS 1.2(Forward Secrecy必須)高セキュリティ要件

対比表

項目オンプレAWS
証明書取得認証局から購入(有料)ACM(無料)
証明書更新手動(年1回)自動(60日前に自動更新)
証明書配布LB・Apacheに手動配置ALB / CloudFrontに自動適用
SSL終端箇所LB または ApacheCloudFront → ALB(2段)
暗号化ポリシーhttpd.conf / ssl.conf で管理ALBセキュリティポリシーで選択
ワイルドカード証明書高額(数万円〜)無料発行可能
有効期限管理手動(カレンダー管理)不要(自動)

ハマりポイント

⚠️ CloudFront用証明書は us-east-1 で発行する必要がある

CloudFrontに設定するACM証明書は、必ず us-east-1(バージニア北部)リージョンで発行しなければならない。東京リージョン(ap-northeast-1)で発行した証明書はCloudFrontに設定できない。ALB用は各リージョンで発行でよい。

⚠️ DNS検証 vs メール検証

ACMの証明書発行時、ドメイン所有権の確認方法にDNS検証とメール検証がある。DNS検証(Route 53にCNAMEレコードを追加)を選ぶと自動更新が確実に機能する。メール検証は更新時に再度承認操作が必要になるため、DNS検証を推奨。

次の記事では…

PART 02 では Apache の機能を AWS サービスで分解する方法を解説する。mod_rewrite・mod_deflate・IP制限・静的コンテンツ配信がどのAWSサービスに対応するかを整理する。