GNU/Linux >> Linux の 問題 >  >> Linux

LinuxでDM-CryptLUKSを使用してパーティションを暗号化する方法

TrueCryptはもうありません。この投稿の目的は、dm-cryptluksを使用した簡単なパーティション暗号化を紹介することです。

DM-Cryptは、カーネルモジュールであり、物理ブロックデバイスを高レベルの仮想ブロックデバイスにマッピングするためのデバイスマッパーフレームワークの一部である透過的なドライブ暗号化であり、カーネルの暗号化APIからの暗号化ルーチンを使用します。簡単に言うと、カーネル「linux」暗号化APIによって提供されるデバイスマッピング暗号化です。

少なくともあることを確認してください データが含まれていない1つのパーティション。使用可能なパーティションがない場合は、parted、gparted、または任意のプログラムを使用して、既存のパーティションの一部を縮小し、新しいパーティションを作成します。

/dev/sda3というパーティションを使用します 、そして私たちの最初のタスクは、そのパーティションをランダムデータで3回上書きすることです。これは、フォレンジック調査からユーザーを保護するのに十分です。 20GBのパーティションが3回上書きされるのに30分近くかかりました。

shred --verbose --random-source=/dev/urandom --iterations=3 /dev/sda3

LUKS暗号化モードで暗号化デバイスマッパーデバイスを作成します:

cryptsetup --verbose --cipher aes-xts-plain64 --key-size 512 --hash sha512 --iter-time 5000 --use-random luksFormat /dev/sda3

次の質問があります:

WARNING!
========
This will overwrite data on /dev/sda3 irrevocably.
 
Are you sure? (Type uppercase yes): YES
Enter passphrase:
Verify passphrase:
Command successful

ここで"root"のパーティションのロックを解除します デバイスマッパーの名前です。ラベルと考えてください。

cryptsetup open --type luks /dev/sda3 root

デバイスマッパー名(ラベル)からアクセスできる暗号化されたデータを書き込むには、ファイルシステムを作成する必要があります。

mkfs.ext4 /dev/mapper/root

デバイスをマウントし、すべてのデータを転送します:

mount -t ext4 /dev/mapper/root /mnt

完了したら、デバイスをアンマウントして閉じます。

umount /mnt

cryptsetup close root

最後になりましたが、コピーバッファとキャッシュバッファをクリアします:

sysctl --write vm.drop_caches=3

それは、単純で簡単な暗号化でした。これからは、ロックを解除し、マウントし、データを転送し、デバイスをアンマウントして閉じるだけです。

数時間の余裕と実験がある場合は、これらのページをお気軽に読んでください:

リンク1、リンク2、リンク3、リンク4、リンク5、リンク6、リンク7

/ bootを保護します フルディスク暗号化が必要な場合はパーティション。上記のリンクには、その方法がすべて詳細に書かれています。

投稿編集:LUKSで暗号化されたCDおよびDVDディスクを作成できることを知ったので、状況はさらに良くなりました。

ドライブパーティションを使用する代わりに、 ddを介してファイルを作成します カーネルの乱数ジェネレーター/dev / urandom これにより、最初のファイルが偽のエントロピーで埋められます。

1つのファイル内でファイルシステムとして使用される500MBのファイルを作成します。

dd if=/dev/urandom of=encrypted.volume bs=1MB count=500

この投稿の最初のコマンドを置き換えるだけです(shred) ddで 1つを入力し、残りのコマンドをそのまま入力します。

これで、LUKS暗号化のファイルシステム全体である単一のファイル内で書き込まれるデータを誰も通過しないようにすることができます。必ず encrypted.volumeをアンマウントして閉じてください。 ディスクに書き込む前に。


Linux
  1. Linuxでgocryptfsを使用してファイルを暗号化する方法

  2. 単一のLinuxファイルシステムを暗号化する方法

  3. Linux でスワップ パーティションを変更するにはどうすればよいですか?

  1. Linuxにデバイスドライバーをインストールする方法

  2. Linuxでディスクをパーティション分割する方法

  3. Debian 9StretchLinuxでEncFSを使用してディレクトリを暗号化する方法

  1. GNU/Linux でパーティションを移動するには?

  2. Linux スワップ パーティションを有効にするにはどうすればよいですか?

  3. Linux でデバイスをマウントするには?