LUKS(Linux Unified Key Setup)は、Linuxベースのシステムで使用されるデファクトスタンダードの暗号化方式です。 DebianインストーラはLUKSコンテナを完全に作成できますが、既存のコンテナを認識して再利用する機能がありません。この記事では、「DVD1」インストーラーを使用してこの問題を回避し、「詳細」モードで実行する方法を説明します。
このチュートリアルでは、学習します :
- Debianを「高度なモード」でインストールする方法
- 既存のLUKSデバイスのロックを解除するために必要なインストーラーの追加モジュールをロードする方法
- 既存のLUKSコンテナにインストールを実行する方法
- 新しくインストールしたシステムのcrypttabファイルにエントリを追加し、そのinitramfsを再生成する方法
既存のLUKSコンテナにDebianをインストールする方法
使用されるソフトウェア要件と規則
カテゴリ | 使用する要件、規則、またはソフトウェアバージョン |
---|---|
Debian | |
特定のソフトウェアは必要ありません | |
DebianDVDインストーラー | |
#–指定されたlinux-commandを、rootユーザーとして直接、またはsudo を使用してroot権限で実行する必要があります。 command $ –指定されたlinux-commandsを通常の非特権ユーザーとして実行する必要があります |
問題:既存のLUKSコンテナを再利用する
すでに述べたように、DebianインストーラはLUKSコンテナにディストリビューションを作成してインストールすることができます(典型的なセットアップの1つはLUKS上のLVMです)が、現在、既存のコンテナを認識して開くことはできません。
なぜこの機能が必要なのですか?たとえば、配布インストーラーから微調整できない暗号化設定を使用してLUKSコンテナーを手動で作成した場合や、コンテナー内に破棄したくない論理ボリュームがある場合(おそらくいくつかのデータが含まれています);インストーラーの標準手順を使用すると、新しいLUKSコンテナーを作成する必要があり、既存のコンテナーを破棄する必要があります。このチュートリアルでは、いくつかの追加手順で、この問題を回避する方法を説明します。
DVDインストーラーのダウンロード
このチュートリアルで説明されているアクションを実行できるようにするには、Debian DVDインストーラーをダウンロードして使用する必要があります。これは、 netinstallでは使用できないライブラリが含まれているためです。 バージョン。トレント経由でインストールイメージをダウンロードするには、マシンのアーキテクチャに応じて、以下のリンクのいずれかを使用できます。
- 64ビット
- 32ビット
上記のリンクから、インストーラーのイメージを取得するために使用できるトレントファイルをダウンロードできます。ダウンロードする必要があるのはDVD1
ファイル。インストールISOを取得するには、トレントクライアントを送信として使用する必要があります 。画像がダウンロードされたら、対応するSHA256SUM
をダウンロードすることで、画像を確認できます。 およびSHA256SUM.sign
ファイルを作成し、LinuxディストリビューションISOイメージの整合性を検証する方法についてこのチュートリアルに従ってください。準備ができたら、ブートデバイスとして使用できるサポート(DVDまたはUSB)にイメージを書き込み、そこからマシンを起動できます。
詳細インストールモードの使用
準備したデバイスを使用してマシンを起動するときは、次の syslinuxを視覚化する必要があります。 メニュー:
詳細オプションを選択します エントリしてから、グラフィカルエキスパートインストール (またはエキスパートインストール より少ないリソースを使用するncursesベースのインストーラーを使用する場合):
メニューエントリを選択して確認すると、インストーラが起動し、インストール手順のリストが視覚化されます。
CDからインストーラコンポーネントを読み込むに到達するまで、インストール手順に従います。 1。ここで、インストーラーによってロードされる追加のライブラリーを選択するための変更があります。リストから選択したい最小値はCrypto-dm-modulesです およびレスキューモード (リストを下にスクロールして表示します):
既存のLUKSコンテナのロックを手動で解除し、ディスクをパーティション分割する
この時点で、ディスクの検出に到達するまで、通常どおり続行できます。 ステップ。この手順を実行する前に、 ttyに切り替える必要があります コマンドラインから既存のLUKSコンテナを開きます。これを行うには、 Ctrl + Alt + F3を押します。 キーの組み合わせとEnterを押します プロンプトを取得します。プロンプトから、次のコマンドを起動してLUKSデバイスを開きます。
# cryptsetup luksOpen /dev/vda5 cryptdevice Enter passphrase for /dev/vda5:
この場合、LUKSデバイスは以前に/dev/vda5
に設定されていました もちろん、パーティションをニーズに合わせて調整する必要があります。ロックを解除するために、コンテナのパスフレーズを入力するように求められます。ここで使用するデバイスマッパー名(cryptdevice)は、後で/etc/crypttab
で使用する必要がある名前です。 ファイル。
この手順を実行したら、インストーラーに戻すことができます( Ctrl + Alt + F5 )そしてディスクの検出に進みます 次に、パーティションディスク ステップ。 パーティションディスク メニューで「手動」エントリを選択します:
ロック解除されたLUKSデバイスとそれに含まれる論理ボリュームが使用可能なパーティションのリストに表示され、システムセットアップのターゲットとして使用できるようになります。準備ができたら、インストールの完了に到達するまでインストールを続行できます。 ステップ。実行する前に、新しくインストールしたシステムcrypttab
にエントリを作成する必要があります。 LUKSデバイスの場合、デフォルトでは作成されないため、変更を有効にするためにシステムinitramfsを再作成します。
/ etc/crypttabにエントリを作成してinitramfsを再作成する
ttyに戻りましょう 以前に使用しました( Ctrl + Alt + F3 )。ここで行う必要があるのは、/etc/crypttab
に手動でエントリを追加することです。 LUKSデバイス用に新しくインストールされたシステムのファイル。そのためには、新しいシステムのルートパーティションをどこかにマウントする必要があります(/mnt
を使用しましょう) ディレクトリ)そして、その中の適切なディレクトリに関する重要な情報を提供するいくつかの疑似ファイルシステムをマウントします。この場合、ルートファイルシステムは/dev/debian-vg/root
にあります。 論理ボリューム:
# mount /dev/debian-vg/root /mnt # mount /dev /mnt/dev # mount /sys /mnt/sys # mount /proc /mnt/proc
この場合、別のブートパーティション(/dev/vda1
)があるためです。 )、/mnt/boot
にもマウントする必要があります :
# mount /dev/vda1 /mnt/boot
この時点で、 chrootする必要があります インストールされたシステムに:
# chroot /mnt
最後に、/etc/crypttab
を開くことができます 利用可能なテキストエディタの1つを使用したファイル( vi たとえば)、次のエントリを追加します:
cryptdevice /dev/vda5 none luks
上記の行の最初の要素は、LUKSコンテナーを手動でロック解除したときに上記で使用したデバイスマッパー名です。システムの起動中にコンテナが開かれるたびに使用されます。
2番目の要素は、LUKSデバイスとして使用されるパーティションです(この場合、パス(/dev/vda5
で参照しました) )、ただし、UUID
を介して参照することをお勧めします。 。
3番目の要素は、コンテナを開くために使用されるキーファイルの場所です。ここになしを配置します。 使用しないため(この種のセットアップを実現する方法を知りたい場合は、ファイルをLUKSデバイスキーとして使用する方法に関するチュートリアルに従ってください)。
行の最後の要素は、暗号化されたデバイスに使用する必要があるオプションをホストします。ここでは、 luksを使用しました。 デバイスがLUKSコンテナであることを指定します。
/etc/crypttab
を更新したら ファイルの場合、さらに進んで initramfsを再生成できます 。 Debianおよびdebianベースのディストリビューションでは、このアクションを実行するために、update-initramfs
を使用します。 コマンド:
# update-initramfs -k all -c
ここでは、-c
を使用しました 既存のinitramfsを更新する代わりに、新しいinitramfsを作成するようにコマンドに指示するオプション、および-k
initramfsを作成するカーネルを指定します。この場合、all
を渡しました 引数として、既存のカーネルごとに1つが生成されます。
initramfsが生成されたら、インストーラーに戻ります( Ctrl + Alt + F5 )そして最後のステップに進みます:インストールを完了します 。インストール時に、新しくインストールされたシステムにアクセスするために再起動するように求められます。すべてが期待どおりに進んだ場合、システムの起動中に、パスフレーズを入力してLUKSコンテナのロックを解除するように求められます。
結論
このチュートリアルでは、既存のLUKSコンテナを認識して開くことができないDebianインストーラの制限を回避して、その中のシステムインストールを実行する方法を学びました。インストーラーを「詳細モード」で使用して、ttyに切り替えることでコンテナーのロックを手動で解除できるようにする、いくつかの追加モジュールをロードできるようにする方法を学びました。コンテナを開くと、インストーラーによって正しく認識され、問題なく使用できます。この設定の唯一のトリッキーな部分は、新しくインストールされたシステムcrypttab
にコンテナのエントリを作成することを忘れないでください。 ファイルを作成し、そのinitramfsを更新します。