dm-crypt
関連記事
この記事では dm-crypt を使って Arch Linux で暗号化をセットアップする方法を取り上げます。dm-crypt は Linux カーネルに含まれている標準の device-mapper 暗号化機能です。cryptsetup プロジェクトの wiki より:
- Device-mapper は Linux 2.6 と 3.x カーネルでブロックデバイスの仮想レイヤーを作成するための汎用の手段として提供されているインフラです。Device-mapper の crypt ターゲットはカーネルの crypto API によるブロックデバイスの透過的な暗号化を実現します。ユーザーは対称鍵暗号・暗号化モード・鍵・iv 生成モードを指定して
/dev
に新しいブロックデバイスを作成することができます。デバイスへの書き込みは暗号化され、読み込むときに復号化されます。通常のデバイスとしてファイルシステムをマウントしたり、RAID や LVM ボリュームなど他のデバイスに dm-crypt デバイスをスタックすることが可能です。dm-crypt のマッピングテーブルに関する基本的なドキュメントはカーネルソースに付属しており、最新版は git リポジトリに存在します。
一般的な筋書き
このセクションでは dm-crypt を使用してシステムや個別のファイルシステムのマウントポイントを暗号化する基本的なシナリオを紹介します。このシナリオは他のサブページと必要なところでクロスします。様々な実践的な暗号化手段を習熟するための出発点です。
パーティションや loop デバイスなど、システムを起動するのには使われないデバイスを暗号化する必要がある場合は Dm-crypt/root 以外のファイルシステムの暗号化を見て下さい。
システム全体、特に root パーティションを暗号化したい場合は Dm-crypt/システム全体の暗号化を見て下さい。LUKS 拡張で dm-crypt を使ったり、plain モードの暗号化や、暗号化と LVM など、複数のシナリオが用意されています。
ドライブの準備
このステップではドライブを完全に消去したりパーティショニングする操作について扱います。
Dm-crypt/ドライブの準備を見て下さい。
デバイスの暗号化
このセクションでは cryptsetup コマンドを使って手動で dm-crypt を利用してシステムを暗号化する方法、LUKS やキーファイルの使い方について説明します。
Dm-crypt/デバイスの暗号化を見て下さい。
システム設定
このページではシステムを暗号化する際の mkinitcpio, ブートローダー, crypttab ファイルの設定方法を記述しています
Dm-crypt/システム設定を見て下さい。
スワップデバイスの暗号化
必要ならば、スワップパーティションを暗号化されたシステムに追加することができます。システムによってスワップされたデータを保護するためにスワップパーティションも同じように暗号化しなくてはなりません。このパートでは suspend-to-disk を使う場合と使わない場合に分けて暗号化する方法を示します。
Dm-crypt/スワップの暗号化を見て下さい。
特記事項
このパートでは暗号化されていない boot パーティションのセキュア化や GPG または OpenSSL 暗号化キーファイルの使用、ネットワークを通して起動して鍵を解除する方法、または SSD の discard/TRIM の設定、さらに encrypt フックと複数のディスクの扱い方など、特別な操作について説明します。
Dm-crypt/特記事項を見て下さい。
参照
- dm-crypt - プロジェクトのホームページ
- cryptsetup - LUKS のホームページと FAQ - メインのヘルプ。
- cryptsetup リポジトリ と リリースアーカイブ。
- DOXBOX - Microsoft Windows における LUKS で暗号化されたボリュームの解除をサポート。