ACMで証明書をインポートする

7月 16, 2019ACM,AWS,AWS-Security

前提条件

  • 今回は、ACM(AWS Certificate Manager)を使った証明書のインポートです。ACMで証明書を発行するのではなく、外部認証局から発行された証明書をインポートします。
  • この後、API Gateway のカスタムドメイン化に使用するため、リージョンは東京ではなく、バージニア北部を選択しています。
  • 外部認証局に証明書を発行依頼する際に必要となるCSRは、下記記事を参照ください。

 

証明書のインポート手順

  • 証明書をインポートしたいリージョンであることを確認します。API Gateway のカスタムドメイン化に使用するため、バージニア北部が選択されています。
  • 次に今は未だドメイン名にはACMで発行した証明書を使用していますので、これをインポートした証明書に入れ替えたいと思います(実際には入替ではなく追加となりますが…)。

 

  • 「証明書本文」に外部認証局から発行された証明書を貼り付けます。
  • 「証明書のプライベートキー」にCSRを作成する時に生成した秘密鍵を貼り付けます。
  • 「証明書チェーン」に中間証明書を貼り付けます。

 

  • 内容に問題がなければ、インポートを押します。

 

  • もし証明書に不足がある、間違っているなどあれば、エラーが表示されます。下記は証明書チェーンに、中間証明書がない場合に表示されたエラーです。証明書のインポートに関する調査は、下記のガイドを参照ください。
    • 「com.amazonaws.pki.acm.exceptions.external.ValidationException: Provided certificate is not a valid self signed. Please provide either a valid self-signed certificate or certificate chain.」
    • 証明書が CA によって署名されている場合は、認証機関のルートへのパスを提供する中間証明書チェーンを含める必要があります。

 

  • 正しく証明書が追加されたならば、ステータスがインポート済みとなります。

   

 

ELBに使用する証明書を更新する

  • ELB に使用する証明書が有効期限切れとなる場合、ACMから証明書を再インポートして更新を行います。IAMにインポートしている証明書を更新する場合は、こちらの記事を参照ください。

  • 「証明書本文」に外部認証局から発行された証明書を貼り付けます。
  • 「証明書のプライベートキー」にCSRを作成する時に生成した秘密鍵を貼り付けます。
  • 「証明書チェーン」に中間証明書を貼り付けます。

 

  • 再インポートの場合は、現在の証明書の値、新しい証明書の値が表示されます。問題なければ、[インポート]を押します。注意事項は、2. 証明書のインポート手順 を参照ください。

   

 

パスフレーズありの秘密鍵でエラー

  • CSR作成時にPEMフレーズ(PEM phrase)を指定して秘密鍵を暗号化した場合、「証明書のプライベートキー」に秘密鍵を貼りつけると下記のエラーが表示されます。
    • 提供された証明書プライベートキーは、有効な PEM 形式ではありません。
  • 下記コマンドで秘密鍵の暗号化を解除します。
openssl rsa -in Encrypted_key_name.key -out Decrypted_key_name.key

 

 

ACM,AWS,AWS-Security

Posted by takaaki