Open2
Linuxの暗号化ファイルシステムの種類
- 主な暗号化ファイルシステムの種類:
a) dm-crypt:
- Linuxの標準的なディスク暗号化システム
- ブロックデバイスレベルでの暗号化
- LUKSと組み合わせて使用されることが多い
b) LUKS (Linux Unified Key Setup):
- dm-cryptの上位層
- より使いやすいインターフェース提供
- 複数の暗号化キーをサポート
c) eCryptfs:
- ファイルシステムレベルの暗号化
- 個別のディレクトリやファイルを暗号化可能
- Ubuntuのホームディレクトリ暗号化で使用
- 各システムの特徴:
LUKS/dm-cryptの特徴:
# デバイスの暗号化
cryptsetup luksFormat /dev/sdb1
# 暗号化デバイスのオープン
cryptsetup luksOpen /dev/sdb1 secret_data
# ファイルシステム作成
mkfs.ext4 /dev/mapper/secret_data
# マウント
mount /dev/mapper/secret_data /mnt/encrypted
eCryptfsの特徴:
# ディレクトリの暗号化
mount -t ecryptfs /secret /secret
# オプション指定
mount -t ecryptfs /source /mount -o key=passphrase
- 用途による使い分け:
全ディスク暗号化:
- LUKS/dm-crypt
- システム全体のセキュリティ確保
個別ディレクトリ暗号化:
- eCryptfs
- 特定のデータのみ保護
- 主な管理コマンド:
LUKS関連:
# デバイス情報の表示
cryptsetup luksDump /dev/sdb1
# パスフレーズの変更
cryptsetup luksChangeKey /dev/sdb1
# スロットの追加
cryptsetup luksAddKey /dev/sdb1
- セキュリティ考慮事項:
- 強力なパスフレーズの使用
- バックアップの重要性
- キー管理の慎重な計画
- パフォーマンスへの影響考慮
- LPIC-201での重要ポイント:
- 基本的な暗号化の概念
- LUKS/dm-cryptの基本操作
- cryptsetupコマンドの使用法
- トラブルシューティング方法
- トラブルシューティング:
一般的な問題:
- ブート時の暗号化デバイス認識
- パスフレーズ忘れ
- パフォーマンス問題
対処方法:
- rescue modeでの回復
- バックアップからの復旧
- パフォーマンスチューニング
- 実践的な使用例:
システム全体の暗号化:
# インストール時に選択
# または後からの暗号化設定
特定の機密データの保護:
# 暗号化コンテナの作成
# 個別ディレクトリの暗号化
LUKSのマスターキーについて
- LUKSマスターキーの基本概念:
- データの実際の暗号化に使用される
- 直接ユーザーが管理するものではない
- システムによって自動的に生成・管理
- キースロット機能:
- 最大8つのキースロットを持つ
- 各スロットにパスフレーズを設定可能
- 同じマスターキーに複数のパスフレーズでアクセス可能
- 主なコマンドと使用例:
キースロットの管理:
# キースロットの状態確認
cryptsetup luksDump /dev/sda1
# 新しいキースロットにパスフレーズを追加
cryptsetup luksAddKey /dev/sda1
# 特定のキースロットを削除
cryptsetup luksKillSlot /dev/sda1 [スロット番号]
- セキュリティ構造:
パスフレーズ → キースロット → マスターキー → 暗号化データ
(ユーザー入力)(保存場所) (実暗号化鍵) (保護データ)
- 重要な特徴:
マスターキーの特徴:
- ランダムに生成される
- 高いエントロピー(予測困難性)
- ヘッダー領域に暗号化して保存
キースロットの特徴:
- パスフレーズで保護
- 独立して管理可能
- バックアップ可能
- 実践的な使用例:
システム管理者の運用:
# バックアップキーの追加
cryptsetup luksAddKey /dev/sda1
# キースロット情報の表示
cryptsetup luksDump /dev/sda1
# ヘッダーのバックアップ
cryptsetup luksHeaderBackup /dev/sda1 --header-backup-file header.bak
- 注意点:
- ヘッダー損傷時はデータ復旧が困難
- 定期的なヘッダーバックアップが重要
- キースロット管理は慎重に
- トラブルシューティング:
一般的な問題と対処:
# ヘッダーの復元
cryptsetup luksHeaderRestore /dev/sda1 --header-backup-file header.bak
# キースロットの修復
cryptsetup luksRepairKeySlots /dev/sda1