ZeroSSLとの統合
PAM360は、ZeroSSL — 自動証明書管理環境(ACME)プロトコルを使用して安全なSSL証明書を無料で提供する認証局(CA)と統合しやすくします。この統合により、ドメインにインストールされたZeroSSL証明書のエンドツーエンドのライフサイクル管理を単一のインターフェイスから実現できます。本書は、お使いのZeroSSLアカウントと接続を確立、PAM360からのすべての証明書管理に関連する操作を取得、展開、更新および実行するのに従う必要がある手順について説明します。
統合を続行する前に、前提条件として次の手順を完了してください:
前提条件
以下のベースURLとポートをファイヤウォールまたはプロキシの例外として追加し、PAM360がZeroSSLのCAサービスに接続できるようにします。
URL: https://acme.zerossl.com/v2/DV90ポート:443
下の手順ごとの手続きにしたがって、ZeroSSLをPAM360と統合します:
1.ZeroSSLアカウントを作成する
ZeroSSLからSSL証明書を要求するプロセスを開始するには、アカウントを作成する必要があります。これは1回限りのプロセスであり、PAM360インターフェイスから直接実行できます。
- ZeroSSLアカウントを作成するには、[証明書]タブに移動し、[ACME]ドロップダウンをクリックして、[ZeroSSL]を選択します。
- [管理]をクリックします。[アカウント]タブで、[新規登録]をクリックします。
- ポップアップで、アカウント名と有効な電子メールアドレスを入力します。EAB KIDとEAB HMACキーを入力します。アカウントのEAB KIDとHMACキーをまだ持っていない場合は、ここをクリックして生成します。
- チェックボックスをクリックして、ZeroSSLサブスクライバー契約に同意します。
- [登録]をクリックします。これで、ZeroSSLのアカウントが作成されました。
アカウントが作成されたら、アカウントの電子メールアドレスを更新するか、PAM360から削除するか、アカウントを完全に無効にすることができます。アカウントを削除すると、PAM360からのみ削除されることに注意してください。ここでアカウントを削除しても、ZeroSSLポータルでは引き続きアクティブになります。同じアカウントをPAM360に再度追加するには、キーをエクスポートし、以前と同じ詳細で[アカウントの追加]オプションを使用します。ただし、アカウントの削除中に[非アクティブ化]オプションを選択すると、ZeroSSLアカウントは完全に削除され、同じ詳細でPAM360に再度追加することはできません。
注記:
- 新しいアカウント登録ごとに、新しいEAB KIDを作成する必要があることに注意してください。アカウントの登録に成功すると、同じEAB HMACキーを再度使用することはできません。詳細についてはZeroSSLドキュメントを読むにはこちらをクリックしてください。
- 上記の操作を実行できるのは、「SSHキーと証明書」ユーザー役割で「ACME」役割が割り当てられているユーザーのみです。このユーザー役割をアクティブ化するには、[管理] >> [カスタマイズ] >> [役割]に移動します。
- PAM360から作成できるZeroSSLアカウントは1つだけです。
2.証明書要求を発生させる
ZeroSSLアカウントが登録されると、CAへの証明書要求の発行に進むことができます。証明書の要求を完了するには、ドメインを検証して要求した証明書を発行するために実行するチャレンジ検証が表示されます。
- [証明書] >> [Acme] >> [ZeroSSL]の順に移動します。
- [証明書の要求]をクリックします。ドメイン名を入力し、チャレンジタイプを選択し、キーアルゴリズム、アルゴリズムの長さ、署名アルゴリズム、キーストアタイプを選択し、キーストアパスワードを入力して、[作成]をクリックします。
- dns-01チャレンジタイプの場合、DNS認証情報を既に構成している場合は、ドロップダウンからDNSアカウントを選択して割り当てることができます。これは、要求で指定されたすべてのドメインの自動チャレンジ検証に使用されます。
- また、証明書が更新されるごとに秘密鍵を変更するオプションがあります。
- キーを変更する必要がある場合は、新しいキーを使用してください。このオプションは、証明書が更新されるたびに新しいキーを生成します。
- 更新時に同じキーを保持する場合は、[同じキー]オプションを使用します。
- 独自のキーを使用するには、[キーのインポート]オプションを使用します。このキーは、証明書が生成されたときに初めて使用され、その後の更新にも使用されます。
注記:PAM360は、DNSベースのチャレンジについて、ワイルドカード証明書要求をサポートしています。ワイルドカード証明書の要求の場合は、「*.domainname.com」の形式で一般名を入力します
DNSアカウントを構成するには、次の手順に従います:
- [ZeroSSL] >> [管理]の順に移動します。[DNS]タブに切り替えます。
- ここでは、サポートされているDNSプロバイダーごとに最大1つのDNSアカウントを追加できます。PAM360は現在、Azure DNS、CloudFlare DNS、Amazon Route 53 DNS、RFC2136 DNSアップデート(nsupdate)、GoDaddy DNS、ClouDNSの自動チャレンジ検証をサポートしています。[追加]をクリックします。
- 開いたポップアップで、DNSプロバイダーを選択します。
2.1 Azure DNS
- Azure DNSゾーンの[概要]ページで利用できるサブスクリプションIDを指定します。
- ディレクトリIDを指定します。これは[Azure Active Directory] >> [プロパティ]で利用できます。
- 既存のAzureアプリケーションがある場合は、そのアプリケーションIDとキーを入力します。
- そうでない場合は、このドキュメントに記載されている手順に従ってAzureアプリケーションとキーを作成し、API呼び出しを行うためのDNSゾーンへのアクセスをアプリケーションに許可します。
- 最後に、DNSゾーンを作成したグループ名であるリソースグループ名を入力し、[保存]をクリックします。
- DNSアカウントの詳細が保存され、[管理] >> [DNS]に一覧表示されます。
2.2 Cloudflare DNS
- [メールアドレス]フィールドで、Cloudflareアカウントに関連付けられているメールアドレスを指定します。
- グローバルAPIキーの場合、Cloudflare DNSのドメイン概要ページで[APIキーの生成]オプションを使用してキーを生成し、このフィールドに値を貼り付けます。[保存]をクリックします。
- DNSアカウントの詳細が保存され、[管理] >> [DNS]に一覧表示されます。
2.3 AWS Route 53 DNS
AWSアカウントに関連付けられたアクセスキーIDとシークレットを生成して指定します。AWSアカウントをお持ちでない場合は、アカウントを作成し、以下の手順に従ってアクセスキーIDとシークレットを生成します:
- AWSコンソールにログインし、[IAMサービス] >> [ユーザー]に移動します。[ユーザーの追加]をクリックします。
- ユーザー名を入力し、アクセスタイプをプログラマチックアクセスとして選択します。
- 次のタブに切り替え、[許可を設定]の[既存のポリシーを直接添付]をクリックし、「AmazonRoute53FullAccess」を検索します。
- 一覧表示されているポリシーを割り当て、次のタブに切り替えます。タグセクションで、適切なタグ(オプション)を追加し、次のタブに切り替えます。
- 入力したすべての情報を確認し、[ユーザーの作成]をクリックします。
- ユーザーアカウントが作成され、続いてアクセスキーIDとシークレットが生成されます。キーIDとシークレットをコピーして、安全な場所に保存してください。これは二度と表示されません。
- すでにAWSユーザーアカウントをお持ちの場合は、ユーザーに「AmazonRoute53FullAccess」権限を付与し、ユーザーが持っていない場合はアクセスキーを生成する必要があります。ユーザーアカウントにすでにアクセスキーが関連づけられている場合は、必要な権限が付与されていることを確認するだけで十分です。
必要な権限を付与するには:
- [権限]タブに移動し、必要なユーザーアカウントを選択して、[権限の追加]をクリックします。
- ケース[許可を設定]の[既存のポリシーを添付]をクリックし、「AmazonRoute53FullAccess」を検索します。.
- 一覧表示されたポリシーを割り当て、[保存]を押します。
- アクセスキーを生成するには、
- 特定のユーザーアカウントを選択し、[セキュリティ資格情報]タブに移動します。
- 開いたウインドウで、[アクセスを作成]キーをクリックします。
- アクセスキーIDとシークレットが生成されます。キーIDとシークレットは再度表示されないため、コピーして安全な場所に保存してください。
2.4 RFC2136 DNSアップデート
RFC2136 DNS 更新をサポートする Bind、PowerDNS などのオープン ソース DNS サーバーを使用している場合は、以下の手順に従って、PAM360 を使用して DNS ベースのドメイン制御検証手順を自動化します。
- DNSサーバーのIP/ホスト名は、DNSサーバーがインストールまたは実行されているサーバー名/IPアドレスを表します。
- これらの詳細は通常、サーバーのインストールディレクトリにあります。たとえば、Bind9 DNSサーバーの場合、これらはサーバーのインストールディレクトリにあるnamed.local.confファイルにあります。
- キーシークレットを提供します。これは、サーバーのインストールディレクトリにあるキーコンテンツに他なりません。
- キーの名前を入力し、署名アルゴリズムを選択します。
- [保存]をクリックします。
2.5 GoDaddy DNS
DNS検証にGoDaddy DNSを使用している場合は、以下の手順に従って、PAM360を使用してDNSベースのドメイン制御検証手順を自動化します:
GoDaddy API認証情報を取得する手順:
- GoDaddy開発者ポータルに移動し、[APIキー]タブに切り替えます。
- まだログインしていない場合は、GoDaddyアカウントにログインします。
- ログインすると、APIキーを作成および管理できるAPIキーページにリダイレクトされます。
- [新しいAPIキーの作成]をクリックします。
- アプリケーション名を入力し、環境タイプを本番として選択して、[次へ]をクリックします。
- APIキーとそのシークレットが生成されます。シークレットは再度表示されないため、コピーして安全な場所に保存してください。
次に、PAM360インターフェースで、以下の手順に従ってGoDaddy DNSをZeroSSL CAに追加します:
- [証明書] >> [Acme] >> [ZeroSSL]に移動し、右端の[管理]をクリックします。
- [DNS]タブに切り替えて、[追加]をクリックします。[DNSプロバイダー]ドロップダウンから[GoDaddy]を選択します。
- GoDaddyポータルから以前に生成されたキーとシークレットを入力します。
- [保存]をクリックします。
2.6 ClouDNS
DNS検証にClouDNSを使用している場合は、以下の手順に従って、PAM360を使用してDNSベースのドメイン制御検証手順を自動化します:
ClouDNS API認証情報を取得する手順:
- ClouDNSアカウントにログインし、Reseller APIに移動します。
- APIユーザーIDを既に作成している場合は、APIユーザーの下にあります。そうでない場合は、[APIの作成]をクリックして新しいAPIを生成します。
- ClouDNS API認証IDの詳細については、ここをクリックしてください。
次に、PAM360インターフェイスで、下の手順にしたがって、ClouDNSをZeroSSL CAに追加します:
- [証明書] >> [Acme] >> [ZeroSSL]に移動し、右端の[管理]をクリックします。
- [DNS]タブに切り替えて、[追加]をクリックします。
- [DNSプロバイダー]ドロップダウンから[ClouDNS]を選択します。
- 次のいずれかのオプションを選択します:認証ID、サブ認証ID、サブ認証ユーザー。
- 選択したClouDNS認証IDとそれぞれの認証パスワードを入力し、[保存]をクリックします。
- ZeroSSLは、マルチドメイン証明書とワイルドカード証明書を提供します。
- PAM360とZeroSSLの統合は、RSAおよびECアルゴリズムによる暗号化をサポートします。
- PAM360は、http-01およびdns-01ベースのドメイン検証をサポートしています。要件に基づいてチャレンジタイプを選択します。
- dns-01ベースのドメイン検証の場合、チャレンジ検証に構成済みのDNSアカウントを使用している場合は、選択したDNSアカウントのステータスが[管理] >> [DNS]で[有効]にマークされていることを確認してください。
- 秘密キーを変更するオプションは、現在RSAキーアルゴリズムでのみ機能します。
注記:
3.ZeroSSLチャレンジ検証
PAM360は、HTTP-01およびDNS-01チャレンジ(現在、Azure、Cloudflare、Amazon Route 53、RFC2136 DNSアップデート、GoDaddy DNS、ClouDNS)の自動検証を通じて、ドメイン検証を促進します。自動化を有効にするには、最初にエンドサーバーの詳細をPAM360にマップする必要があります。これは、1回限りのプロセスです。
3.1 HTTP-01チャレンジ検証によるドメイン検証
http-01チャレンジによるドメイン検証の場合、
- 実行するチャレンジを表示するウィンドウが開きます。
- エージェントマッピングアイコンをクリックします。
- ポップアップが開きます。ドメインサーバーがLinuxマシンの場合は、必要な詳細を入力して[保存]をクリックします。
ドメインサーバーがWindowsマシンの場合は、以下の手順を使用して、Windowsサーバー用のKey Manager Plusエージェントをダウンロードしてインストールします:
- Windowsサーバー用のKey Manager Plusエージェントのダウンロード:
- Key Manager Plusエージェントパッケージは、自動ドメイン認証によるZeroSSLチャレンジの自動認証に必要な実行ファイル、構成ファイルで構成されるzipファイルです。ダウンロード後、フォルダを解凍し、Windows Domainサーバーにエージェントをインストールします。エージェントをダウンロードするには、
- [証明書] >> [Acme] >> [ZeroSSL]タブに移動し、右上隅にある[管理]ボタンをクリックします。
- Windowsエージェントタブに切り替えます。
- サーバーの互換性(32ビットまたは64ビット)に基づいて、ウィンドウの右上隅からKey Manager Plusエージェントをダウンロードします。
Windowsサーバー用のKey Manager Plusエージェントのインストール:
- コマンドプロンプトを開き、PAM360のインストールディレクトリに移動します。
- コマンド「AgentInstaller.exe start」を実行します。
エージェントを停止してWindowsサービスをアンインストールするには、
- コマンドプロンプトを開き、PAM360のインストールディレクトリに移動します。
- コマンド「AgentInstaller.exe stop」を実行します。
- ドメインサーバーがWindowsマシンの場合は、Windowsエージェントをダウンロードしてドメインサーバーにインストールします。[管理] >> [Windowsエージェント]に移動し、エージェントをダウンロードしてドメインサーバーにインストールします。
- エージェントマッピング設定を構成したら(エージェントマッピングは一回限りの構成です)、PAM360が自動的に、ZeroSSLが生成したチャレンジ認証を処理します。
エージェントマッピングを設定したら、保留中の要求で[保留中]をクリックし、[確認]をクリックします。チャレンジが検証され、証明書要求がZeroSSL CAに送信されます。
3.2 DNS-01チャレンジ検証によるドメイン検証
PAM360からのDNS-01チャレンジ検証の場合、
- ZeroSSLタブに切り替えて、証明書要求に対応する要求ステータス(保留中)をクリックします。
- DNSチャレンジ値とTXTレコードを表示するウィンドウが表示されます。
- DNSアカウントの詳細を既に構成していて、証明書要求の作成時にDNSを選択している場合は、DNSアカウントを要求に割り当てることができます。
- 要求を選択し、[その他]トップメニューから[DNSの割り当て]を選択して、必要なDNSアカウントを選択します。
- DNSアカウントが構成されていない場合、または証明書要求を発行するときにDNSアカウントを選択していない場合、PAM360には、エージェントマッピングを介してDNS-01チャレンジ検証を自動化するオプションがあります。
- 要求の左側にあるエージェントマッピングアイコンをクリックします。エージェントマッピングは1回限りの設定です。
エージェントマッピング
- 開いた[展開]ウィンドウで、次の操作を実行して、エンドサーバーの詳細をPAM360にマップして保存します。
- DNSプロバイダーを選択します。Azure DNSの場合、必要な詳細(サブスクリプションID、ディレクトリID、アプリケーションID、アプリケーションキー、およびリソースグループ名)を入力します。
- Cloudflare DNSの場合、Cloudflareアカウントに関連付けられているメールアドレスとグローバルAPIキーを入力します。
- Amazon Route 53 DNSの場合、AWSアカウントに関連づけられているアクセスキーIDとシークレットを入力します。
- [証明書の展開]チェックボックスを有効にして、ドメインの検証後および連続した更新後に、対応するエンドサーバーへの証明書の展開を自動化します。
- Linuxの場合、エンドサーバーは必要な詳細を提供しますが、Windowsの場合、エンドサーバーはhttp-01チャレンジで説明したのと同じ手順を使用してWindowsエージェントをダウンロードしてインストールします。
- 詳細を入力したら、[保存]をクリックします。エンドサーバーの詳細は正常にマッピングされ、PAM360 に保存されます。これは、[管理]>>[展開]タブから表示または編集できます。
- ZeroSSL統合を使用して、パブリックドメインの証明書のみを要求および取得できます。
- 課題の処理は、自動化せずに手動で行うこともできます。チャレンジ値/テキストレコードをコピーして、ドメインサーバーに手動で貼り付けます。次に、PAM360サーバーで、[保留中の要求]ページに移動し、[確認]をクリックします。チャレンジが検証され、証明書が発行されます。
- PAM360は、エージェントマッピングが利用できない場合にのみ、証明書要求にDNSを使用してチャレンジ検証を自動化します。エージェントの詳細が[管理] >> [展開]タブで利用できる場合、チャレンジの検証はエージェントを介して自動化されます。
- 現在、Key Manager PlusエージェントはWindowsサーバーでのみ使用できます。
- RFC2136 DNS更新の場合、グローバルDNS構成を選択した場合、ドメイン名自体がゾーン名として機能します(グローバルDNS構成は、すべてのゾーンに同じキーシークレットを使用している場合にのみ可能です)。一方、ドメインとエージェントのマッピングを選択した場合は、ドメインごとにゾーン名、キー名、キーシークレットを個別に指定する必要があります。
注記:
4.証明書を調達および保存
検証が成功すると、ZeroSSLは要求された証明書を発行します。
- ウィンドウは、証明書とそのステータスを表示するページに自動的にリダイレクトされます(ステータスは、チャレンジ検証が成功した場合は[利用可能]とマークされ、チャレンジ検証が失敗した場合は[失敗]とマークされます)。
- [利用可能]ボタンをクリックして、証明書をPAM360リポジトリに保存するか、電子メールで送信するか、エクスポートします。
- チャレンジが失敗した場合は、[新しいチャレンジ]をクリックして別のチャレンジのセットを取得し、上記のプロセスを繰り返します。
- 保存すると、証明書はPAM360リポジトリに追加されます。このリポジトリは、[SSL] >> [証明書]タブから表示できます。
5.証明書を更新
ZeroSSLによって発行された証明書の有効期間は90日で、それ以降は無効になります。
証明書の更新は、手動で実行することも、自動ドメイン検証を通じて自動的に実行することもできます。証明書を手動で更新するには、
- [証明書] >> [Acme] >> [ZeroSSL]に移動します。
- 更新する証明書を選択して、[証明書の更新]ボタンをクリックします。
- 証明書が更新され、[証明書のステータス]バーに[更新済み]と表示されます。
- それをクリックして、更新されたバージョンの証明書をPAM360証明書リポジトリに保存します。
メモ:証明書は、証明書リポジトリで更新するために、更新後に保存する必要があります。それ以外の場合は、古いバージョンの証明書のみが引き続きリポジトリに残ります。
エージェントマッピングが構成されている場合、証明書の更新プロセスは手動の介入なしに自動的に実行されます。ZeroSSLから取得した組織内のすべての証明書は、有効期限が切れる15日前に自動的に更新され、アカウント所有者の電子メールアドレスに通知が送信されます。
注記:自動更新は、PAM360リポジトリに保存した証明書のみ適用できます。すなわち、ZeroSSLから証明書を調達した後、自動更新が有効になるには、保存する必要があります。
6.証明書を取り消す
証明書を取り消すと、証明書が無効になり、すぐにWebサイトからHTTPSが削除されます。
証明書を取り消すには、
7.証明書を削除する
証明書を削除すると、PAM360リポジトリから証明書が削除されますが、証明書は引き続き有効です。
証明書を削除するには、
- [証明書] >> [Acme] >> [ZeroSSL]タブに移動します。
- 削除する証明書を選択し、[その他] >> [削除]をクリックします。
- 証明書はPAM360データベースから削除されます。