Mac OS Xには,FileValut機能によって,ホームフォルダを暗号化する機能がありますが,同様にThinkPad X60s上に導入したubuntuの/home/$USERも暗号化させたいもにです。そこで, Ubuntu's Encrypted Home Directory: A Canonical Approach to Data Privacy を参考にして,やってみました。ハマった点が2箇所あるので,手順を引用しながら説明します。
該当箇所は "Ubuntu 9.10 Live Migration to an Encrypted Home Directory" の箇所です。
rm -rf $HOME.old
を実行する前まではやりなおすことができるので,慎重に実行してください。こういう作業を行う際には紛失してもかまわないように,データのバックアップを実行して,外部に保存してください。
以下の作業はTTY端末で実行した方が安全です。gnomeセッションが残っていると,一部のファイル.gvfs/にアクセスする際に問題が発生します。Login画面の所でにCTRL-ALT-F1を同時押しして,TTY端末に落としましょう。
作業開始前,または途中作業がわからなくなって最初からやり直す場合に,$HOME/.Private,$HOME/Private, $HOME/.ecryptfs を削除しておきます。
% sudo rm -rf $HOME/.Private $HOME/Private $HOME/.ecryptfs
セットアップを開始します。
2010年5月8日訂正。h12o様より,ご指摘いただきました。「encryptfs-setup-private」ではなく「ecryptfs-setup-private」です。% encryptfs-setup-private
% ecryptfs-setup-private
login passphrase,mount用pass phraseが聞かれますので,適切に入力します。
一度,log outしlog inしなおして,$HOME/Private がmountされていることを確認しておきます。
% exit
... log in again
% mount | grep "$USER.*ecryptfs*" <- ここで $HOME/Privateがmountされているかどうか確認できます。
これで,$HOME/Privateの中が暗号化されているわけです。これを何とか$HOMEを対象にしたいのが目的です。
encryptするHOMEの内容を$HOME/Privateにsyncしておきます。
% rsync -aP --exclude=.Private/ --exclude=Private --exclude=.ecryptfs $HOME/ $HOME/Private
sync しておいて,$HOME/Private を umount して,一旦 logout します。
% sync
% ecryptfs-umount-private
% exit
再login後,eCryptfsのconfiguration directoryを設定します。
% ecryptfs-umount-private
% cd /
% sudo mkdir -p /home/.ecryptfs/$USER
% sudo mv $HOME/.ecryptfs /home/.ecryptfs/$USER
ここから,新しいhome directoryを設定します。
% sudo mkdir -p -m 700 /home/$USER.new
% sudo chown $USER:$USER /home/$USER.new <- user/groupは適切な値にしておいてください。
% sudo mv $HOME/.Private /home/.ecryptfs/$USER
% sudo ln -s /home/.ecryptfs/$USER/.ecryptfs /home/$USER.new/.ecryptfs
一旦,$HOMEをbackupします,
% sudo mv $HOME $HOME.old
新しいHOME directoryに移行します。
% sudo mv /home/$USER.new $HOME
% echo $HOME > $HOME/.ecryptfs/Private.mnt
% sudo ln -s /usr/share/ecryptfs-utils/ecryptfs-mount-private.txt $HOME/README.txt
% sudo chmod 500 $HOME
一旦,log outして再log in後,configuration direcotry (.ecryptfs) と .Private に対してsymbolic linkを貼ります。
% exit
... log in
% ln -s /home/.ecryptfs/$USER/.ecryptfs $HOME/.ecryptfs
% ln -s /home/.ecryptfs/$USER/.Private $HOME/.Private <- これがないとマウントできない。
最後に,元のHOMEを削除します。
% sudo rm -rf $HOME.old
これで,ThinkPad X60sを持ち歩いても大丈夫になったかなと思います。
2 comments:
「セットアップを開始します。」の次の
「encryptfs-setup-private」は「ecryptfs-setup-private」でしょうか?
h12o様,
ご指摘ありがとうございます。
ご指摘どおり,「ecryptfs-setup-private」が正しいです。お詫びして訂正いたします。
誠に有難うございました。
Post a Comment