web-dev-qa-db-ja.com

フルディスク暗号化をサポートするLinuxブートローダー?

フルディスク暗号化をサポートするLinuxブートローダーはありますか(la TrueCrypt )。 GRUB2に暗号化サポートを追加する作業があったことは知っていますが、これはまだ準備ができていないようです。他のオプションはありますか?

(ここでは、/bootを含む、完全なディスク暗号化を実際に参照していることに注意してください)

ほとんどの回答は/bootが暗号化されていない設定を説明しており、一部の回答は暗号化されていない/bootがOKである理由を説明しようとしています。

/ bootを実際に暗号化する必要がある理由については説明しませんが、GRUB2の修正バージョンに基づいて、必要なものを正確に説明する記事を次に示します。

これの問題は、これらの変更が明らかに現在のGRUB2コードベースではサポートされていないことです(または私は何かを見落としている可能性があります)。

28
Grodriguez

GRUB2の現在のバージョンは、LUKSパーティション自体のロードと復号化をサポートしていないと思います(いくつかの暗号が含まれていますが、パスワードのサポートにのみ使用されていると思います)。実験的な開発ブランチを確認できませんが、GRUBページに、実行したいことを実装するためにいくつかの作業が計画されているというヒントがいくつかあります。

アップデート(2015):GRUB2(2.00)の最新バージョンには、LUKSおよびGELI暗号化パーティションにアクセスするためのコードがすでに含まれています。 (xercestch.comリンクには、OPが提供する最初のパッチが記載されていますが、最新のリリースに統合されています)。

ただし、セキュリティ上の理由でディスク全体を暗号化しようとしている場合は、暗号化されていないブートローダー(TrueCrypt、BitLocker、または変更されたGRUBなど)が暗号化されていない/bootパーティション(上記のコメントでJVが注記)。コンピュータに物理的にアクセスできる人なら誰でも、簡単にカスタムバージョンに置き換えることができます。これは、リンクしたxercestech.comの記事にも記載されています。

明確に言うと、これによってシステムがオフライン攻撃に対して脆弱になることは決してありません。攻撃者がブートローダーを独自のものに置き換えるか、ブートプロセスをリダイレクトして独自のコードをブートした場合でも、システムは危険にさらされる可能性があります。

暗号化されていないブートローダーや、暗号化されていないブート/プリブートパーティションを使用しているかどうかに関係なく、フルディスク暗号化用のすべてのソフトウェアベースの製品にはこの弱点があることに注意してください。 BitLockerなど、TPM(Trusted Platform Module)チップをサポートする製品でも、ハードウェアを変更せずにルート化できます。

より良い方法は次のとおりです。

  1. bIOSレベルでの復号化(マザーボード、ディスクアダプター、または外部ハードウェア[スマートカード]、TPMチップの有無にかかわらず)、または
  2. pBA(プリブート認証)コード(/bootパーティション)(リムーバブルデバイス(スマートカードやUSBスティックなど))。

2番目の方法でこれを行うには、Linuxフルディスク暗号化(LFDE)プロジェクトを次の場所で確認できます。 http://lfde.org/ は、/boot外部USBドライブにパーティションを作成し、GPGでキーを暗号化してUSBにも保存します。このようにして、ブートパスの弱い部分(暗号化されていない/bootパーティション)は常にあなたのそばにあります(あなたが復号化コードとキーに物理的にアクセスできる唯一の人になります)。 (:このサイトは失われ、著者のブログも消えましたが、古いファイルは https:// github .com/mv-code/lfde 最後の開発が6年前に行われたことに注意してください)。より軽量な代替手段として、OSのインストール中に、暗号化されていないブートパーティションをUSBスティックにインストールできます。

よろしく、MV

20
MV.

初期RAMdiskを作成し、/ bootフォルダーで暗号化を使用しないようにします。

これにより、「最小」のカーネルが起動し、is暗号化された「実際の」ルートファイルシステムに切り替えるためのドライバーとサポートが提供されます。

「これはハックである」と主張する前に、覚えておいてください。ほとんど(すべてではないにしても)のLinuxディストリビューションは、デフォルトで今日このように起動します。これにより、ファイルシステムからロードする必要があるモジュールを使用して、システムがルートFSを起動してロードすることが明示的に許可されます。 (鶏と卵の問題の並べ替え)。たとえば、ルートファイルシステムがハードウェアRAIDボリューム上にあり、ルートFSをマウントする前にそのドライバーをロードする必要がある場合などです。

4
Brad

投稿したリンクを確認しました-ブートパーティションはありませんが、暗号化されていないブートローダーがハードディスク上にあり、悪意のあるメイドの攻撃を使用してアクセスおよび侵害される可能性があります。ハードディスクに暗号化されていないデータがない同様の設定を検討してきましたが、これまでのところ、リムーバブルドライブからブートローダーを実行することしか考えていません。

3
tyler

私はそれらのほとんどがそうであると私は信じています、必要なのはそもそも暗号化されたHDでOSをインストールする方法に関する指示です。

bunt には、暗号化されたパーティション、LMVP、フォルダなどを作成する手順が記載された素敵なページがあります。そのバージョンのディストリビューションをググってください...

1
J V

Grub2バージョン2.02〜beta3は、Grub2バージョン2.02〜beta2ができない多くのことを実行できます。

  1. Super Grub 2ディスクを使用して起動
  2. コマンドラインに移動するには、「c」キーを入力してください
  3. 必要な暗号化パーティションをマウントするコマンドを入力してください
    • insmod luks
    • cryptomount(hd0、#)//ここで#は暗号化されたパーティションを表します
  4. パスフレーズを入力し、さらにいくつかのコマンドを入力します
    • マルチブート(crypto0)/grub/i386-pc/core.img
    • boot

暗号化されたパーティション内にある別のGrub2が読み込まれます。ここでは、邪悪なマッドアタックには意味がありません...私はCD(読み取り専用メディア)から起動し、暗号化されたパーティションをマウントします(パスフレーズを使用せず、誰でもできるのです)何かを挿入します!)、暗号化されたパーティション内から起動し、独自のメニューなどでGrub2をロードします。

注:このようなGrub 2.02〜beta3ブート(Super Grub 2 cdを使用)は、USBスティック、USB HDDなどに置くことができます。

警告:コマンドcryptomountに関連するいくつかのバグ(Grub2バージョン2.02〜beta3で修正されているようです)があるため、Grub2バージョン2.02〜beta2は同じことを行うことができません...

私が話しているベータ2のバグは次のとおりです。

  1. 暗号化されたパーティションを実際にマウントしないため、(crypto0)/ *にアクセスできません
  2. 暗号化されたパーティションが複数ある場合は、cryptomount -aは1つのパスフレーズのみを要求します
  3. Cryptomountを1回実行した後、再度実行すると何も実行されない

ベータ3:

  1. 暗号化されたパーティションを実際にマウントし、同時にマウントされている場合は(crypto0)/ *または(crypto1)/ *などを介してファイルにアクセスできます
  2. 各パスフレーズを要求する(暗号化されたパーティションごとに1つ)
  3. それはあなたがそれを必要なだけ何度でも実行することを可能にし、あなたは1つをマウントし、次に別のものをマウントすることができます。

補足:別のまたは同じgrub2 /他のブートローダーなどをリブートまたはブートする以外は、アンマウントする方法を理解していませんでした。

これが説明を明確にするのに役立ち、Grub2バージョン2.02〜beta3がLiveCDに統合されて、自分でコンパイルする必要なしにインストールできることを願っています。

P.D .: Super Grub 2ディスクでは、Grub2バージョン2.02〜beta3をMBR/bootパーティションなどにインストールする方法がわかりません。

0
Claudio

いいえ、ないと思います。

/ bootを本当に暗号化する必要がありますか?私はそうは思わない。ファイルシステムの残りの部分は、/ bootのinitramfsに常駐し、それに応じてユーザーにプロンプ​​トを表示する通常のLinuxソフトウェアで暗号化できます。

0
MarkR

あなたは不可能である何かを求め、それをWindowsソリューションと比較しているようです実装をあなたから隠しますしかし、実際にはLinuxが行っているのと同じことをしています。

私が考えることができる最も近い解決策は、セキュリティパスワードと暗号化を実装するハードドライブを使用することです。一部のThinkpadラップトップは、これらのハードウェアソリューションを使用しています。

0
Zan Lynx

答えは記事にほのめかされています。 「これは、サポートするだけでなく、パッチが適用された次世代GRUB2ブートローダーの拡張機能で可能になりました」および「新しいluks対応のgrub2イメージを後でインストールしたい」および「LUKS対応のGRUB2ソースをコンパイルします。 」 GRUB2で取得してGRUB2に含める必要があるパッチまたは拡張機能、または分岐したGRUB2ソースがあるようです。

0
Skaperen