Linux DebianでLUKSを使用してディスク、パーティション、ファイルを暗号化する方法

今日、ハードドライブまたはSSD、パーティション、およびファイル上のデータを暗号化することが不可欠です。 現在、NASサーバー、デスクトップコンピューター、さらにはラップトップのデータを暗号化する可能性があります。 何よりも、ラップトップはデータの暗号化が最も必要とされる場所です。ラップトップを紛失すると、ハードドライブやペンドライブを紛失した場合と同じように、すべてのデータにアクセスできるためです。 今日この記事では、LUKSを使用して、ハードディスクのすべてのコンテンツを最初から暗号化する方法を説明します。 Linux.

Linuxオペレーティングシステムでは、Linuxでデータを暗号化するための多くのオプションがあります。たとえば、dm-crypt、LUKS、eCryptfs、さらには非常に用途が広く、強く推奨されるVeracryptなどのプログラムを使用できます。 LUKS(Linux Unified Key Setup)を使用すると、コンピューター上に作成するディスク、パーティション、および論理ボリュームを暗号化できます。 LUKSの利点のいくつかは、複雑なコマンドを構成または実行する必要がなく、使用が非常に簡単で、カーネル自体に含まれているため、データの暗号化/復号化のパフォーマンスが非常に高くなることです。また、必要に応じて暗号化キーを管理できることも考慮に入れてください。

Linux DebianでLUKSを使用してディスク、パーティション、ファイルを暗号化する方法

このチュートリアルは明確にXNUMXつのセクションに分けられます。最初のセクションでは、パーティション全体に暗号化され、デフォルトで暗号化されたDebianオペレーティングシステムをインストールする方法を説明し、XNUMX番目のセクションでは暗号化する方法を説明します。 Debianが正常にインストールされると、コンピュータはデフォルトでパーティションに暗号化されません。 非常に重要な詳細は、情報の読み取りを可能にするために「ブート」に向けられたパーティションは暗号化されないが、ディスクの残りの部分はパーティションまたは論理ボリューム(LVM)のいずれかのLUKSで暗号化されることです。

デフォルトでLUKS暗号化を使用してDebianまたはLinuxをインストールする

完全なグラフィカルユーザーインターフェイスを備えたDebianインストールウィザード、または最小限のインターフェイスを備えたインストールウィザードでは、コンピューターを使用するときに最大限の機密性を確保するために、暗号化されたLVMでディスク全体を構成することができます。システムパーティション上のすべてのデータとデータは暗号化されます。

「ガイド付き–ディスク全体を使用して暗号化されたLVMを構成する」を選択してから、ディスクを選択し、すべてをパーティションに含めるか、パーティションごとに区切るかを選択するだけです。/を区切ることができるため、これは問題ではありません。他のホームパーティション。

加えられたすべての変更を保存する場合は、LVMを使用して後で容量を拡張または縮小することを強くお勧めします。 それが完了すると、オペレーティングシステムは、セキュリティを向上させ、データの回復を回避するために、ランダムデータでディスク全体を消去します。 選択したディスクのサイズによっては、これにはしばらく時間がかかります。

完了すると、暗号化パスワードを入力し、このパスワードでディスクを暗号化および復号化するように指示されます。 少なくとも8文字を入力することをお勧めしますが、強力なパスワードを使用して、少なくとも12文字を入力することをお勧めします。 完了すると、Debianインストールウィザードがディスク上で実行するすべての概要が表示されます。最も重要なことは「sda5_scrypt暗号化」の一部です。重要な詳細は、/ bootが暗号化されないことであり、交換(スワップ)のため、スワップを使用したり、後で暗号化したりしないことをお勧めします。

実行されるすべてのことを確認したら、変更をディスクに書き込み、ブートローダーをgrubにインストールして、使用している/ dev / sdaディスクを選択することを示します。

インストールが完了すると、幼虫が出てきて、最初のオプションを選択するか、時間が経過します。 オペレーティングシステムを起動するためのパスワードを自動的に要求されます。パスワードを直接入力しないと、すべてが暗号化されているため、起動できません。 キーを入力すると、Debianでさまざまなサービスがどのように開始されるかがわかります。

作成したパーティションを確認する場合は、次のコマンドを実行できます。

lsblk --fs

LUKSの特性(使用される対称暗号化アルゴリズム、キーの長さなど)を確認したい場合は、次のコマンドを入力できます。

cryptsetup luksDump /dev/sda5

/ dev / sda5がこの場合です。別のインストールを行った場合、このデータが変更される可能性があります。 ご覧のとおり、LUKSは512ビットバージョンのAES-XTSですべてのデータを暗号化し、PBKDFargon2iとSHA256ハッシュを使用します。

ご覧のとおり、デフォルトでLinuxを使用してオペレーティングシステムを構成するのは非常に簡単です。他に何もすることなく、構成ウィザードの手順に従うだけです。 デフォルトですべてのデータを暗号化する方法がわかったら、オペレーティングシステムがすでにインストールされているときに暗号化する方法を見てみましょう。

事前の暗号化なしで、すでにインストールされているシステムにLUKS暗号化を構成します

チュートリアルのこのセクションでは、パーティションが既に作成されているときにパーティションを暗号化する方法と、オペレーティングシステムにあるLUKSを使用してファイルを暗号化する方法について説明します。 これらのテストは、デフォルトで暗号化されたもの、システムパーティション、データなどを使用せずに、Debian10システムで実行します。

最初に行う必要があるのは、オペレーティングシステムにLUKSをインストールすることです。これは、インストールウィザードで使用していない場合、デフォルトではLUKSがインストールされないためです。 インストールは、次のように公式のDebianリポジトリから直接行われます。

sudo apt install cryptsetup

インストールすると、ハードドライブ、パーティション、またはリムーバブルストレージデバイスのコンテンツを暗号化するために使用できます。

始める前に、 パーティションを完全にフォーマットしてデータを書き換えることを常にお勧めします 、可能な限り最高のセキュリティを確保するために、このようにして、パーティションまたはディスク全体がランダムな情報で書き換えられるため、情報を回復することは非常に困難またはほとんど不可能です。 現在、LUKSは使用中のディスクまたはパーティションの暗号化を許可していないため、別のコンピューターから暗号化する必要があります。 さらに、あなたは利用する必要があります」 cryptsetup-再暗号化 これにより、データを失うことなくパーティションを完全に再暗号化できますが、重要なファイルのバックアップを作成してから作成することを強くお勧めします。 このツールを使用すると、LUKSオンサイトデバイス上のデータを暗号化できますが、パーティションを使用してはなりません。

ディスクまたはパーティションを暗号化します(データが失われます)

最初に行う必要があるのは、後で使用するために、ディスク上に新しいパーティションを作成することです。 次のコマンドを実行します。

sudo fdisk /dev/sdb

そして、引き続き「n」を入れて新しいパーティションを作成し、「p」を入れてプライマリにします。ハードディスク全体のパーティションがあることを示す値を受け入れます。小さくしたい場合は、特に、このパーティションのセクターを変更する必要があります。

これを行ったら、新しく作成したsdb1パーティションをLUKS形式で配置する必要があります。このために、次のコマンドを実行します。

sudo cryptsetup luksFormat /dev/sdb1

「YES」を大文字にして、必要なパスワードを入力し、準備ができるまで待ちます。

コマンドを実行すると、次のようになります。

lsblk -f

使用しているすべてのハードドライブ、パーティション、およびファイルシステムを確認できます。 sdb1には、次のように「crypto_LUKS」があることがわかります。

完了したら、作成したばかりのLUKSでこのパーティションを開く必要があります。このために、次のコマンドを入力します。

cryptsetup luksOpen /dev/sdb1 particioncifrada

パスワードを導入すると、再実行すると、指定した識別子名である「暗号化されたパーティション」が表示されますが、いつでも変更できます。

ここで、このパーティションにファイル形式を指定する必要があります。通常はEXT4でも実行します。このために、次のコマンドを入力します。

mkfs.ext4 /dev/mapper/particioncifrada

そして、この暗号化されたパーティションにはすでにEXT4ファイルシステムがあります。

次に、パーティションをディレクトリにマウントする必要があります。そのためには、/ homeまたはマウントポイントが必要な場所に作成する必要があります。

mkdir -p /home/bron/particioncifrada/archivos

そして今、私たちはそれをマウントする必要があります:

mount /dev/mapper/particioncifrada /home/bron/particioncifrada/archivos

また、ディレクトリ«/ホーム/ブロン/パーティション暗号化/ファイル»にアクセスすると、必要なすべてのデータを書き込むことができます。暗号化はオンザフライで完全に透過的です。

コンピューターを再起動すると、ユニットはマウントされず、LUKSでパーティションを開くこともできません。したがって、再起動してこのパーティションにアクセスするたびに、次の手順を実行する必要があります。

cryptsetup luksOpen /dev/sdb1 particioncifrada

要求に応じてパスワードを入力し、ユニットを再度マウントします。

mount /dev/mapper/particioncifrada /home/bron/particioncifrada/archivos

オペレーティングシステムの最初に自動的に開いてマウントする場合は、/ etc / crypttabファイルと/ etc / fstabファイルを編集してこのパーティションを配置する必要がありますが、ユニットを手動でマウントしてマウントすることをお勧めします。セキュリティのためにパスワードを要求します。そうでない場合は、キーをプレーンテキストで/ boot /パーティションに保存する必要があるためです。

これで、LUKSを使用して完全なディスクまたはパーティションを暗号化し、Linuxから直接暗号化できるようにするために必要なすべてのことがわかりました。システムがすでに実行されている場合でも、パスワードに注意する必要がありますが、ここで説明します。データの暗号化を備えた非常に安全なシステム。