読者です 読者をやめる 読者になる 読者になる

s_tajima:TechBlog

渋谷で働くインフラエンジニアのTechブログです。

AWS Certificate Managerの検証

AWS

本日、AWSSSL/TLS証明書のマネージドサービスをリリースしたので早速使ってみました。
New – AWS Certificate Manager – Deploy SSL/TLS-Based Apps on AWS | AWS Official Blog

リリース情報、ドキュメントより

ACM takes care of the complexity surrounding the provisioning, deployment, and renewal of digital certificates

証明書のプロビジョニング, デプロイ, 更新を管理してくれるとのこと。

Certificates provided by ACM are verified by Amazon’s certificate authority (CA)

AmazonのCAによってベリファイされた証明書を発行できるとのこと。

SSL/TLS certificates provisioned through AWS Certificate Manager are free.

証明書の発行/管理自体に費用はかからないそうです。

You can use AWS Certificate Manager certificates only with Elastic Load Balancing and Amazon CloudFront.

ELBもしくはCloudFrontでしか使えないとのこと。証明書の秘密鍵をダウンロードすることはできないようですね。

発行してみた

  • 詳細な手順はドキュメントに書いてあるので割愛。
  • ドメイン認証の方法は現状メールのみ。(Whoisの管理者アドレスに認証用メールが送られてくる)
  • 発行した証明書の主な仕様
    • Signature Algorithmはsha256WithRSAEncryption
    • 秘密鍵の鍵長は2048bit
    • FQDN複数指定した場合はSubject Alternative Name (SANs)に含まれる
  • 実際に発行した証明書はこちら。
Certificate:
    Data:
        Version: 3 (0x2)
        Serial Number:
            0a:33:56:0e:38:84:ab:1d:23:bb:7f:fa:62:e9:25:99
        Signature Algorithm: sha256WithRSAEncryption
        Issuer: C=US, O=Amazon, OU=Server CA 1B, CN=Amazon
        Validity
            Not Before: Jan 22 00:00:00 2016 GMT
            Not After : Feb 22 12:00:00 2017 GMT
        Subject: CN=XXXXX.me
        Subject Public Key Info:
            Public Key Algorithm: rsaEncryption
            RSA Public Key: (2048 bit)
                Modulus (2048 bit):
                    00:86:6a:b3:f3:ce:38:6d:26:31:d1:94:cc:c3:62:
                    ..snip..
                    d4:e6:00:4f:28:43:1c:5a:4a:40:80:6a:3f:bd:14:
                    38:95
                Exponent: 65537 (0x10001)
        X509v3 extensions:
            X509v3 Authority Key Identifier:
                keyid:59:A4:66:06:52:A0:7B:95:92:3C:A3:94:07:27:96:74:5B:F9:3D:D0

            X509v3 Subject Key Identifier:
                6C:00:94:64:9B:FD:6A:06:1D:B4:55:FC:BD:4A:19:08:D4:C6:38:39
            X509v3 Subject Alternative Name:
                DNS:XXXXX.me, DNS:*.XXXXX.me
            X509v3 Key Usage: critical
                Digital Signature, Key Encipherment
            X509v3 Extended Key Usage:
                TLS Web Server Authentication, TLS Web Client Authentication
            X509v3 CRL Distribution Points:
                URI:http://crl.sca1b.amazontrust.com/sca1b.crl

            X509v3 Certificate Policies:
                Policy: 2.23.140.1.2.1

            Authority Information Access:
                OCSP - URI:http://ocsp.sca1b.amazontrust.com
                CA Issuers - URI:http://crt.sca1b.amazontrust.com/sca1b.crt

            X509v3 Basic Constraints: critical
                CA:FALSE
    Signature Algorithm: sha256WithRSAEncryption
        99:ec:47:81:fc:61:55:aa:c7:91:aa:d2:d5:2d:29:68:cf:1c:
        ..snip..
        43:6d:d2:6f
-----BEGIN CERTIFICATE-----
MIIEWTCCA0GgAwIBAgIQCjNWDjiEqx0ju3/6YuklmTANBgkqhkiG9w0BAQsFADBG
..snip..
QifBNlq9ofPYQ23Sbw==
-----END CERTIFICATE-----

有効性の確認

証明書のチェーンは以下のとおり

Certificate chain
 0 s:/CN=XXXXX.me
   i:/C=US/O=Amazon/OU=Server CA 1B/CN=Amazon
 1 s:/C=US/O=Amazon/OU=Server CA 1B/CN=Amazon
   i:/C=US/O=Amazon/CN=Amazon Root CA 1
 2 s:/C=US/O=Amazon/CN=Amazon Root CA 1
   i:/C=US/ST=Arizona/L=Scottsdale/O=Starfield Technologies, Inc./CN=Starfield Services Root Certificate Authority - G2
 3 s:/C=US/ST=Arizona/L=Scottsdale/O=Starfield Technologies, Inc./CN=Starfield Services Root Certificate Authority - G2
   i:/C=US/O=Starfield Technologies, Inc./OU=Starfield Class 2 Certification Authority

手元の環境で確認すると、Firefox, OSXのキーチェーン共に有効なCA認証局からのチェーンとして扱われていた。

  • FireFox (43.0.4)
    f:id:s_tajima:20160122124532p:plain

  • OS X (10.9.5) ※古い環境でごめんなさい...
    f:id:s_tajima:20160122124540p:plain

リリースの記事にもある通り、SSL/TLS証明書の管理はたしかに面倒ですよね。
最近ではLet's Encrypt(https://letsencrypt.org/)等も話題になっていますが、
これらをうまく使って余計な手間をなくしていきたいものです。

※2016/1/22 17:12 追記
Amazonみたいな1企業が(中間)CA認証局を持てるってすごいなとおもってたら2015年6月にこんな記事が出てた。
Amazon wants to be your SSL certificate provider, applies to be a root Certificate Authority - GeekWire