AutoSSL
証明書のデプロイ

Google Cloud Storage

SSL 証明書を Google Cloud Storage バケットへ自動デプロイする方法です。

概要

AutoSSL は、SSL 証明書のファイルを Google Cloud Storage バケットへ自動でアップロードできます。各証明書はバージョン付きのアーカイブパスに保存され、あわせて latest/ パスも更新されます。Nginx、Caddy、Cloud Storage から証明書を取得する独自スクリプトなどの後続処理が、最新の証明書を見つけやすくなります。

このデプロイの管理と実行は、デプロイ管理 を参照してください。

設定パラメーター

AutoSSL コンソールでこのデプロイ先を追加または編集するときは、次のパラメーターを設定します。

パラメーター説明例
バケット名証明書ファイルをアップロードする Cloud Storage バケットの名前です。my-ssl-certs
オブジェクトキーのプレフィックス(任意) バケット内で証明書ファイルを整理するプレフィックスです。設定すると、このプレフィックスの下にアップロードされます。末尾のスラッシュはなくても構いません。certs/example.com/

仕組み

AutoSSL が証明書を Cloud Storage バケットへデプロイするとき(例: my-ssl-certs、プレフィックス certs/example.com/)、次の処理を行います。

  1. 証明書の準備:

    • 証明書チェーンを個別の PEM ファイルに分けます。cert.pem(リーフ証明書)、privkey.pem(秘密鍵、PKCS#8)、chain.pem(中間証明書)、fullchain.pem(フルチェーン)です。
    • 追跡できるよう、証明書のメタデータを含む README.md を生成し、https://autossl.dev へのリンクを付けます。
    • 証明書の notBefore と SHA1 フィンガープリントから、アーカイブディレクトリ名を作ります(形式: YYYY-MM-DD_<first 8 chars of SHA1>)。
  2. ファイルのアップロード:

    • 4 つの PEM ファイルと README.md を、バケット内の 2 つのパス にアップロードします。
      • アーカイブパス — certs/example.com/2026-05-30_e5f6a7b8/cert.pem(および privkey.pem、chain.pem、fullchain.pem、README.md)。発行ごとに一意で、上書きされません。
      • 最新パス — certs/example.com/latest/cert.pem(および privkey.pem、chain.pem、fullchain.pem、README.md)。常に最後にアップロードした証明書です。

latest/ パスを使うと、後続のサービスは決まったCloud Storage キーから現在の証明書を取得できます。過去の証明書は、バージョン付きのアーカイブディレクトリに残ります。

バケット構成の例

証明書を複数回更新したあとのバケットは、次のようになります。

certs/example.com/
├── 2026-03-01_a1b2c3d4/
│   ├── cert.pem
│   ├── privkey.pem
│   ├── chain.pem
│   ├── fullchain.pem
│   └── README.md
├── 2026-05-30_e5f6a7b8/
│   ├── cert.pem
│   ├── privkey.pem
│   ├── chain.pem
│   ├── fullchain.pem
│   └── README.md
└── latest/
    ├── cert.pem
    ├── privkey.pem
    ├── chain.pem
    ├── fullchain.pem
    └── README.md

秘密鍵の形式

privkey.pem は PKCS#8 形式(-----BEGIN PRIVATE KEY-----)です。Nginx、Caddy、Traefik、OpenSSL 1.1+ など、近年の Web サーバーやツールで広く使えます。

環境が PKCS#1(RSA 鍵の場合は -----BEGIN RSA PRIVATE KEY-----)を要求する場合は、使う前にローカルで変換してください。

openssl rsa -in privkey.pem -out privkey-pkcs1.pem

アクセスキーの要件

Cloud Storage の S3 互換 API を使うため、このプロバイダーには Google Cloud Storage HMAC 資格情報 が必要です。

必要な権限

HMAC キーは、対象バケットへオブジェクトをアップロードできるサービスアカウントに紐づいている必要があります。

対象バケットに対し、少なくとも次の IAM ロール(または同等の権限を持つカスタムロール)をサービスアカウントに付与してください。

  • roles/storage.objectCreator(または storage.objects.create 権限)

最小限のカスタム IAM ロールの権限の例:

  • storage.objects.create

IAM 権限の管理は Google Cloud IAM documentation を参照してください。

Google Cloud Storage | AutoSSL