ZeroSSL認証局とPAM360との統合

PAM360は、ZeroSSL -自動証明書管理環境(ACME)プロトコルを使用して安全なSSL証明書を無料で提供する認証局(CA)と統合しやすくします。この統合により、ドメインにインストールされたZeroSSL証明書のエンドツーエンドのライフサイクル管理を単一のインターフェイスから実現できます。本ドキュメントは、お使いのZeroSSLアカウントと接続を確立、PAM360からのすべての証明書管理に関連する操作を取得、展開、更新および実行するのに従う必要がある手順について説明します。

下の手順ごとの手続きにしたがって、ZeroSSL CAをPAM360と統合します:

  1. ZeroSSLアカウントの作成
  2. 証明書要求の発出
  3. DNSアカウントの構成
  4. ドメイン検証とZeroSSL証明書チャレンジ検証
  5. 証明書の取得と保存
  6. ZeroSSL CAが発行した証明書の管理

メモ:

以下のベースURLとポートをファイヤウォールまたはプロキシの例外として追加し、PAM360がZeroSSLのCAサービスに接続できるようにします。

1.ZeroSSLアカウントの作成

ZeroSSLからSSL証明書を要求するプロセスを開始するには、アカウントを作成する必要があります。これは1回限りのプロセスであり、PAM360インターフェイスから直接実行できます。

ZeroSSLアカウントを作成するには、

  1. [証明書]タブに移動して[ACME]ドロップダウンをクリックし、[ZeroSSL]を選択します。
    zerossl-1
  2. [管理]をクリックします。アカウントタブで、[新規登録]をクリックします。
  3. ポップアップで、アカウント名と有効な電子メールアドレスを入力します。EAB KIDEAB HMACキーを入力します。アカウントのEAB KIDとHMACキーをまだ持っていない場合は、ここをクリックして生成します。
  4. チェックボックスをクリックして、ZeroSSLサブスクライバー契約に同意します。
  5. アカウント作成プロセスを完了するには、[登録]をクリックしてください。

アカウントが作成されたら、アカウントの電子メールアドレスを更新するか、PAM360から削除するか、アカウントを完全に無効にすることができます。アカウントを削除すると、PAM360からのみ削除されることに注意してください。ここでアカウントを削除しても、ZeroSSLポータルでは引き続きアクティブになります。同じアカウントをPAM360に再度追加するには、キーをエクスポートし、以前と同じ詳細で[アカウントを追加]オプションを使用します。ただし、アカウントの削除中に[非アクティブ化]オプションを選択すると、ZeroSSLアカウントは完全に削除され、同じ詳細でPAM360に再度追加することはできません。

メモ:

  • 新しいアカウント登録ごとに、新しいEAB KIDを作成する必要があることに注意してください。アカウントの登録に成功すると、同じEAB HMACキーを再度使用することはできません。ZeroSSLドキュメントの詳細を読むには、ここをクリックしてください。
  • 上記の操作を実行できるのは、[SSHキーと証明書ユーザー]ロールで[ACME]ロールが割り当てられているユーザーのみです。このユーザー役割をアクティブ化するには、[管理者]>> [カスタマイズ]>>[ロール]の順に移動します。
  • PAM360から作成できるZeroSSLアカウントは1つだけです。

2.証明書要求の発出

ZeroSSLアカウントが登録されると、CAへの証明書要求の発行に進むことができます。証明書の要求を完了するには、ドメインを検証して要求した証明書を発行するために実行するチャレンジ検証が表示されます。

  1. [証明書]>>[Acme]>>[ZeroSSL]の順に移動します。
  2. [証明書の要求]をクリックします。ドメイン名を入力し、チャレンジタイプを選択し、キーアルゴリズム、アルゴリズムの長さ、署名アルゴリズム、キーストアタイプを選択し、キーストアパスワードを入力して、[作成]をクリックします。
  3. dns-01チャレンジタイプの場合、既にDNS認証情報を設定済みであれば、ドロップダウンリストからDNSアカウントを選択して割り当てることができます。これは、要求で指定されたすべてのドメインの自動チャレンジ検証に使用されます。
  4. また、証明書が更新されるごとに秘密鍵を変更するオプションもあります。
    1. キーを変更する必要がある場合は、新しいキーを使用してください。このオプションは、証明書が更新されるたびに新しいキーを生成します。
      zerossl-2
    2. 更新時に同じキーを保持する場合は、[同じキー]オプションを使用します。
    3. 独自のキーを使用するには、[キーのインポート]オプションを使用します。このキーは、証明書が生成されたときに初めて使用され、その後の更新にも使用されます。

    メモ:

    PAM360は、DNSベースのチャレンジについて、ワイルドカード証明書要求をサポートしています。ワイルドカード証明書要求の場合は、形式*.domainname.comで一般名を入力します

3.DNSアカウントの構成

DNSアカウントを設定するには、以下の手順に従ってください:

  1. [ZeroSSL]>> [管理]の順に移動します。[DNS]タブに切り替えます。
  2. ここでは、サポートされているDNSプロバイダーごとに最大1つのDNSアカウントを追加できます。PAM360は現在、Azure DNS、CloudFlare DNS、Amazon Route 53 DNS、RFC2136 DNSアップデート(nsupdate)、GoDaddy DNS、ClouDNSの自動チャレンジ検証をサポートしています。[追加]をクリックします。
  3. 開いたポップアップで、DNSプロバイダーを選択します。

3.1 Azure DNS

  1. Azure DNSゾーンの概要ページにあるサブスクリプションIDを入力します。
  2. [Microsoft Entra ID] >> [プロパティ]で確認できるディレクトリIDを指定してください。
  3. 既存のAzureアプリケーションをすでにお持ちの場合は、そのアプリケーションIDキーを入力します。
  4. そうでない場合は、ドキュメントに記載の手順に従って Azure アプリケーションおよびキーを作成し、API 呼び出しを行うための DNS ゾーンへのアクセス権をそのアプリケーションに付与してください。
  5. 最後に、DNSゾーンで作成したグループ名となるリソースグループ名を入力し、[保存]をクリックします。
  6. DNSアカウント情報は保存され、[管理] >> [DNS]に一覧表示されます。
    azuredns

3.2 Cloudflare DNS

  1. メールアドレスフィールドで、Cloudflareアカウントに関連付けられているメールアドレスを指定してください。
  2. グローバルAPIキーの場合、Cloudflare DNSのドメイン概要ページで[APIキーの生成]オプションを使用してキーを生成し、このフィールドに値を貼り付けます。[保存]をクリックします。
  3. DNSアカウント情報は保存され、[管理 >> DNS]に一覧表示されます。
    cloudflaredns

3.3 AWS Route 53 DNS

  1. AWSアカウントと関連づけられたアクセスキーIDシークレットを生成して指定します。
    amazon-route-53-dns
  2. AWSアカウントをお持ちでない場合は、アカウントを作成し、以下の手順に従って、アクセスキーIDとシークレットを生成してください
    1. AWSコンソールにログインして、[IAMサービス]>>[ユーザー]の順に移動します。[ユーザーの追加]をクリックします。
    2. ユーザー名を入力し、アクセスタイプをプログラマチックアクセスとして選択します。
    3. 次のタブに切り替え、[権限を設定]]の下にある[既存ポリシーを直接アタッチ]をクリックし、[AmazonRoute53FullAccess]を検索します。
    4. 一覧表示されたポリシーを割り当て、次のタブに切り替えます。タグセクションで、適切なタグ(オプション)を追加し、次のタブに切り替えます。
    5. 入力したすべての情報を確認し、[ユーザーを作成]をクリックします。
    6. ユーザーアカウントが作成され、続いてアクセスキーIDとシークレットが生成されます。キーIDとシークレットをコピーして、安全な場所に保存してください。これは二度と表示されません。
    7. 既にAWSユーザーアカウントをお持ちの場合は、そのユーザーに[AmazonRoute53FullAccess]権限を付与し、アクセスキーがない場合は生成する必要があります。ユーザーアカウントに既にアクセスキーが関連付けられている場合は、必要な権限が付与されていることを確認するだけで十分です。

必要な権限を付与するには、以下の手順に従ってください:

  1. [権限]タブに移動し、必要なユーザーアカウントを選択して、[権限の追加]をクリックします。
  2. [権限を設定]の下にある[既存ポリシーを直接アタッチ]をクリックして、AmazonRoute53FullAccessを検索します。
  3. 記載されているポリシーを割り当てて、[保存]をクリックします。
  4. アクセスキーを生成するには、
  5. 特定のユーザーアカウントを選択して、[セキュリティ認証情報]タブに移動します。
  6. 開いたウィンドウで、[アクセスキーの作成]をクリックします。
  7. アクセスキーIDとシークレットが生成されます。キーIDとシークレットは再度表示されないため、コピーして安全な場所に保存してください。

3.4 RFC2136 DNSアップデート

RFC2136 DNS 更新をサポートする Bind、PowerDNS などのオープン ソース DNS サーバーを使用している場合は、以下の手順に従って、PAM360 を使用して DNS ベースのドメイン制御検証手順を自動化します。

  1. DNSサーバーのIP/ホスト名は、DNSサーバーがインストールまたは実行されているサーバー名/IPアドレスを表します。
  2. これらの詳細は通常、サーバーのインストールディレクトリにあります。たとえば、Bind9 DNSサーバーの場合、これらはサーバーのインストールディレクトリにあるnamed.local.confファイルにあります。
  3. キーシークレットを提供します。これは、サーバーのインストールディレクトリにあるキーコンテンツに他なりません。
  4. キーの名前を入力し、署名アルゴリズムを選択します。[保存]をクリックします。
    rfc2136update

3.5 GoDaddy DNS

DNS検証にGoDaddy DNSを使用している場合は、以下の手順に従って、PAM360を使用してDNSベースのドメイン制御検証手順を自動化します:

GoDaddy APIの認証情報を取得するには、以下の手順に従ってください:

  1. GoDaddyデベロッパーポータルに移動し、APIキータブに切り替えます。
  2. GoDaddyアカウントにまだログインしていない場合は、ログインします。
  3. APIキーを作成および管理できるAPIキーページにリダイレクトされます。
  4. [新しいAPIキーを作成]をクリックしてください。
  5. アプリケーション名を入力し、環境タイプに[本番環境]を選択して、[次へ]をクリックします。
  6. APIキーとそのシークレットが生成されます。シークレットは再度表示されないため、コピーして安全な場所に保存してください。

次に、PAM360インターフェースで、以下の手順に従ってGoDaddy DNSをZeroSSL CAに追加します:

  1. [証明書] >> [Acme] >> [ZeroSSL]に移動し、ページ右端の[管理]をクリックします。
  2. [DNS]タブに切り替え、[追加]をクリックします。DNSプロバイダーのドロップダウンメニューからGoDaddyを選択してください。
  3. GoDaddyポータルから以前に生成されたキーシークレットを入力します。[保存]をクリックします。
    godaddy-dns

3.6 ClouDNS

DNS検証にClouDNSを使用している場合は、以下の手順にしたがって、PAM360を使ってDNSベースのドメイン制御検証手順を自動化します。

ClouDNS APIの認証情報を取得するには、以下の手順に従ってください:

  1. ClouDNSアカウントにログインし、リセラーAPIにアクセスします。
  2. APIユーザーIDを既に作成している場合は、APIユーザーの下にあります。そうでない場合は、[APIを作成]をクリックして新しいAPIを生成します。
  3. ClouDNS API認証IDについての詳細は、ここをクリックしてください。

次に、PAM360インターフェイスで、下の手順にしたがって、ClouDNSをZeroSSL CAに追加します:

  1. [証明書]>>[Acme] >> [ZeroSSL]の順に移動して、ページ右端の[管理]をクリックします。
  2. [DNS]タブに切り替え、[追加]をクリックします。
  3. DNSプロバイダーのドロップダウンメニューから[ClouDNS]を選択してください。
  4. 以下の選択肢から1つを選んでください:認証IDサブ認証IDサブ認証ユーザー
  5. 選択したClouDNS認証IDと、それに対応する認証パスワードを入力し、[保存]をクリックします。
    cloudns

3.7 DNS Made Easy

  1. [名前]欄に、お好みの名前を入力してください。
  2. キーシークレットは、[設定]>>[アカウント情報]のDNS Made EasyのWebページで確認できます。それぞれの欄に詳細を入力してください。
  3. それでは、[保存]をクリックして、DNSアカウントの詳細を保存してください。保存されたDNS情報は、[管理] >> [DNS]に表示されます。
    dnsmadeeasy

メモ:

  • ZeroSSLは、マルチドメイン証明書とワイルドカード証明書を提供します。
  • PAM360とZeroSSLの統合は、RSAおよびECアルゴリズムによる暗号化をサポートします。
  • PAM360は、http-01およびdns-01ベースのドメイン検証をサポートしています。要件に基づいてチャレンジタイプを選択します。
  • dns-01 ベースのドメイン検証の場合、チャレンジ検証に設定済みの DNS アカウントを使用している場合は、[管理] >> [DNS] で選択した DNS アカウントのステータスが[有効]になっていることを確認してください。
  • 秘密鍵を変更するオプションは、現在RSA鍵アルゴリズムでのみ機能します。

4.ドメイン検証とZeroSSL証明書チャレンジ検証

PAM360は、HTTP-01およびDNS-01チャレンジ(現在、Azure、Cloudflare、Amazon Route 53、RFC2136 DNSアップデート、GoDaddy DNS、ClouDNS)の自動検証を通じて、ドメイン検証を促進します。自動化を有効にするには、最初にエンドサーバーの詳細をPAM360にマップする必要があります。これは、1回限りのプロセスです。

4.1 HTTP-01チャレンジ検証によるドメイン検証

http-01チャレンジによるドメイン検証の場合、

  1. 実行するチャレンジを表示するウィンドウが開きます。
  2. [エージェントマッピング]アイコンをクリックします。
  3. ポップアップが開きます。ドメインサーバーがLinuxマシンである場合は、必要な詳細情報を入力し、[保存]をクリックしてください。
  4. ドメインサーバーがWindowsリソースである場合は、ドメインサーバーにWindowsエージェントをダウンロードおよびインストールします。
  5. エージェントマッピング設定を構成したら(エージェントマッピングは一回限りの構成です)、PAM360が自動的に、ZeroSSLが生成したチャレンジ認証を処理します。
  6. エージェントマップを設定したら、保留中の要求の[保留中]をクリックし、[検証]をクリックします。チャレンジが検証され、証明書要求がZeroSSL CAに送信されます。
    zerossl-3

4.2 DNS-01チャレンジ検証によるドメイン検証

PAM360からのDNS-01チャレンジ検証の場合、

  1. ZeroSSLタブに切り替えて、証明書要求に対応する要求ステータス(保留中)をクリックします。
  2. DNSチャレンジ値とTXTレコードを表示するウィンドウが表示されます。
  3. DNSアカウントの詳細を既に構成していて、証明書要求の作成時にDNSを選択している場合は、DNSアカウントを要求に割り当てることができます。
  4. 要求を選択し、上部メニューの[その他]から[DNSの割り当て]を選択して、必要なDNSアカウントを選択します。
  5. DNSアカウントが構成されていない場合、または証明書要求を発行するときにDNSアカウントを選択していない場合、PAM360には、エージェントマップを介してDNS-01チャレンジ検証を自動化するオプションがあります。
  6. 要求の左側にあるエージェントマップアイコンをクリックしてください。エージェントマップは1回限りの設定です。

開いたデプロイウインドウで、以下の操作を実行して、エンドサーバー詳細をPAM360にマッピングおよび保存します。

  1. 開いたデプロイウィンドウで、以下の操作を実行して、エンドサーバーの詳細情報をPAM360にマップして保存します。
  2. DNSプロバイダーを選択します。Azure DNSの場合、必要な詳細(サブスクリプションID、ディレクトリID、アプリケーションID、アプリケーションキー、およびリソースグループ名)を入力します。
  3. Cloudflare DNSの場合、Cloudflareアカウントに関連付けられているメールアドレスとグローバルAPIキーを入力します。
  4. Amazon Route 53 DNSの場合は、AWSアカウントに関連付けられているアクセスキーIDとシークレットを入力してください。
  5. [証明書のデプロイ]チェックボックスを有効にすると、ドメイン検証後および更新のたびに、対応するエンドサーバーへの証明書のデプロイを自動化できます。
  6. Linuxの場合、エンドサーバーは必要な詳細を提供しますが、Windowsの場合、エンドサーバーはhttp-01チャレンジで説明したのと同じ手順を使用してWindowsエージェントをダウンロードしてインストールします。
  7. 詳細を入力したら、[保存]をクリックします。エンドサーバーの詳細は正常にマッピングされ、PAM360に保存されます。これは、[管理]>>[デプロイ]タブから表示または編集できます。
    zerossl-4

メモ:

  • ZeroSSL統合を使用して、パブリックドメインの証明書のみを要求および取得できます。
  • チャレンジの処理は、自動化せずに手動で行うこともできます。チャレンジ値/テキストレコードをコピーして、ドメインサーバーに手動で貼り付けます。次に、PAM360サーバーで、[保留中の要求]ページに移動し、[確認]をクリックします。チャレンジが検証され、証明書が発行されます。
  • PAM360は、エージェントマッピングが利用できない場合にのみ、証明書要求にDNSを使用してチャレンジ検証を自動化します。エージェントの詳細が[管理] >> [展開]タブで利用できる場合、チャレンジの検証はエージェントを介して自動化されます。
  • 現在、SSLエージェントはWindows Serverでのみ利用可能です。
  • RFC2136 DNS更新の場合、グローバルDNS構成を選択した場合、ドメイン名自体がゾーン名として機能します(グローバルDNS構成は、すべてのゾーンに同じキーシークレットを使用している場合にのみ可能です)。一方、ドメインとエージェントのマッピングを選択した場合は、ドメインごとにゾーン名、キー名、キーシークレットを個別に指定する必要があります。

5.証明書の取得と保存

チャレンジ検証によるドメイン検証が成功すると、ZeroSSL CAが要求された証明書を発行します。

  1. ウィンドウは自動的に証明書とそのステータスを表示するページにリダイレクトされます(チャレンジ検証が成功した場合はステータスが[利用可能]、失敗した場合は[失敗]と表示されます)。
  2. [利用可能]ボタンをクリックすると、証明書をPAM360リポジトリに保存したり、メールで送信したり、あるいはエクスポートしたりできます。
  3. チャレンジに失敗した場合は、[新しいチャレンジ]をクリックして別のチャレンジセットを取得し、上記の手順を繰り返してください。

証明書をPAM360リポジトリに保存すると、[SSL]>>[証明書]タブから表示できます。

6.ZeroSSL CAが発行した証明書の管理

このセクションでは、PAM360からZeroSSL CAが発行した証明書を更新、失効、および削除する方法について説明します。

6.1 証明書の更新

ZeroSSLが発行した証明書の有効期間は90日で、それ以降は無効になります。証明書の更新は、手動で実行することも、自動ドメイン検証を通じて自動的に実行することもできます。証明書を手動で更新するには、

  1. [証明書]>>[Acme]>>[ZeroSSL]の順に移動します。
  2. 更新する証明書を選択して、[証明書の更新]ボタンをクリックします。
  3. 証明書が更新され、証明書ステータスバーに[更新済み]と表示されます。
  4. それをクリックして、更新されたバージョンの証明書をPAM360証明書リポジトリに保存します。

    メモ:

    証明書は、証明書リポジトリで更新するために、更新後に保存する必要があります。それ以外の場合は、古いバージョンの証明書のみが引き続きリポジトリに残ります。

自動ドメイン検証による自動更新

エージェントマッピングが構成されている場合、証明書の更新プロセスは手動の介入なしに自動的に実行されます。ZeroSSLから取得した組織内のすべての証明書は、有効期限が切れる15日前に自動的に更新され、アカウント所有者の電子メールアドレスに通知が送信されます。

メモ:

自動更新は、PAM360リポジトリに保存した証明書のみ適用できます。すなわち、ZeroSSLから証明書を調達した後、自動更新が有効になるには、保存する必要があります。


6.2 証明書の取り消し

証明書を取り消すと、証明書が無効になり、すぐにWebサイトからHTTPSが削除されます。

証明書を取り消すには、

  1. [証明書]>>[Acme]>>[ZeroSSL]タブの順に移動します。
  2. 取り消す証明書を選択し、[証明書を取り消す]をクリックします。
  3. 証明書は取り消され、無効になります。
    zerossl-5

6.3 証明書の削除

証明書を削除すると、PAM360リポジトリから証明書が削除されますが、証明書は引き続き有効です。

証明書を削除するには、

  1. [証明書]>>[Acme]>>[ZeroSSL]タブの順に移動します。
  2. 削除する証明書を選択し、[その他] >> [削除]をクリックします。
  3. 証明書はPAM360データベースから削除されます。
    zerossl-6