仮想TPMを用いたBitLockerによる暗号化/復号化の手順

VMware

仮想TPMを用いたBitLockerによる暗号化/復号化の手順

今回は、VMware Workstation上で動くWindows Server仮想マシンに対して”BitLocker”を設定したのでその方法について紹介します。

そもそもBitLockerとは

BitLockerは、Microsoft Windowsが提供する盗難対策のための記憶媒体への暗号化機能です。
この機能を利用するためには、Windowsが動作するハードウェア上で、TPMと呼ばれるセキュリティチップが搭載されており、UEFIと呼ばれるハードウェア制御機能によりOSが起動されることが条件となります。

この機能により、コンピュータの中に搭載されているハードドライブだけが第三者によって盗まれてしまっても、元々搭載されていたコンピュータでないと、パスコードを入れないとデータにアクセスが出来ません。

もし仮に、暗号化されたドライブが盗難されて、元々のコンピュータとは別のコンピュータで起動されると次のような画面が表示されます。


この画面が表示された場合は、”Recovery Key”と呼ばれる復号キーを本画面上部で入力しない限り、Windowsの起動はこれ以上進行しません。

通常盗難などの悪事を働かない限りは、この画面に会うことも無いかと思うのですが、唯一の例外としては”コンピュータの修理のために、マザーボードを交換する”場合にもこの画面に遭遇します。

修理交換のために新しいマザーボードに載せ替えられると、暗号化に用いたTPMが変わってしまいます。
そのため暗号化されたドライブの目線では”今まで自分が繋がっていたコンピュータとは違うようだ”と認識しますので、修理交換時には復号キーが無いと中のOS起動は出来ませんので、この場合はOS再インストールが必要になってしまいます。

www.atmarkit.co.jp

TPMってなんだっけ?

Trusted Platform Module – Wikipedia

こちらはマザーボード上に搭載されるチップであり、OSレベルでの暗号化機能を利用する際に必要なチップです。
こちらの動画では、Dell EMC PowerEdgeに搭載されているTPMチップの取り外し方を紹介してくれます。

サーバ製品は勿論、デスクトップやノートパソコンにもTPMは搭載されますが、形状はそれぞれの製品で異なる場合があります。

Dell EMC PowerEdge R640: Remove/Install TPM

検証環境紹介

今回はDell Latitude 5400というマシン上にWindows 10が入った環境で検証を行いました。
上記の環境に対して、VMware Workstationというソフトウェアを動作させ、仮想マシンを構成して、その上にWindows Server 2016を構築しています。

なお、今回と同じ作業はVMware社から提供されている無償版ソフトウェア”Workstation Player”でも実施が可能です。また仮想マシンとして動かすWindowsは、Windows 10の評価版でも可能です。

www.vmware.com

BitLockerを有効にするまでの手順

今回は手元にWindows 10が無かったため、Windows Server 2016を利用しての検証です。
一部紹介する手順には、Windows Serverならではの手順があります。Windows 10を想定している方はその箇所は読み飛ばしてください。

Step1. 仮想マシンの構成(UEFIブート設定を含む)

始めに、検証作業対象となるWindows Serverをインストールするための仮想マシンを設定します。
構成時のポイントは、仮想マシンの起動モードをBIOSではなくて、UEFIモードにするだけです。

UEFIモードに設定してからOSをインストールする事で、起動ディスクがGPT(GUID パーティションテーブル)形式で構成されます。GUIDパーティションテーブル – Wikipedia


こちらの画面は、VMware Workstation上で新規に仮想マシンを作成する際のウィザードです。
こちらでUEFIを指定しておきましょう。

Step2. OSのインストール

OSのインストールについては、特別な作業、操作は発生致しません。
一度でもWindowsをインストールした事がある人は、その工程をそのまま踏むだけです。
(EULA承諾、インストールパーティションの指定など)

よって本項目の詳細は割愛致します。

Step3. 仮想TPMチップの搭載

無事にUEFIモードで起動するWindows OSを準備出来ましたら、Step1で構成した仮想マシンに対して次の設定を施します。

docs.vmware.com

VMware Workstationの機能性質上、”仮想TPM”の搭載のためには、以下の暗号化設定を施す必要がありますので、暗号化設定を行います。(下図は既にそれを終えた様子です)

次に”追加”メニューから仮想TPMを追加しました。これで仮想マシンとしての準備は完了です。


本作業は仮想マシンならではであり、物理的なコンピュータでは行う必要はありません。
(物理的なコンピュータの場合は、工場出荷時点でTPMチップは搭載済みです)

敢えて挙げるとすれば、BIOS画面内にてTPMチップの機能が有効になっているかを確認する事は物理マシンでは必要と言えます。

TPMおよびBitLockerに関する一般的な問題をトラブルシューティングして解決する方法 | Dell 日本

Step4. Windows上でのBitLockerの有効化

いよいよラストスパートです。今回はWindows Serverを使ったがため、Windows 10と比べるとひと手間増えます。

Windows Server上でのBitLocker機能のインストール(Windows 10では不要)

Windows Serverは基本的に、初期搭載機能を必要最低限に押さえています。この点から、ユーザーは利用予定の機能を自らOS内で有効化する必要があります。

手順は次のリンク内に掲載されています。

docs.microsoft.com

上記リンクに従い、OSに対して機能追加を行っている様子が以下の画面です。

上記のステップを経て、コントロールパネル内に”BitLocker”の項目が表示されたことを確認出来ました。

BitLockerの有効化

まず、BitLockerの項目にある”Manage BitLocker”をクリックして、暗号化作業を開始します。

現在はCドライブはBitLockerは無効状態です。これから有効化しましょう。
Cドライブ以外にもドライブが存在する場合は、本画面から暗号化対象のドライブを選択して、”Turn on BitLocker”から暗号化を開始します。

余談ですが、CD/DVDドライブにメディアが入った状態ですと、上記の操作を行っても以下のようにウィザードが失敗します。一度CD/DVDドライブを空にしてから、気を取り直して暗号化メニューを再起動します。

暗号化開始に向けたウィザード表示されました。

BitLockerを有効にするためのステップが紹介されています、次へ進みます。

警告としては、有事の際に備えたデータのフルバックアップと本作業の完了には少々時間がかかる旨が説明されています。次へ進みましょう。

ウィザードによる暗号化作業に向けた事前チェックが行われ、緑チェックで合格となっています。
このまま暗号化を開始したいと思います。次へをクリックします。

ここで復号キーの取得を行います。2通りの方法があり、”ファイルとして保存する”または”キーの印刷を行う”です。どちらか一方を行っておけばOKです。今回私は後者を選択しました。

これがサンプルとしてのBitLockerの復号キーの印刷イメージです。BitLocker_key

ちなみに、前者を行う際には復号キーを保存する先は、”暗号化する予定のドライブ”を指定することは出来ません。これから暗号化するドライブに、復号キーを配置するというのは、オートロックの部屋内に鍵を置いて出ていくようなものです。以下はそれを示したエラーです。

復号キーを入手したので、次へ進みます。
本項目では、暗号化する領域を2パターンから選択出来ます。

  • Cドライブ内で現在データが配置されている部分のみ暗号化し、それ以外の領域は都度暗号化する方式
  • Cドライブ内でデータの有無関係なく、ドライブ全領域をすぐ暗号化する

とにかく暗号化の初期導入を速やかに行いたい場合は前者、将来的なドライブへの書き込みパフォーマンスを下げたくない場合は後者、となりますが、今回は検証ですので前者で行きます。

データの暗号化タイプについて問われました。今回はBitLockerの検証なので、デフォルトで進めます。

最終確認画面が表示されました。本画面内ではBitLockerを有効化するに能っての最終チェックも行うオプションがありましたので、チェックマークを入れて”Start Encrypting”をクリックしました。

画面右下と、画面中央のアイコンがいずれも”Restart Required”と、再起動を促すメッセージを表示しました。これを受けて、Windowsを再起動しました。

再起動中…

再起動を終えて、暗号化が開始された旨の通知が表示されました。

暗号化中はアイコン上の表示が”BitLocker Encrypting”となっています。

暗号化を完了し、”BitLocker on”と表示が変わりました。これでBitLockerによる保護が開始されました。

さて、これで暗号化されたのですが、本当に暗号化により保護されているかを確認したいと思います。
今回は仮想マシンで構成をしておりますので、物理コンピュータと違う方法で、暗号化保護画面を確認したいと思います。

仮想環境における、BitLocker保護の確認方法

BitLockerによる暗号化保護画面を閲覧するには、”暗号化作業を行ったコンピュータ以外に、暗号化ドライブを接続する”必要があります。

一番簡単な方法は、2台目の仮想マシンを作成して、それに対し暗号化されたドライブを繋ぐ方法です。
今回その方法を取ろうとした際、まさかのVMware Workstationから次のようなメッセージで作業が出来ませんでした。

これは詰んだか?と思いましたが、逆転の発想で対処しました。
それは、作業Step3.で搭載した”仮想TPMをマザーボードから外す”です。

仮想TPMを外す事で、擬似的に”暗号化したコンピュータとは異なるマザーボード”を再現するというものです。作業としては次のクリックだけで出来ますのでとても簡単です。

この作業後から、暗号化されたWindowsを起動するたびに、以下の画面を表示することに成功しました。

BitLockerが有効化されたドライブの復号化手順

BitLockerによる保護機能により、次の画面が表示される場合は復号キーを入力しましょう。

今回の環境では、復号キーをPDF印刷ベースで取得しています。
本書内下部に”Recovery Key”がありますので、それを見ながらBitLockerの復号キー入力画面で当該キーを入力します。

入力を終えてEnterを押下後、無事にWindowsが起動しました。
暗号化/復号化と言っても、やっている事自体はただのパスワード保護のようにも見えます。

なお、注意点があります。
例えばマザーボード交換など、元々のTPMではなく新しいTPM上で暗号化されたWindowsは、起動の都度復号キーの入力を求めてきます。

毎回長文の復号キーを入力するのは大変手間ですので、このような場合は一度BitLockerを解除し、再度有効化してみましょう。そうすることで新しいTPMチップによるBitLockerが機能します。

なお、仮想マシンの場合ですがvTPMを削除後、再搭載しても、再搭載されたvTPMは元々のvTPMとは別物ですのでBitLockerの無効化、再有効化が必要です。

あとがき

さて、VMware系の記事がメインの本ブログにしては珍しい記事だったのではないでしょうか。
現在VMware vSphere Optimize and Scaleという中級者コースの提供に向けて準備中なのですが、
その際にセキュリティ系の話が結構出てきまして、vTPMに関連する話があります。

これに加えて、最近のデスクトップ、ノートパソコン製品の問い合わせでもBitLocker絡みが多いということで、今回の記事作成に至りました。

本記事作成時点ではCOVID-19の影響もありWork From Homeが中心の世の中に成っていますが、改めて仮想化のおかげでこうした込み入った検証も速やかに出来たので、技術は使いようだな、と思いましたね。

 

 

 

コメント