【CloudFormation】AWSマルチAZ3層アーキテクチャの構築_ACM

皆様、お世話になっております。鈴木と申します。
今回はAWS CloudFormationを使用してACMを作成して、Route53のドメインの暗号化を実施したいと思います。

1.目次

目次はこちら

2.要件

3.AWS Certificate Manager (ACM)について

AWS Certificate Manager(ACM)は、AWSのSSL/TLS証明書の取得と管理を簡素化するサービスです。主な機能と利点は以下の通りです。

  1. 証明書の取得と管理:

    • 無料証明書: AWSが提供する無料のSSL/TLS証明書を簡単に取得できます。
    • カスタム証明書のインポート: 既存の証明書をACMにインポートし、一元管理できます。
  2. 証明書の自動更新:

    • 自動更新: 証明書の有効期限が近づくと自動的に更新処理を行い、手動での更新作業を省略します。
  3. セキュアな通信:

    • 暗号化: 証明書を使用して、ウェブサイトやアプリケーションとの通信を暗号化し、データの安全性を確保します。
  4. AWSサービスとの統合:

    • シームレスな統合: Amazon CloudFront、Elastic Load Balancing(ELB)、API Gatewayなど、多くのAWSサービスとスムーズに統合できます。
  5. 簡素な管理:

    • 直感的な管理: AWS Management Console、AWS CLI、またはAWS APIを使用して、証明書の管理を簡単に行えます。

利点として、証明書の取得、管理、更新が簡単に行え、セキュリティの強化とコスト削減が実現できます。AWS Certificate Manager(ACM)は、SSL/TLS証明書の管理を効率化し、AWS環境でのセキュリティを強化するための強力なツールです。

4.構成図

Route53で作成したドメインに証明書を付与してHTTPSの通信を実現します。
file

5.ソースコード全体

YAML形式にて記述しております。
またRoute53・ALB・ACMを同じファイルで記述しているため下記はACMのみを抜粋して居ります。

Resources:
  # ACM 証明書作成
  SubdomainCertificate:
    Type: 'AWS::CertificateManager::Certificate'
    Properties:
      DomainName: !Sub "${SubdomainName}"
      ValidationMethod: 'DNS'
      DomainValidationOptions:
        - DomainName: !Sub "${SubdomainName}"
          ValidationDomain: !Sub "test.cloud5.jp"
      Tags:
        - Key: 'Name'
          Value: 'naoki-acm'

6.ソースコード詳細

使用するオプション 設定値 説明
Type AWS::CertificateManager::Certificate デフォルトの定義
DomainName !Sub "${SubdomainName}" サブドメインを指定
ValidationMethod DNS 検証方法をDNSで指定
DomainValidationOptions
DomainName
!Sub "${SubdomainName}" 検証サブドメインを指定
DomainValidationOptions
ValidationDomain
!Sub "ホストドメイン名" サブドメインのホストゾーンであるドメインを指定
Tags Key: ‘Name’
Value: ‘naoki-acm’
タグのキーと値を設定

7.検証

上記で作成したら認証方法がDNSなのでACMコンソール画面へ行きましょう。
file
ここで赤枠を押下してDNSレコードを作成することで認証が完了し、CNAMEのレコードも作成されます。
これでRoute53で作成したドメインに証明書が付与され、暗号化の通信を実現できます。
次回このドメインをALBに紐づけ、HTTPSで通信できるかをテストしていきます。

【CloudFormation】AWSマルチAZ3層アーキテクチャの構築_ALB

8.感想

Route53→ACMがここまでで構築できましたので、次回実際にALBに紐づけて暗号化通信が実施できるかを確認していきます。

Last modified: 2024-07-31

Author