SJ blog
Qubes OS
Z

信頼度ランク

S 公式ソース確認済み
A 成功実績多数・失敗例少数
B 賛否両論
C 動作未確認・セキュリティリスク高
Z 個人所感

Qubes OS の Qube を作成・管理する — AppVM/TemplateVM/StandaloneVMの使い分け

Qubes OS の Qube(仮想マシン)の種類と使い分け、Qubes Manager と qvm-* コマンドを使った作成・設定・削除の方法を解説します。

一言結論

Qubes OSのQube設計の核心はTemplateVM→AppVMの分離で、アプリはテンプレートに、データはAppVMの/homeに置くことで再現性とデータ保護を両立できる。DisposableVMは信頼できないファイルを扱う際の必須ツールだ。

Qube の種類

TemplateVM(テンプレートVM)

AppVM の基になるVM。OSとアプリケーションをインストールする土台です。

  • fedora-40: Fedora ベース(デフォルト)
  • debian-12: Debian ベース
  • whonix-gw: Tor ゲートウェイ
  • whonix-ws: Tor ワークステーション

テンプレートに変更を加えると、そのテンプレートを使う全AppVMに反映されます。

AppVM(アプリケーションVM)

実際に作業するVM。テンプレートVMをベースにして起動します。

  • ルートファイルシステムはテンプレートと共有(読み取り専用)
  • /home/rw だけがAppVM固有のデータ

StandaloneVM

テンプレートを使わない独立したVM。完全に独立したOSが動きます。

  • テンプレートに縛られない自由度がある
  • ディスク使用量が多い
  • 主な用途: Windows VM、特殊なカーネルが必要なVM

DisposableVM(使い捨てVM)

使用後に自動で削除されるVM。

  • 添付ファイルを開く
  • 信頼できないリンクを開く
  • 単発の作業

ServiceVM(サービスVM)

  • sys-net: ネットワーク管理
  • sys-firewall: ファイアウォール
  • sys-usb: USB管理
  • sys-gui: GUI管理(オプション)

Qubes Manager での操作

デスクトップ左上の Q メニュー → Qubes Manager で GUI 管理ツールが開きます。

AppVM の作成(GUI)

  1. Qubes Manager → Add ボタン
  2. Name: 名前を入力(例: work-client-a
  3. Template: ベースにするテンプレートを選択
  4. Networking: ネットワーク設定(sys-firewallsys-whonixnone
  5. Label: 色を選択(用途の識別に使う)

ラベル(色)の使い分け

意味の例
信頼できない / 危険なサイト
オレンジ信頼性が中程度
黄色個人用
信頼できる
仕事用
カーネル / システム
グレー隔離されたテスト用
vault(最重要データ)

コマンドラインでの操作

dom0 ターミナル(Ctrl+F1 または Q メニュー → Terminal Emulator)から操作:

VM の一覧

qvm-ls
qvm-ls --all  # すべてのVM
qvm-ls -O name,state,netvm,template  # カラムを指定

VM の作成

# AppVM の作成
qvm-create --template fedora-40 --label blue work-client-a

# StandaloneVM の作成(テンプレートをクローン)
qvm-create --standalone --label red malware-analysis

# DisposableVM テンプレートの作成
qvm-create --template fedora-40 --label red --property template_for_dispvms=True disp-template

VM の起動・停止

qvm-start work
qvm-shutdown work
qvm-kill work  # 強制終了

# 状態確認
qvm-check work --running

VM の設定変更

# メモリ設定
qvm-prefs work memory 2048        # 初期メモリ (MB)
qvm-prefs work maxmem 4096        # 最大メモリ (MB)

# vCPU 数
qvm-prefs work vcpus 2

# ネットワーク設定
qvm-prefs work netvm sys-whonix   # Whonix 経由に変更
qvm-prefs work netvm ''           # ネットワークなし

# 自動起動
qvm-prefs work autostart true

# 設定確認
qvm-prefs work

VM でコマンドを実行

# VM 上でコマンドを実行
qvm-run work "firefox"
qvm-run --auto work "cat /etc/hostname"

# VM 上のターミナルを開く
qvm-run work "xterm"

VM の削除

qvm-remove work-old
# プロンプトで確認を求められる

テンプレートのアップデート

# テンプレートを起動してアップデート
qvm-run --auto fedora-40 "sudo dnf upgrade -y"

# または Qubes Update ツールを使う
# Q メニュー → System Tools → Qubes Update

ネットワーク設定の確認

# VM のネットワーク経路を確認
qvm-ls --all -O name,netvm

# sys-net → sys-firewall → AppVM の経路
qvm-prefs sys-firewall netvm    # sys-net を返すはず

まとめ

VM タイプ使いどころ
AppVM日常の作業(ブラウザ、メール、ファイル)
TemplateVMソフトウェアのインストール
StandaloneVMWindows、特殊な環境
DisposableVM一時的な作業、怪しいファイルを開く

Qubeを目的ごとに分けるほどセキュリティが高まりますが、管理の手間も増えます。最初は work/personal/vault/untrusted の4〜5個から始めるのが現実的です。