Qubes OS は、コンパートメント化によってセキュリティを提供することを目的とした、セキュリティ重視のデスクトップ オペレーティングシステムです。[ 9 ]コンパートメント化は、仮想化技術の使用によって実現されます。これにより、アプリケーションを qubes と呼ばれる安全な仮想マシンに分割することができます。Qubes OS の仮想化サービスは、 Xenハイパーバイザによって提供されます。
個々のキューブのランタイムは、一般的に、基盤となるオペレーティングシステムテンプレートの独自のシステムに基づいています。テンプレートは、複数のキューブで共有できる、単一の不変のルートファイルシステムを提供します。このアプローチには、主に2つの利点があります。1つ目は、特定のテンプレートへの更新が、そのテンプレートに基づくすべてのキューブに自動的に「継承」されることです。2つ目は、共有テンプレートを使用することで、セキュアドメインごとに完全なオペレーティングインストールを備えた個別の仮想マシンと比較して、ストレージ要件を大幅に削減できることです。
Qubes OS の基本インストールでは、 FedoraおよびDebian Linux ディストリビューションに基づいた公式にサポートされているテンプレートが多数提供されます。代替のコミュニティサポートされているテンプレートには、Whonix、Ubuntu、Arch Linux、CentOS、およびGentooがあります。[ 10 ]ユーザーは独自のテンプレートを作成することもできます。
Qubes OSのようなオペレーティングシステムは、学術界では統合型マルチレベルセキュア(MLS)システムと呼ばれています。[ 11 ]同様のシステムの他の提案も浮上しており[ 12 ] [ 13 ]、SecureViewとVMware vSphereは商用競合製品です。

Qubes は分離によるセキュリティのアプローチを採用しています。[ 14 ] 完璧なバグのないデスクトップ環境は存在しないという前提に基づいています。そのような環境は数百万行のコードと数十億のソフトウェア/ハードウェアの相互作用から成ります。これらの相互作用のいずれかに重大なバグが 1 つあるだけで、悪意のあるソフトウェアがマシンを制御するのに十分です。 [ 15 ] [ 16 ]
Qubes OS を使用してデスクトップを保護するために、ユーザーはさまざまな環境を分離するように注意します。これにより、コンポーネントのいずれかが侵害された場合でも、悪意のあるソフトウェアはその環境内のデータのみにアクセスできるようになります。[ 17 ]
Qubes OSでは、分離は2つの次元で実現されています。ハードウェアコントローラは機能ドメイン(ネットワークドメイン、USBコントローラドメインなど)に分離できる一方、ユーザーのデジタルライフは信頼レベルの異なるセキュリティドメインに分割されます。
例えば、仕事のドメイン(最も信頼されている)、買い物のドメイン、ランダムなドメイン(信頼度が低い)。[ 18 ]これらのドメインはそれぞれ別のキューブで実行されます。
Qubes はデフォルトでパスワードなしのルートアクセス (パスワードなしのsudoなど) が可能です。 [ 19 ] UEFI セキュアブートは標準ではサポートされていません。Qubes OS チームはこれを重大なセキュリティ問題とは考えていません。[ 20 ] Qubes はマルチユーザーシステムではありません。[ 21 ]
デスクトップ向けオペレーティングシステムであるQubes OSは、パーソナルコンピュータのハードウェアをターゲットとしている。この市場は、IntelおよびAMDのプロセッサとチップセットを搭載したノートパソコンが主流となっている。
Qubes OSの最小基本システム要件[ 22 ]は以下のとおりです。
ユーザーは、いくつかの重要な違いはあるものの、標準的なグラフィカルデスクトップオペレーティングシステムとほぼ同じようにQubes OSを操作する。
Xenハイパーバイザーは、ホストされている仮想マシン( Xenの用語ではドメインと呼ばれる)間で強力な分離機能を提供します。
Xenによって最初に起動されるドメインは、ドメインゼロまたはより一般的にはdom0と呼ばれる特権的な管理ドメインです。
Qubes OS 4.1.2以降、dom0で動作するオペレーティングシステムは、準仮想化Linuxカーネルを実行するFedora Linuxです。dom0のLinuxカーネルは、標準のLinuxカーネルデバイスドライバを介して、すべての物理システムハードウェアへのアクセスを制御および仲介します。
オペレーティングシステムは、ユーザーのグラフィカルデスクトップをホストし、ほとんどのハードウェアデバイスを制御します。これには、グラフィックデバイス、USBポート、ストレージ、キーボードやマウスなどの入力デバイスが含まれます。基本となるグラフィカルデスクトップは、Xサーバー、Xfwmウィンドウマネージャー、およびXfceデスクトップで構成されています。
設計上、dom0 はキューブとの直接的な相互作用を最小限に抑え、そこから攻撃が発生する可能性を低く抑えています。[ 26 ] [ 27 ]
dom0オペレーティングシステムおよび付属のテンプレートOSイメージのアップデートは、dom0オペレーティングシステムがネットワークに直接接続する必要のない特別なメカニズムを介して実行されます。
アプリキューブ(キューブのインスタンス)は、Webブラウザ、電子メールクライアント、テキストエディタなどの標準的なユーザーアプリケーションを安全かつ区画化された状態で実行します。
アプリキューブの動作は、キューブマネージャによって制御されます。キューブマネージャは個々のアプリキューブを起動し、それらのアプリケーションを通常のプロセスウィンドウとしてdom0のデスクトップ上に表示します。
このメカニズムはサンドボックスの考え方に基づいています。アプリケーションの実行、ドキュメントの表示などが完了すると、シャットダウン時に使い捨てオブジェクト全体が破棄されます。[ 28 ]
Qubes OSは、すべてのアプリキューブを単一の共通デスクトップ環境に統合します。特定のプロセスにおける各アプリキューブの識別は、アプリキューブのプロパティで定義された、偽造不可能な色付きのウィンドウ枠によって行われます。
dom0におけるディスク使用量は、複数のアプリケーションキューブが読み取り専用モードで維持される共通の「テンプレート」ルートファイルシステムイメージを共有できるようにすることで最小限に抑えられています。追加のディスクストレージは、ユーザーのアプリケーション、データ、およびVMごとの設定にのみ使用されます。
ネットワーク機構はセキュリティ攻撃に対して最も脆弱な部分です。これを回避するため、ネットワーク機構は「ネットキューブ」と呼ばれる、権限のない別のキューブに隔離されています。
別のファイアウォールドメインは、Linuxカーネルベースのファイアウォールを格納するために使用され、ネットワークドメインが侵害された場合でも、ファイアウォールは分離され保護されます(別のVM内の別のLinuxカーネルで実行されているため)。[ 29 ]
エドワード・スノーデン、ダニエル・J・バーンスタイン、クリストファー・ソゴイアンなどのセキュリティとプライバシーの専門家は、このプロジェクトを公に称賛している。[ 30 ]
Jesse Smith はDistroWatch Weeklyに Qubes OS 3.1 のレビューを書いた: [ 31 ]
しかし、試用2日目に、Qubesの使い方が間違っていたことに気づき、大きな発見がありました。私はQubesを、セキュリティが強化されたLinuxディストリビューションとして、セキュリティ機能が追加された通常のデスクトップOSのように扱っていたのです。そのため、ドメイン間でファイルを共有したり、スクリーンショットを撮ったり、ドメインゼロで開いたプログラムからインターネットにアクセスしたりすることが難しく、すぐに不満を感じました。Qubesを、たまたまディスプレイ画面を共有している複数の独立したコンピュータとして考えるようになってから、使い勝手は格段に向上しました。各ドメインを他のドメインから切り離された独立した島のように捉えるようになってから、Qubesの仕組みがずっと理解しやすくなりました。Qubesは、仮想化によって同じサーバー上で複数のOSを実行できるのとほぼ同じように、1つのデスクトップ上でドメインを統合するのです。
Linux Journalの Kyle Rankin は2016 年に Qubes OS をレビューしました: [ 32 ]
Qubesが通常のLinuxデスクトップよりも優れたセキュリティを提供する点は、既にお分かりいただけていると思います。
2014年、Qubesは国際人権団体Access Nowが主催するAccess Innovation Prize 2014のエンドポイントセキュリティ部門のファイナリストに選ばれた。[ 33 ]