15.7. Certificate System のバックアップと復元
Certificate System には、バックアップと復元のツールは含まれません。ただし、Certificate System コンポーネントは手動でアーカイブおよび復元できます。このコンポーネントは、証明書または鍵の情報が失われた場合に情報にアクセスできないデプロイメントに必要な場合があります。Certificate System の主な部分は、データ損失やハードウェアに障害が発生した場合に、通常 3 つにバックアップする必要があります。
- 内部データベース。サブシステムは LDAP データベースを使用してデータを保管します。Directory Server は、独自のバックアップスクリプトと手順を提供します。
-
セキュリティーデータベース。セキュリティーデータベースは、証明書とキー情報を保管します。これらが HSM に保存されている場合は、データをバックアップする方法は HSM ベンダーのドキュメントを参照してください。情報がインスタンスの
aliasディレクトリーのデフォルトディレクトリーに保存されている場合は、インスタンスディレクトリーを使用してバックアップします。これを個別に作成するには、tarまたはzipなどのユーティリティーを使用します。 -
インスタンスディレクトリー。インスタンスディレクトリーには、すべての設定ファイル、セキュリティーデータベース、その他のインスタンスファイルが含まれます。これは、
tarまたはzipなどのユーティリティーを使用してバックアップできます。
15.7.1. LDAP 内部データベースのバックアップおよび復元 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Directory Server のドキュメント には、データベースのバックアップおよび復元の詳細情報が記載されています。
15.7.1.1. LDAP 内部データベースのバックアップ リンクのコピーリンクがクリップボードにコピーされました!
Directory Server インスタンスのバックアップには、dsctl コマンドのサブコマンドのペアが 2 つ利用できます。それぞれのバックアップサブコマンドには、生成したファイルを復元するためのカウンターがあります。
-
db2ldifサブコマンドは、ldif2dbサブコマンドを使用して復元できる LDIF ファイルを作成します。 -
db2bakサブコマンドは、bak2dbサブコマンドを使用して復元できるバックアップファイルを作成します。
15.7.1.1.1. db2ldif を使用したバックアップ リンクのコピーリンクがクリップボードにコピーされました!
db2ldif サブコマンドを実行すると、単一のサブシステムデータベースのバックアップが作成されます。
db2ldif サブコマンドは dirsrv ユーザーで実行するため、/root/ ディレクトリー配下に書き込み権限がありません。そのため、書き込みが可能なパスを提供する必要があります。
PKI サブシステムが使用する各 Directory Server データベースをバックアップします。以下の pki-server ca-db-config-show コマンドを使用して、指定のサブシステムのデータベース名を確認することができます。たとえば、メインデータベースのバックアップを作成するには、userRoot を使用します。
インスタンスを停止します。
dsctl <instance_name> stop
# dsctl <instance_name> stopCopy to Clipboard Copied! Toggle word wrap Toggle overflow データベースを LDIF ファイルにエクスポートします。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow インスタンスを起動します。
dsctl <instance_name> start
# dsctl <instance_name> startCopy to Clipboard Copied! Toggle word wrap Toggle overflow
ldif2db サブコマンドを使用して LDIF ファイルを復元するには、「ldif2db を使用した復元」 を参照してください。
15.7.1.1.2. db2bak を使用したバックアップ リンクのコピーリンクがクリップボードにコピーされました!
db2bak サブコマンドを実行すると、Directory Server (および Directory Server インスタンスが維持するその他のデータベース) のすべての Certificate System サブシステムデータベースがバックアップされます。以下に例を示します。
以下に例を示します。
インスタンスを停止します。
dsctl <instance_name> stop
# dsctl <instance_name> stopCopy to Clipboard Copied! Toggle word wrap Toggle overflow データベースのバックアップを作成します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow インスタンスを起動します。
dsctl <instance_name> start
# dsctl <instance_name> startCopy to Clipboard Copied! Toggle word wrap Toggle overflow
db2bak サブコマンドを dirsrv ユーザーで実行するため、ターゲットディレクトリーは dirsrv で書き込み可能でなければなりません。引数を指定せずにコマンドを実行すると、db2bak が適切な書き込み権限を持つ /var/lib/dirsrv/slapd_-<instance_name>_/bak フォルダーにバックアップが作成されます。
bak2db を使用して LDIF ファイルを復元するには、「bak2db を使用した復元」 を参照してください。
15.7.1.2. LDAP 内部データベースの復元 リンクのコピーリンクがクリップボードにコピーされました!
Directory Server インスタンスをバックアップする方法に応じて、対応するファイルで ldif2db または bak2db を使用して、データベースを復元してください。
データベースを復元する前に、インスタンスを停止してください。
15.7.1.2.1. ldif2db を使用した復元 リンクのコピーリンクがクリップボードにコピーされました!
db2ldif で LDIF ファイルを作成している場合は、ldif2db サブコマンドを使用し、Directory Server インスタンスを停止してファイルをインポートします。1 つのデータベースを指定して、バックアップから復元できます。メインデータベースの場合、userRoot などです。
Directory Server インスタンスを停止します。
dsctl <instance_name> stop
# dsctl <instance_name> stopCopy to Clipboard Copied! Toggle word wrap Toggle overflow LDIF ファイルからデータをインポートします。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Directory Server インスタンスを開始します。
dsctl <instance_name> start
# dsctl <instance_name> startCopy to Clipboard Copied! Toggle word wrap Toggle overflow
15.7.1.2.2. bak2db を使用した復元 リンクのコピーリンクがクリップボードにコピーされました!
db2bak でバックアップファイルを作成した場合は、Directory Server を停止し、bak2db サブコマンドを使用してファイルをインポートします。以下に例を示します。
Directory Server インスタンスを停止します。
dsctl <instance_name> stop
# dsctl <instance_name> stopCopy to Clipboard Copied! Toggle word wrap Toggle overflow データベースを復元します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Directory Server インスタンスを開始します。
dsctl <instance_name> start
# dsctl <instance_name> startCopy to Clipboard Copied! Toggle word wrap Toggle overflow
15.7.2. インスタンスディレクトリーのバックアップおよび復元 リンクのコピーリンクがクリップボードにコピーされました!
インスタンスディレクトリーには、サブシステムインスタンスのすべての設定情報が含まれているため、インスタンスディレクトリーのバックアップを作成すると、内部データベースに含まれていない設定情報が保持されます。
インスタンスまたはセキュリティーデータベースをバックアップする前にサブシステムインスタンスを停止します。
15.7.2.1. インスタンスディレクトリーのバックアップ リンクのコピーリンクがクリップボードにコピーされました!
サブシステムインスタンスを停止します。
pki-server stop <instance_name>
# pki-server stop <instance_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow ディレクトリーを圧縮ファイルに保存します。
cd /var/lib/pki/ tar -chvf /export/archives/pki/<instance_name>.tar <instance_name>/
# cd /var/lib/pki/ # tar -chvf /export/archives/pki/<instance_name>.tar <instance_name>/Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下に例を示します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow サブシステムインスタンスを再起動します。
pki-server start <instance_name>
pki-server start <instance_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow
15.7.2.2. インスタンスディレクトリーの復元 リンクのコピーリンクがクリップボードにコピーされました!
データが破損したり、ハードウェアが破損している場合に、Certificate System のバックアップファイル (alias バックアップおよび完全なインスタンスのディレクトリーバックアップ) の両方を使用して、現在のディレクトリーを交換できます。データを復元するには、unzip または tar ツールを使用してアーカイブファイルを圧縮解除し、既存のファイルにアーカイブをコピーします。
インスタンスディレクトリーを復元するには、以下を実行します。
アーカイブをデプロイメントします。
cd /export/archives/pki/ tar -xvf <instance_name>.tar
cd /export/archives/pki/ tar -xvf <instance_name>.tarCopy to Clipboard Copied! Toggle word wrap Toggle overflow 以下に例を示します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow サブシステムインスタンスが停止していない場合は停止します。
pki-server stop <instance_name>
pki-server stop <instance_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow アーカイブされたファイルをコピーして、インスタンスディレクトリーを復元します。
cp -r /export/archives/pki/<instance_name> /var/lib/pki/<instance_name>
cp -r /export/archives/pki/<instance_name> /var/lib/pki/<instance_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下に例を示します。
cp -r /tmp/pki-tomcat/ca/ /var/lib/pki/pki-tomcat/ca/
# cp -r /tmp/pki-tomcat/ca/ /var/lib/pki/pki-tomcat/ca/Copy to Clipboard Copied! Toggle word wrap Toggle overflow 復元されたファイルの所有権およびグループのパーミッションが
pkiuserに設定されていることを確認します。chown -R pkiuser:pkiuser /var/lib/pki/pki-tomcat/ca/
# chown -R pkiuser:pkiuser /var/lib/pki/pki-tomcat/ca/Copy to Clipboard Copied! Toggle word wrap Toggle overflow サブシステムインスタンスを再起動します。
pki-server start <instance_name>
pki-server start <instance_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow