「eCryptfs」の版間の差分
(同じ利用者による、間の1版が非表示) | |||
行9: | 行9: | ||
[[eCryptfs]]は、それぞれのファイルのヘッダの暗号化したメタデータを保存します。ファイルは、ホスト間でコピーできます。Linux kernel keyring の適切な鍵でファイルは[[復号]]されます。[[eCryptfs]]は、"[[ファイルシステム]]の[[GnuPG]]"のような種類として考えることができます。 | [[eCryptfs]]は、それぞれのファイルのヘッダの暗号化したメタデータを保存します。ファイルは、ホスト間でコピーできます。Linux kernel keyring の適切な鍵でファイルは[[復号]]されます。[[eCryptfs]]は、"[[ファイルシステム]]の[[GnuPG]]"のような種類として考えることができます。 | ||
+ | [[eCryptfs]]は、オンディスク形式をサポートしていないため、擬似ファイルシステムと呼ばれています。ファイルシステムの上に実装された、ファイルシステム層です。 | ||
+ | |||
+ | [[eCryptfs]]は、オンディスクのファイルシステムではないので、mkfsなどのコマンドで作成しません。[[eCryptfs]]で保護されたファイルシステムを扱う場合には、[[ecryptfs-utils]]パッケージをインストールします。 | ||
== インストール == | == インストール == | ||
{{apt|ecryptfs-utils}} | {{apt|ecryptfs-utils}} | ||
− | |||
== mount.ecryptfs == | == mount.ecryptfs == | ||
mount.ecryptfs は、[[eCryptfs]] マウントヘルパーです。 | mount.ecryptfs は、[[eCryptfs]] マウントヘルパーです。 | ||
行24: | 行26: | ||
ecryptfsdは、[[eCryptfs]]マウントポイント下で、ユーザ実行ファイル操作として実行するユーザースペースデーモンです。eCryptfs カーネルモジュールから公開鍵リクエストをサービスします。それらのリクエストは、ファイルオープンイベントの/dev/ecryptfsを通して送信されます。ecryptfsd は、公開鍵モジュールとマウントが完了したときに実行される必要があります。 | ecryptfsdは、[[eCryptfs]]マウントポイント下で、ユーザ実行ファイル操作として実行するユーザースペースデーモンです。eCryptfs カーネルモジュールから公開鍵リクエストをサービスします。それらのリクエストは、ファイルオープンイベントの/dev/ecryptfsを通して送信されます。ecryptfsd は、公開鍵モジュールとマウントが完了したときに実行される必要があります。 | ||
− | このデーモンは、ecryptfsdの実行によって起動されます。ecryptfsdは、デーモンを起動したユーザのコンテキスト下ですべての | + | このデーモンは、ecryptfsdの実行によって起動されます。ecryptfsdは、デーモンを起動したユーザのコンテキスト下ですべての eCryptfs ファイルシステムリクエストをサービスするべきデーモンとしてカーネルに登録されます。 |
== ecryptfs-manager == | == ecryptfs-manager == | ||
ecryptfs-managerは、鍵のようなeCryptfsオブジェクトを管理するアプリケーションです。 | ecryptfs-managerは、鍵のようなeCryptfsオブジェクトを管理するアプリケーションです。 | ||
新しい鍵を生成するキーモジュールとして ecryptfs-managerを使えます。 | 新しい鍵を生成するキーモジュールとして ecryptfs-managerを使えます。 | ||
+ | == 暗号 == | ||
+ | === 暗号化キーのタイプ === | ||
+ | 暗号化キーのタイプは、以下のいずれかです。 | ||
+ | * [[OpenSSL]] | ||
+ | * tspi | ||
+ | * [[パスフレーズ|passphrase]] ([[パスフレーズ]]) | ||
+ | [[パスフレーズ]]を選択した場合、[[mount]]するときに[[パスフレーズ]]を求められます。 | ||
+ | === 暗号アルゴリズム === | ||
+ | [[暗号アルゴリズム]]は、以下のとおりです。 | ||
+ | * [[AES暗号|AES]] | ||
+ | * [[Blowfish]] | ||
+ | * [[DES暗号|DES]]3_ede | ||
+ | * cast6 | ||
+ | * cast5 | ||
+ | === キーのバイトサイズ === | ||
+ | キーのバイトサイズ | ||
+ | * 16 | ||
+ | * 24 | ||
+ | * 32 | ||
+ | === その他 === | ||
+ | * plaintext passthrought を有効にするか? | ||
+ | * filename encryption を有効にするか? | ||
== 使い方 == | == 使い方 == | ||
+ | === 暗号化されたファイルシステムとしてマウントする === | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
sudo mount -t ecryptfs /path/to/ecrypted/directory /mnt | sudo mount -t ecryptfs /path/to/ecrypted/directory /mnt | ||
</syntaxhighlight> | </syntaxhighlight> | ||
+ | |||
+ | /mnt に対するファイルに関連する書き込みは、暗号化されて /path/to/encrypted/directory のファイルシステムに書き込まれます。 | ||
+ | /path/to/encrypted/directory の直接書き込みを行うと不整合を起こす可能性があります。そのため、/path/to/encrypted/directory と /mnt を同一にすることが推奨されます。 | ||
+ | |||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
− | sudo | + | sudo mount -t ecryptfs /home /home |
</syntaxhighlight> | </syntaxhighlight> | ||
+ | 上記の例では、 /home に対するすべてのファイル操作が [[eCryptfs]]層を通過します。 | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | sudo ecryptfs-mount-private | ||
+ | </syntaxhighlight> | ||
=== あなたの暗号化されたプライベートディレクトリをセットアップする === | === あなたの暗号化されたプライベートディレクトリをセットアップする === | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
行49: | 行82: | ||
$ ln -s ~/Private/.ssh .ssh | $ ln -s ~/Private/.ssh .ssh | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | |||
== 関連項目 == | == 関連項目 == | ||
{{ecryptfs}} | {{ecryptfs}} | ||
− | |||
<!-- vim: filetype=mediawiki | <!-- vim: filetype=mediawiki | ||
--> | --> |
2015年9月23日 (水) 17:08時点における最新版
eCryptfs とは、Linux向けのエンタープライズ暗号ファイルシステムです。
読み方
- eCryptfs
- いーくりぷとえふえす
目次
概要
eCryptfsは、Linux向けのPOSIX準拠暗号スタックファイルシステムです。 eCryptfsは、それぞれのファイルのヘッダの暗号化したメタデータを保存します。ファイルは、ホスト間でコピーできます。Linux kernel keyring の適切な鍵でファイルは復号されます。eCryptfsは、"ファイルシステムのGnuPG"のような種類として考えることができます。
eCryptfsは、オンディスク形式をサポートしていないため、擬似ファイルシステムと呼ばれています。ファイルシステムの上に実装された、ファイルシステム層です。
eCryptfsは、オンディスクのファイルシステムではないので、mkfsなどのコマンドで作成しません。eCryptfsで保護されたファイルシステムを扱う場合には、ecryptfs-utilsパッケージをインストールします。
インストール
Ubuntu/Debianにインストールする場合
apt-get コマンドでインストールする場合です。
sudo apt-get install ecryptfs-utils
mount.ecryptfs
mount.ecryptfs は、eCryptfs マウントヘルパーです。
このマウントユーティリティは、いろいろなコンフィグレーションタスクを実行するためのマウントヘルパーに従います。マウントオプションをマニュアルで指定するときに、-iオプションを使用してマウントヘルパーにバイパスします。
mount -t ecryptfs /root/crypt /mnt/crypt
ecryptfsd
ユーザースペース eCryptfs デーモンです。 ecryptfsdは、eCryptfsマウントポイント下で、ユーザ実行ファイル操作として実行するユーザースペースデーモンです。eCryptfs カーネルモジュールから公開鍵リクエストをサービスします。それらのリクエストは、ファイルオープンイベントの/dev/ecryptfsを通して送信されます。ecryptfsd は、公開鍵モジュールとマウントが完了したときに実行される必要があります。
このデーモンは、ecryptfsdの実行によって起動されます。ecryptfsdは、デーモンを起動したユーザのコンテキスト下ですべての eCryptfs ファイルシステムリクエストをサービスするべきデーモンとしてカーネルに登録されます。
ecryptfs-manager
ecryptfs-managerは、鍵のようなeCryptfsオブジェクトを管理するアプリケーションです。 新しい鍵を生成するキーモジュールとして ecryptfs-managerを使えます。
暗号
暗号化キーのタイプ
暗号化キーのタイプは、以下のいずれかです。
- OpenSSL
- tspi
- passphrase (パスフレーズ)
パスフレーズを選択した場合、mountするときにパスフレーズを求められます。
暗号アルゴリズム
暗号アルゴリズムは、以下のとおりです。
キーのバイトサイズ
キーのバイトサイズ
- 16
- 24
- 32
その他
- plaintext passthrought を有効にするか?
- filename encryption を有効にするか?
使い方
暗号化されたファイルシステムとしてマウントする
sudo mount -t ecryptfs /path/to/ecrypted/directory /mnt
/mnt に対するファイルに関連する書き込みは、暗号化されて /path/to/encrypted/directory のファイルシステムに書き込まれます。 /path/to/encrypted/directory の直接書き込みを行うと不整合を起こす可能性があります。そのため、/path/to/encrypted/directory と /mnt を同一にすることが推奨されます。
sudo mount -t ecryptfs /home /home
上記の例では、 /home に対するすべてのファイル操作が eCryptfs層を通過します。
sudo ecryptfs-mount-private
あなたの暗号化されたプライベートディレクトリをセットアップする
ecryptfs-setup-private
暗号化されたプライベートディレクトリを使用する
~/Privateに書いたファイルやディレクトリのすべての内容は、ディスクに書き込まれるときに暗号化されます。隠しディレクトリ ~/.Privateに書き込まれます。
sshの鍵、Eメールなどのデータを暗号化する
.ssh, .gnupg, .mozilla, Mail など暗号化ディレクトリに移動し、シンボリックリンクを作ります。
$ mv .ssh ~/Private $ ln -s ~/Private/.ssh .ssh
関連項目
- Windowsセキュリティ
- BitLocker
- トラステッドプラットフォームモジュール
- EFS
- BitLocker
- Linux
- eCryptfs: 暗号化ファイルシステム
- ecryptfs-utils: eCryptfsユーテリティ
- eCryptfs: 暗号化ファイルシステム