Qubes OS 非公式セットアップガイド Step0: 準備
更新日: 2023/07/19
このセットアップガイドでは、コンピューターにQubes OSをインストールして実際に使用できるよう設定する方法を解説します。著者の目標としては、公式のドキュメントよりも多少一般向けのガイドとなることを目指しています。そのため、公式のドキュメントに比べると端折ってある場所があったり、逆に詳しく解説したりしている場所があったりすると思います。公式のドキュメントも参照しつつ読んでいただけると幸いです。
インストールするコンピューターを選定する
Qubes OSをインストールするためには、当然のことながらインストール先となるコンピューターが必要です。このガイドを読んでいるような方はコンピューターを複数台所有していることかと思います。さて、どのコンピューターにインストールしましょうか。これは、最初に立ちはだかる重要なポイントです。Qubes OSに興味を持っているということは、あなたはハイレベルなセキュリティを必要としているのではないでしょうか?確かにQubes OSは比較的強力なセキュリティを提供しますが、Qubes OSであってもシステムを保護できない場合が存在します。それは既に侵害されたコンピューターを使用してしまった場合です。悪意ある攻撃者によって改竄されたシステムにQubes OSをインストールしたとしても、セキュリティを得ることはできません。これは公式の文書にも明記されています。では、クリーンなコンピューターを得るにはどうすれば良いのでしょうか?これはとても難しい問題です。中古のコンピューターには第三者による改竄が施されているかもしれないと考えることもできますし、新品のコンピューターには政府によるバックドアが仕掛けられていると考えることもできます。あなたの所有するコンピューターはクリーンだと自信をもって言えますか?クリーンなコンピューターを入手するための明確な正解はありません。ここで、あなたはどのコンピューターを使用するか、自らの責任で決断しなければなりません。因みに、著者は新品のThinkPad T480をLenovoの直販で購入して使用しています。
使用するコンピューターを選定する上で、重要なことはセキュリティだけではありません。Qubes OSには比較的厳しい性能要求があり、これを満たさないコンピューターではそもそも動作しなかったり、快適に使用できなかったりします。詳しい要件は公式の文書を参照してください。ここでは個人的にお勧めする要件を取り上げます。
- ノートPC: USB qubeを用いる上でノートPCの方が好ましいです。また、Qubes OSにおいては高価なデスクトップ用GPUは現状完全に無駄であるという事情もあります。
- 新しめの強力なCPU、vProもしくはRyzen PROモデル: QubesにおいてはCPUパワーが重要です。Qubes OSでは通常GPUが処理するタスクもCPUで処理しています。強力なCPUは快適さを大きく向上させます。モダンなCPUはセキュリティ上でもShadow Stackが使えたりと好ましいです。vProやRyzen PROについては将来的にDRTMがサポートされた際に美味しいので加えています。無視しても構いません。ただし、CPUが新しすぎるとQubesがまだサポートしていなかったりするのでバランスが大事です。後述するHCLなども確認しつつ、自分で決断する必要があります。
- 最低16GB、できれば32GB以上のRAM: Qubes OSはその仕組み上大量のRAMを要求します。公式では最小6GBとか書いてますが、個人的には最小16GBをお勧めします。
- 高速で大容量のSSD: 高速なSSDは快適さを大きく向上させます。Qubesの仕組み上あとからストレージを増設するのは面倒(不可能ではありませんが…)なので1TBくらい積んでおきましょう。HDDは止めましょう。
- IntelかAMDのGPU、NVIDIAはやめてください: IntelかAMDのGPUが搭載されているコンピューターを選びましょう。公式ではIntelが推奨されています。NVIDIAのGPUが搭載されているコンピューターを使用するのは避けるべきです。NVIDIAはオープンソースにおける最悪なサポートで知られており、Qubes OSもその例外ではありません。NVIDIA搭載PCにQubesをインストールしても悲しい思いをするだけなので止めましょう。
上記の要件を満たしていても、Qubes OSが動作しないコンピューターが存在します。これは主にコンピューターの部品が新しすぎてまだサポートできていなかったり、あとはファームウェアが腐っていたりするときに発生します。このような事態に備えてQubes OSではHCLと呼ばれるものが用意されています。これを見ればどのコンピューターでQubesが動作するのかを確認することができます。HCLはユーザーからの報告がベースとなっているので、HCLに載っていないがQubesが動作するコンピューターも数多く存在します。今からコンピューターを買う場合で、Qubesが確実に動作するものを買いたい時はHCLを参考にするとよいでしょう。その他にも手持ちのコンピューターがHCLに載っていれば、Qubesが動作するか事前に調べたり、インストール時に必要となる追加の手順を確認したりできます。情報の宝庫であるHCLを上手に活用してください。
デュアルブートや仮想マシンへのインストールはしないでください。Web上ではQubes OSを他のOSとデュアルブートさせたり、VirtualBoxといった仮想マシンにインストールしようとしたりする例が散見されますが、これらはサポートされていないばかりか、セキュリティ上のリスクもある行為です。ネット上のやってみました記事を参考にせず、公式の文書を確認してください。繰り返します。デュアルブートや仮想マシンへのインストールは止めましょう。
インストール用のメディアを作成する
さて、前のセクションを参考にしてQubes OSをインストールするコンピューターを用意しましたでしょうか。次に、Qubes OSをインストールするためのメディアを作成します。ここでまず考えなければいけないのがどの媒体を使用するかです。Qubes OSのインストーラーはR4.2.0 rc1の場合で6GBほどあるため一層のDVDにはフィットしません。細かいことを言うとここでもセキュリティに影響する検討事項があるのですか、今回は割愛します。一般の方は8GB以上のUSBメモリーを使うのが手軽でしょう。著者はセキュリティ上の理由により二層のDVD-Rをよく利用しています。インストールに使用するUSBメモリーもセキュリティ上重要なパーツですので信頼できるものを使用してください。
次に検討すべきなのが、どのコンピューターでインストーラーを作成するかです。当然のことながら、攻撃者によって侵害されたコンピューターでインストーラーをセキュアに作成することはできないので、クリーンなシステムを選ぶ必要があります。どこかで聞いた話ですね。ということで、インストーラーはQubes OSをインストールするPCであらかじめ作成するのが簡単です。この方法なら用意するクリーンなコンピューターは一台で済みます。
では早速インストーラーを作成しましょう。ここからの作業はWindows上で行うことを想定して解説していきます。これはPC用OSの大多数がWindowsであるためです。macOSやGNU/Linuxの場合は使用するソフトウェアと手順が多少変わりますので適宜読み替えてください。
- まずはWindows Updateを行いましょう。インストールプロセスをセキュアに行うにはOSがセキュアである必要があります。Webブラウザも更新してください。
- 使用するソフトウェアをインストールしましょう。RufusとGnuPGを使用します。GnuPGは公式サイトからWindows用バイナリをダウンロードできます。ページ中程にある"Simple installer for the current GnuPG"というのがそれです。RufusはMicrosoft Storeから入手するのが手軽でしょう。GnuPGをインストールする前に、必ずインストーラーが適切にデジタル署名されているか確認してください。正規のバイナリはg10 codeという企業によってデジタル署名されています。デジタル署名されていない場合はマルウェア入りです。絶対に実行しないでください。
- 次に、必要なファイルをダウンロードします。必要なファイルは四つです。一つ目はQubes Master Signing Key。二つ目がインストール用のISOファイルで、三つ目がそれに対応するDetached PGP signature、四つ目がQubes release signing keyです。後の三つは公式のダウンロードページからダウンロードできます。必ず最新のstableリリースに対応したものをダウンロードしてください。今回はあえてテスト版のR4.2.0 rc1を使用していますが、特に本番環境でテスト版を使用するのは止めましょう。
-
ここからはターミナルでの作業となります。このセットアップガイドではISOファイルのデジタル署名を検証します。インストーラーが正規のものであることを確認するのは極めて重要なポイントです。他のOSでの話ですが、過去にインストーラーをマルウェア入りのものに差し替える攻撃が実際に発生しています。この手順をスキップしないでください。ではコマンドプロンプトを開いてQubes Master Signing Keyをインポートします。
gpg --import qubes-master-signing-key.asc
-
次にQubes Master Signing Keyの真正性を確認します。
gpg --edit-key 0x427F11FD0FAA4B080123F01CDDFA1A3E36879494 fprこのfprコマンドを入力した際に表示されるPrimary key fingerprintが427F 11FD 0FAA 4B08 0123 F01C DDFA 1A3E 3687 9494と完全に一致していることを確認してください。一文字でも違っていればその鍵は偽物です。手順を中断してください。このfingerprintを様々な手段で検証することが望ましいのですが、ここでは割愛します。詳しくは公式の文書を確認してください。trust Your decision? 5 Do you really want to set this key to ultimate trust? (y/N) y qこれでQubes Master Signing Keyを究極的に信用するとマークできました。
-
次にQubes release signing keyをインポートします。
gpg --import qubes-release-4.2-signing-key.ascrelease signing keyはQubes OSのバージョンによって異なるので適宜読み替えてください。今までの手順を適切に行っていれば、gpg -kを実行した際に「[ full ] Qubes OS Release 4.2 Signing Key」のような表示がされるはずです。
-
ではダウンロードしたISOファイルの検証に進みましょう。
gpg --verify Qubes-R4.2.0-rc1-x86_64.iso.asc Qubes-R4.2.0-rc1-x86_64.isoこのコマンドを実行して「Good signature from "Qubes OS Release 4.2 Signing Key」と表示されれば検証結果はオッケーです。逆にGood signatureと表示されない場合は、これまでの手順に間違いがあるか、あなたが攻撃にさらされているかのどちらかなのでインストールを中断してください。
- では検証済みのISOファイルを使ってインストーラーを作成しましょう。Rufusを起動してインストーラーを作成してください。
インストール前にやっておくべきこと
いよいよインストール、の前にやっておくべきことがあります。Qubes OSはインストール時にストレージをフォーマットします。なので必要なデータをバックアップしてください。そしてデバイスのファームウェアを更新してください。一部の先進的なメーカーを除き、残念ながらファームウェアの更新はWindowsからしかできません。ファームウェアの更新には重要なセキュリティ修正やバグ修正が含まれていますので、Qubes OSをインストールする前に更新してください。もちろん更新の際には更新がメーカーからの正規のものであるかデジタル署名などによって検証してください。
ではインストールに進みましょう。