harumaki.net

インフラ屋の覚書や、ラーメン食べある記とか。

AWS cloud Load Balancing security SSL

[AWS]Certificate Manager 証明書リクエストメールの宛先を変更する場合

投稿日:2016年11月20日

参考:お世話になっております!

AWS Certificate Manager UserGuide:
Validate Domain Ownership
Using the ACM API
Configure Email for Your Domain
RequestCertificate
request-certificate

▼オーバービュー

ACMにてtest.hoge.example.comといったサブドメインのついた証明書を作成しようとすると
承認メールがそのままのドメインのアドレス宛に配信されてしまった。

例:

  • 一方で、hostmasterやwebmasterなどのアドレスはオリジナルのドメインのみで、サブドメインでのメール受信環境は無い(test.hoge.example.comのMTAは無い)
  • またサブドメインを含め、Route53でなく外部のDNSサーバーを利用しているため、Route53+SESの合わせ技も使えない。
  •  

    受信に利用できる/したいアドレス

    なぜこのような現象が起こるのか?と思って該当ドメインを調べてみたら、サブドメインに対応した、複数のMXレコードが存在している場合にFQDNに指定したドメイン名をアドレスパートに用いて承認メールを送る、という仕組みがある様子。

    example.com IN MX mx.example.com
    foo.example.com IN MX mx.foo.example.com

    この場合だと hoge.example.com MXレコードが無い!どちらに送ればいいのか?

    上記のアドレスに承認メールを送るよう変更リクエストを投げたい場合には、AWS APIのrequest-certificateを利用するとメールアドレスのドメインパートをオリジナルのドメインに変更してもらえる様子。
    2016/08/31現在、AWSマネージメントコンソールでは提供されておらず、CLIからの提供のみとのこと
    (そのうちマネージメントコンソールでも利用できるようになったらステキ!)。

    ▼コマンドラインでの変更申請

    AWS マネージメントコンソールを使わず、APIツールを利用しての利用となる。
    acmの利用は、aws-cliのバージョン1.10以降で対応しているとのこと。
    また、コマンドラインからおなじFQDNで再申請する場合はすでに申請し、”検証保留中”となっているリクエストと重複してしまうので、いったん削除してから実施するのが適切。

    コマンドオプション

  • –domain-name 証明書に使用するドメイン名(FQDN)
  • –subject-alternative-names “domain-name”に追加で指定する、ドメイン名の別名
    AWS manegement consoleでの”この証明書に別の名前を追加”に対応。
  • –domain-validation-options ドメイン、および承認に使用するオプション
    FQDNとは別に、承認メールの宛先に使用するドメインパートを指定したい場合は
    こちらも指定してリクエストを発行する。
  • DomainName= FQDNに該当する部分
  • ValidationDomain= 承認メールの宛先に使用するドメイン名
  • コマンドライン

    # aws acm request-certificate --region=ap-northeast-1 --domain-name test.hoge.example.com --domain-validation-options DomainName=test.hoge.example.com,ValidationDomain=example.com
    

    実行後、コンソールにARNと識別子が出力されればリクエストは成功。

    {
    "CertificateArn": "arn:aws:acm:ap-northeast-1:05**********:certificate/19c8****-62**-4d**-8c**-18**********"
    }
    

    ※aws-cliのバージョンによっては、以下のような表示で出力される場合もある。

    ----------------------------------------------------------------------------------------------------------------
    | RequestCertificate |
    +----------------+---------------------------------------------------------------------------------------------+
    | CertificateArn| arn:aws:acm:ap-northeast-1:05**********:certificate/19c8****-62**-4d**-8c**-18********** |
    +----------------+---------------------------------------------------------------------------------------------+
    

    ▼変更後の確認

    AWS マネージメントコンソールのAWSにて、以下の表示に変更となる。

    状況 検証保留中
    状況の詳細 リクエストの検証 E メールを 2016-09-23T06:06:47UTC に送信しましたが、まだ以下のドメインの
    証明書の発行承認を受信していません:

    [email protected]
    [email protected]
    [email protected]
    [email protected]
    [email protected]

    指定したメールアドレス宛に承認確認メールが配信されていれば成功。
    承認したらコンソールにて”状況”を確認しましょう~

    -AWS, cloud, Load Balancing, security, SSL
    -,

    執筆者:


    comment

    メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

    CAPTCHA


    関連記事

    Linux環境でのgoogle driveクライアントをいろいろと下調べ

    これまでずっとdropbox.pyを利用してサーバーの設定ファイル、DBバックアップをDropboxにアップしたりといろいろやってきたが、無料プランでの容量の限界が近づいてきたので、サーバーのバックア …

    [AWS] EC2 HVMタイプを使う時のファイルシステム周りの作業1(容量拡張、growpart利用)

    hvmタイプのAMIを使用する際に初期設定として、ファイルシステムの容量拡張が必要になる。 インスタンス作成時にEBSを標準サイズから拡張してセットしても マウントされたストレージサイズが上がるだけで …

    [nginx] SSLクライアント認証をしつつ、指定したIPは認証を許可する設定

    AWS EC2でセットアップし、自社内で利用しているredashを、社内の担当者と外注先とで共用しつつ、セキュリティのためSSLクライアント認証を導入したいとの依頼を受け対応。 ただし従業員のほうが利 …

    [AWS]EC2にてT2インスタンスがリリースされたので試してみた(t2.micro)

    AWS EC2の無料利用枠を利用してサンドボックスを作ろうと考えていたら、昨日07/02にAWSからT2インスタンスなるものが発表されていたので、ちょっと遊んでみました。 用途は自宅サーバーです。 ア …

    [AWS EC2] RHEL6のインスタンスでttyS0 のエラーが大量発生

    AWS EC2にてRedHat Enterprise Linux 6.5(以下RHEL6.5)のインスタンスを立ち上げ、MySQLサーバーをセットアップしてる最中 /var/log/messagesを …