TOP > VPDisk > 運用応用例 > VPDiskのコマンドをスクリプトから使用する方法

※VPDiskの販売は2014年2月末をもって終了し、現在はサポートのみ行っております。導入をご検討のお客様は後継商品のFileProtectorをご参照ください。

VPDiskのコマンドをスクリプトから使用する方法

VPDiskのコマンドをスクリプトから発行することは容易です。
いくつかの例をご説明します。

1.vpd delegateコマンド(暗号化コマンド)を、Perlスクリプト内から発行

#!/usr/bin/perl
 my $passwd = "sample";
 my $program = "/home/hoge/program1"
 system "/usr/bin/vpd delegate $program /home/hoge/.keybox $passwd";
 print "Retuen value : $?“

2.vpd startコマンド(VPDisk使用開始コマンド)をPerlスクリプトの中から発行

#!/usr/bin/perl
 my $passwd = "minoru";
 my $program-and-args = "/home/okamoto/program1 arg1 arg2"
 system “/usr/bin/echo $passwd | /usr/bin/vpd start -f /home/okamoto/.keybox -- $program-and-args";
 print "Retuen value : $?“

# vpd delegate /sbin/syslogd <キーボックスのパス/キーボックス名>
# vpd delegate /usr/sbin/logrotate <キーボックスのパス/キーボックス名> ← ログスイッチのプログラム
(# vpd delegate /sbin/minilogd <キーボックスのパス/キーボックス名> ← minilogd経由でsyslogを書くものがある場合は、これも暗号鍵を使えるようにします)

※1.
このスクリプトの最後の行で、“$?”にてリターンコードをチェックしていますが、これで、/home/okamoto/program1 プログラムのリターンコードが拾えております。

※2.
VPDiskコマンドで、”vpd start”、”vpd lock/unlock”コマンドは、引数にキーボックスのパスワードを取りませんので、 スクリプトから発行する場合は、パスワードを”vpd start”コマンドの標準入力にecho等で渡す必要があります。

3.vpd lockコマンド(暗号化コマンド)をPerlスクリプトの中から発行

$ vpd lock test

※1.
この例では、testというファイルを、デフォルトの鍵mykeyとデフォルトの暗号アルゴリズムAESで暗号化します。

※2.結果の確認

暗号化した際の暗号鍵と、同一の暗号鍵が使える状態では、普通のファイルとしてアクセスできます。
$ more test
abcdefghi
123456789

不整合な暗号鍵または、暗号鍵が使用されない状態では、暗号状態のまま表示されます。
$ more test
K<O@S+DW/H[f~唇w瀬S{肌W亅[・・・sc共wg妾{k闘o硫ピ峩・涅宮羮準鄲塔・裸・寞sフ沛wミ纉{ヤ逞リ・・・・s」倶wァ剰{ォ南ッ歴sロw゚

※3.ディレクトリ配下全てのファイルを暗号化

$ find dirname -type f -exec vpd lock -k key1 -c BlowFish {} \;

この例では、dirnameディレクトリ下の全てのファイルを、暗号鍵key1と暗号アルゴリズムBlowFishで暗号化します。

以上で、スクリプト内からVPDiskコマンドを発行するの説明は終了です。