PowerGres

技術情報 | PowerGres体験記 | 第 7 回 暗号化によるデータ保護 – 高信頼化ソリューション

このページに記載の情報は、2005 年にリリースした PowerGres Plus V2 を対象としています。PowerGres Plus V2 の販売はすでに終了しています。

PowerGres Plus の最新バージョンに関する情報は、製品紹介ページまたは PowerGres 体験記ページを参照してください。

第 7 回 暗号化によるデータ保護 『NetVault を利用したバックアップ運用 Part 2』

はじめに

近頃、問題となっている企業の顧客情報漏洩や、2005 年 4 月から施行された個人情報保護法をうけ、データベースのセキュリティ対策は、ますます重要になってきています。

データベースのセキュリティ対策には、大きく 2 つのポイントがあります。 1 つは、データベース本体のセキュリティ対策です。 この対策は、年々関心が高まっており、様々な機能がデータベースに導入されてきています。 もう 1 つは、バックアップデータのセキュリティ対策です。 データベース本体のセキュリティ対策は万全でも、バックアップデータのセキュリティ対策は、後回しになりがちです。

そこで今回は、第 6 回 NetVault 連携による運用 でご紹介した NetVault に、暗号化機能を組み込む方法をご紹介します。 暗号化機能は、プラグインをインストールするだけで簡単に導入することができます。 さらに、第 5 回 差分バックアップ利用による運用 でご紹介したコマンドによる差分バックアップを、NetVault から行う方法もご紹介します。 差分バックアップを導入することで、日々の運用を効率化できます。

暗号化機能について

NetVault の暗号化機能は、プラグインとして提供されています。 このプラグインをクライアントマシンに組み込みバックアップを行うと、バックアップデータを暗号化して、サーバマシンに転送します。 リストアは、サーバマシンからクライアントマシンに暗号化したままバックアップデータを転送し、クライアントマシンでデータを復号化します。 このように、保存したバックアップデータだけでなく、ネットワークを流れるデータもすべて暗号化されます。

暗号化機能を組み込んだシステム

図 1: 暗号化機能を組み込んだシステム

暗号化機能の導入

今回は、第 6 回 NetVault 連携による運用 でご紹介した環境に、以下の手順で暗号化機能を導入します。

暗号化プラグインのダウンロード

暗号化プラグインを入手します。 今回は、暗号化プラグインの評価版を使用します。 評価版は、バックボーン・ソフトウェア社の以下のサイトから申請を行い、入手します。

https://www.bakbone.co.jp/products/downloads.html

申請後、メールでダウンロードサイトの URL が通知されます。 そこから暗号化プラグインをダウンロードします。

パッケージ名 Encryption, Release 1.15
ファイル名 csp1f10.npk

リリース番号、ファイル名は、ダウンロード時点のものです。 評価版は 45 日間、フル機能を試用できます。 その後、正式なライセンスキーを購入し、サーバマシンにインストールすれば、評価期間中に作成した設定やバックアップデータを継続して使用することもできます。

ライセンスキーの申請

暗号化プラグインを使用するには、ライセンスキーが必要です。 以下の URL から、暗号化プラグインのライセンスキーを申請します。

https://www.bakbone.co.jp/support/evaluation_key.html

申請後、メールでクライアントマシンに登録する Encryption ライセンスキーとサーバマシンに登録する Server Evaluation ライセンスキーが送られてきます。

暗号化プラグインのインストール

以下の手順でクライアントマシンに暗号化プラグインをインストールします。

NetVault GUI の起動

クライアントマシンで、NetVault GUI を起動します。 root で、次のコマンドを入力します。

# nvgui
プラグインのインストール

NetVault GUI の Client Management ボタンをクリックします。 クライアント から、クライアントマシンを右クリックし、ソフトウェアのインストール をクリックします。 ファイル選択から、ダウンロードした暗号化プラグイン (csp1f10.npk) を指定します。

暗号化プラグインのインストール

図 2: 暗号化プラグインのインストール

インストールの確認

インストールに成功すると、以下のメッセージが表示されます。 メッセージに従い、NetVault を再起動します。

インストール完了

図 3: インストール完了

クライアントマシンへのライセンスキーの登録

以下の手順でクライアントマシンにライセンスキーを登録します。

NetVault GUI の起動

クライアントマシンで、NetVault GUI を起動します。 root で、次のコマンドを入力します。

# nvgui
ライセンスキーの入力

NetVault GUI の Client Management ボタンをクリックします。 クライアント から、クライアントマシンを右クリックし、ライセンスキーのインストール をクリックします。 入力フィールドに、メールで通知された Encryption ライセンスキーを入力し、OK をクリックします。

ライセンスキーの入力

図 4: ライセンスキーの入力

設定の確認

ライセンスキーの設定が完了すると以下のメッセージが表示されますので、OK をクリックします。

ライセンスキーの設定完了

図 5: ライセンスキーの設定完了

サーバマシンへのライセンスキーの登録

以下の手順で、サーバマシンにもクライアントマシンと同様にライセンスキーを登録します。

NetVault GUI の Client Management ボタンをクリックします。 クライアント から、サーバマシンを右クリックし、ライセンスキーのインストール をクリックします。 入力フィールドに、メールで通知された Server Evaluation ライセンスキーを入力し、OK をクリックします。

暗号化機能の設定

以下の手順で暗号化機能の設定を行います。

Configurator の起動

クライアントマシンで、Configurator を起動します。 root で、次のコマンドを入力します。

# nvconfigurator
暗号化機能の設定
暗号化 タブを選択します。 このクライアントで機密暗号化機能を使用する をチェックします。 暗号化キー文字 に任意の文字列を入力し、OK をクリックします。

暗号化機能の設定

図 6: 暗号化機能の設定

以上で暗号化機能の導入が完了しました。

暗号化バックアップの実践

Configurator で このクライアントで機密暗号化機能を使用する をチェックすれば、バックアップデータは自動的に暗号化されます。

今回は、第 5 回 差分バックアップ利用による運用 でご紹介した差分バックアップを NetVault で行う方法をご紹介します。

バックアップの流れ

NetVault を使用した差分バックアップは、第 5 回 差分バックアップ利用による運用 でご紹介したスクリプトファイルと NetVault のバックアップ機能を組み合わせて行います。

具体的には、バックアップ対象のマシンに退避用ディレクトリを用意し、スクリプトを使用して、日々のバックアップデータをここに退避します。 次に、NetVault のバックアップ機能を使い、退避用ディレクトリからサーバマシンに暗号化バックアップを行います。

バックアップの流れ

図 7: バックアップの流れ

バックアップのスケジュール

日曜日に全体バックアップを行い、月曜日から土曜日までは差分バックアップを行う運用例をご紹介します。

バックアップの運用スケジュール

図 8: バックアップの運用スケジュール

スクリプトファイルの準備

バックアップ、リストアで使用するスクリプトファイルを準備します。

差分バックアップ用スクリプトファイル

第 5 回 差分バックアップ利用による運用 でご紹介した以下のサンプルスクリプトファイルを用意します。

make-diff-file.sh 差分情報格納ファイルを作成するスクリプト
full-copy.sh 全体バックアップを行うスクリプト
diff-copy.sh 差分バックアップを行うスクリプト
rcv-root.sh インスタンス復旧用ディレクトリを作成するスクリプト
rcv-instance-diff.sh インスタンスを復旧するスクリプト
スクリプトファイルの登録

スクリプトファイルをNetVaultから呼び出すために、full-copy.sh、diff-copy.sh、rcv-instance-diff.sh を NetVault のインストール先の scripts ディレクトリに実行権をつけて保存します。

呼び出し用スクリプトファイルの登録

full-copy.sh、diff-copy.sh、rcv-instance-diff.sh は、インスタンス管理者で実行する必要がありますが、NetVault は root でスクリプトを起動します。 インスタンス管理者で実行するために、以下のような 3 つの呼び出し用スクリプトファイルを作成します。

呼び出し用スクリプトファイル

図 9: 呼び出し用スクリプトファイル

呼び出し用スクリプトファイルも NetVault のインストール先の scripts ディレクトリに実行権をつけて保存します。

差分情報格納ファイルの作成

クライアントマシンに差分情報を格納するファイルを作成します。

インスタンス管理者で以下のスクリプトを実行します。 第 1 パラメタは、差分バックアップを行う回数を指定します。

$ sh ./make-diff-file.sh 7

正常に実行されると以下のメッセージが表示されます。

make-diff-file.sh の実行結果

図 10: make-diff-file.sh の実行結果

退避用ディレクトリの作成

バックアップデータを退避するディレクトリを作成します。 以下は、/PlusArchive/postgres というディレクトリを作成する例です。

root で、次のコマンドを入力します。

# mkdir -p /PlusArchive/postgres
# chown postgres:postgres /PlusArchive/postgres
バックアップスケジュールの登録

NetVault に全体バックアップと差分バックアップの 2 つのスケジュールを登録します。

以下に全体バックアップのスケジュールを登録する手順をご紹介します。

NetVault の起動

クライアントマシンで、NetVault GUI を起動します。 root で、次のコマンドを入力します。

# nvgui
退避用ディレクトリの選択

NetVault GUI の Backup ボタンをクリックし、セレクション タブをアクティブにした状態で、バックアップするクライアントマシンをダブルクリックします。 次に、クライアントマシンの File System から、退避用ディレクトリをチェックします。

退避用ディレクトリの選択

図 11: 退避用ディレクトリの選択

スケジュールの設定
スケジュール タブをアクティブにし、実行スケジュールを設定します。 全体バックアップは、毎週日曜日を設定します。

全体バックアップのスケジュール

図 12: 全体バックアップのスケジュール

スクリプトファイルの設定
詳細設定 タブをアクティブにし、プレ・スクリプトpre-full.sh を設定します。

全体バックアップの詳細設定

図 13: 全体バックアップの詳細設定

バックアップの登録

ジョブ名 にバックアップジョブのタイトルを入れ、プルダウンメニューの 実行 を選択するか、ツールバーの 実行 ボタンをクリックします。

バックアップが登録されると「ジョブ xx 実行成功」と表示されます。

全体バックアップのスケジュール登録完了

図 14: 全体バックアップのスケジュール登録完了

差分バックアップについても、上記の手順でスケジュールを登録します。 差分バックアップのスケジュールは、月曜日から土曜日までとし、スクリプトファイルの設定は、プレ・スクリプトpre-diff.sh を設定します。

インスタンスの復旧

クライアントマシンにインスタンスディレクトリ、バックアップディレクトリ、データベーススペースを作成します。

インスタンス管理者で以下のスクリプトを実行します。

$ sh ./rcv-root.sh

正常に実行されると以下のメッセージが表示されます。

rcv-root.sh の実行結果

図 15: rcv-root.sh の実行結果

次に、NetVault から以下の手順でリストアを行います。

NetVault の起動

クライアントマシンで、NetVault GUI を起動します。 root で、次のコマンドを入力します。

# nvgui
セーブセットの選択

NetVault GUI の Restore ボタンをクリックし、セレクション タブをアクティブにした状態で、クライアントマシンをダブルクリックします。 バックアップされたセーブセットのジョブ名が表示されますので、リストアするものをチェックします。

セーブセットの選択

図 16: セーブセットの選択

リストアするマシンの選択

クライアント指定 タブをアクティブにし、リストアするクライアントマシンをチェックします。

クライアントマシンの選択

図 17: クライアントマシンの選択

スクリプトファイルの設定

詳細設定 タブをアクティブにし、 ポスト・スクリプトpost-rcv.sh を設定します。

リストアの詳細設定

図 18: リストアの詳細設定

リストアの実行

ジョブ名 にリストアジョブのタイトルを入れ、プルダウンメニューの 実行 を選択するか、ツールバーの 実行 ボタンをクリックします。

リストアに成功すると「ジョブ xx 実行成功」と表示されます。

リストアの実行

図 19: リストアの実行

最後に

今回は、NetVault に暗号化機能を組み込み、差分バックアップを行う方法をご紹介しました。 暗号化機能は、プラグインをインストールするだけで簡単に導入することができ、暗号化を意識せずに、安全な運用ができます。 また、差分バックアップと組み合わせて運用することで、日々の運用コストを軽減することもできます。

今回ご紹介したスクリプトファイルは、サンプルとして添付しました。 環境に合わせてご利用ください。

製品・サービスに関するお問い合わせ
03-5979-2701

お問い合せ受付時間 月 - 金 10:00 - 17:00

メールフォームでのお問い合わせ

ページトップへ