EncFS ってのがあるの知った
恥ずかしながら EncFS なる暗号ファイルシステムがあることを昨日知ったとこ。以前、僕が参加していた Momonga Linux にも fuse-encfs という名前でパッケージがあり、今まで気が付かなかったのが不思議だ。
FUSE を用いて実装されていて、なるほどなあと思った。というか、あって当然ともいえる機能だろうと感じた。
ただ使うだけであればとても簡単で、ヘルプメッセージに出てくる通りに encfs コマンドを実行すればいい。
$ encfs ビルド: encfs バージョン 1.7.4 使い方: encfs [オプション] <ルートディレクトリ> <マウントポイント> [-- [FUSE マ ウントオプション]] 共通のオプション: -H FUSE マウントオプションを表示する -s マルチスレッドを無効にする -f フォアグラウンドで動作する(デーモン化しない)。 エラーメッセージはsyslogではなく 標準エラー出力に出力される。 -v, --verbose 冗長モード: encfsのデバッグメッセージを出力する -i, --idle=MINUTES 一定時間使用されなかったら自動でマウントを解除する --anykey 正しい鍵が使用されているかどうか確認しない --forcedecode エラーが検出された場合でもデータを復号する (MAC ブロックヘッダを使用するファイルシステム用) -- public 通常のマルチユーザファイルシステムとして動作する (root 権限で encfs を実行する必要がある) --reverse reverse encryption --extpass=program パスワードプロンプトに外部プログラムを使用する 例えば、~/.crypt にあるrawストレージを ~/crypt にマウントするには : encfs ~/.crypt ~/crypt より詳しい情報は man ページ encfs(1) を参照してください
こんなふうに。~/.crypt に暗号化されたデータが入る。
$ mkdir ~/.crypt ~/crypt $ encfs ~/.crypt ~/crypt 新しい暗号化ボリュームを作成します。 Please choose from one of the following options: enter "x" for expert configuration mode, enter "p" for pre-configured paranoia mode, anything else, or an empty line will select standard mode. ?> Standard configuration selected. 設定が完了しました。以下のプロパティのファイルシステムが 作成されます: ファイルシステム暗号アルゴリズム: "ssl/aes", バージョン 3:0:2 Filename encoding: "nameio/block", version 3:0:1 鍵サイズ: 192 ビット Block Size: 1024 bytes Each file contains 8 byte header with unique IV data. Filenames encoded using IV chaining mode. File holes passed through to ciphertext. Now you will need to enter a password for your filesystem. You will need to remember this password, as there is absolutely no recovery mechanism. However, the password can be changed later using encfsctl. 新しい Encfs パスワード: Encfs パスワードの確認:
ちなみに、たとえば上の例でいうと ~/crypt が空でないとマウントのときにエラーになるのが僕は嫌なので、nonempty オプションを渡すようにしている。
$ encfs ~/.crypt ~/crypt -- -o nonempty
アンマウントは sshfs とかと同じで fusermount コマンドで行う。
$ fusermount -u ~/crypt
まあ、とりあえず面白いなと思っただけです。