Qubes OSの仕組み
まずは以下チャートをみて欲しい。
公式サイトのドキュメンテーションにあったチャートを、ざっくりとわかりやすく書き直してみた。
前回・前々回に書いた通り、ホストドメインと言われるDomain 0(Dom0)はネットワークに接続していない、Qubes OSの基幹となるVMだ。
ここでQubes OS全体の管理を行う。そのため、Dom0に色々なソフトウェアをインストールすることは、PC全体を危険に晒すことになるため、絶対にNGだ。Dom0を動かすディストリビューションは、Fedoraである。
チャート左上に書かれているのが、テンプレートVMと言われる、実際に作業をする際に使用するディストリビューションだ。デフォルトのFedoraの他、DebianとWhonixがインストール時のオプションとして用意されている。
FedoraとDebianは、作業をする際に目的が被るため、筆者はインストール時にDebianのオプションを外したので、現在テンプレートVMとしてインストールされているのはFedoraとWhonixだけだ。
前回書いた通り、各個人用VMで使用するソフトウェアは、テンプレートVMでインストールする。
例えば、FedoraテンプレートVMでインストールしたGoogle ChromeやLibreOfficeは、Work、PersonalなどのVMで新たにインストールし直さなくても使えるようになる。
デフォルトで用意されたWork、Personalはその色分けで使い分けると良い。使いやすいように、好みで名前を変更しておくのが良いだろう。
セキュリティにとってネットワークも大切だ。
LANケーブル、あるいはWi-Fi経由のネットワークは、一度sys-netというVMを通り、Qubes OSのsys-firewallを経由して各VMとつながっている。
ディスポーサブルVMは、さらにsys-whonixを介して接続するので、上述の通りブラウザーを閉じれば、全てが消去される。
Vaultはネットワークに接続していないので、ネットワークを必要としない、あるいはネットワークで危険に晒したくない作業をここで行うことができる。
さらに、全てのネットワークはデフォルトでTorを経由するようセッティングされている。
そして、Qubes OSの最大の特徴は、全てのVMは文字通り「仮想」マシンであり、一つ一つが独立したPCのようなものということだ。
PCのディスク容量が多ければ、必要なだけVMを新しく作成して増やすことができる。また、自分にとって不要なVMも簡単に削除できる。
ということは、万が一マルウェアなどに感染してしまったVMはすぐに削除することができ、また新しくそれの代わりとなるVMを作成すれば、他のVMには一切影響がないということだ。これが、
ということだ。
仮想マシンの使い分けと作成・削除
用途によるVMの使い分け
上述の通り、各VMは色分けによってセキュリティグレードがわかるよう設計されている。デフォルトで用意された4つの個人用VMは、その色分けに沿って使い分けると良いだろう。
例えば、筆者の場合、黄色のPersonalでメールのThunderbirdを使い、青色のWorkでLibreOfficeや会計ソフトのGnuCash、エディタのVisual Studio Codeなどを使用している。クラウドストレージのMEGAもここで使用しているが、これは良いのかどうか、まだ判断がつかない。
社内ネットワークへの接続も、Workで行う。他のPCや外付けHDDへのアクセスは、Workのファイルマネージャよりsamba経由で行われている。
ウェブブラウザーについては、今のところ使うたびにディスポーサブルVM内のChromiumで閲覧している。仮にGnomeソフトウェアからインストールできない外部のソフトウェアをダウンロードしたい場合は、FedoraテンプレートVM内のChromiumからダウンロードする。
まだ使い始めたばかりなので、果たしてこのような使い分けが正しいのかどうか判断しかねる。しかし、アンチウイルスソフトをインストールしなくとも、これなら本来のLinuxがもつ、root権限によるセキュリティで十分なのではないだろうか。
加えて言えば、インストール時に設定した通り、ディスク全体は暗号化されているのだ。
VMの追加と削除
各個人用VMの追加・削除は、極めて簡単だ。
左上のアプリケーションメニューにある「Create Qubes VM」を開き、そこでVMの名前、色分け、どのテンプレートを使うかの選択、どのネットワークを使うかの選択(通常はsys-firewall)をすれば、すぐに作成できる。
その後、Qubes Managerにて作成したVMを右クリックし、Qube Settingを開いて、ディスク容量の割り当てやそこで使用するソフトウェアの選択を行えば良い。
削除したい場合は、Qubes Managerにて作成したVMを右クリックし、Delete Qubeを選択するだけだ。確認のため、Qube名を打ち込んだら削除が完了する。万が一ウイルスに感染しても、これならすばやくVMを削除できる。
テンプレートVMの作成・削除は、Dom0の端末からのみ行う。デフォルトで用意されている公式テンプレートのFedora、Debian、Whonixを再度インストールする場合は、端末にて以下を行う。
$ sudo qubes-dom0-update qubes-template-name(fedora-30など)
テンプレートVMの作成・削除は、Dom0の端末からのみ行う。
$ sudo dnf remove qubes-template-name
VM間のファイルコピーと移動
前回記事まで、スクリーンショットの使い方がわからなかったが、ようやく理解した。同時に、保存したスクリーンショットのVM間のファイルコピーや移動方法も理解することができた。
スクリーンショットは、左上のアプリケーションメニュー –> System Tools –> Screenshotを選ぶ。使い方は他のlinuxと同じだが、保存はDom0のファイルマネージャのPicturesに保存される。後で加工しやすいようにと、個人用VMのファイルマネージャに保存することができない。
そして厄介だったのは、Dom0のファイルマネージャがどこからも開けない(開き方がわからない)のだ。あれこれググった結果、端末で以下のようにすれば、Dom0のファイルマネージャを開くことができた。
$ xdg-open .
Dom0から他VMへのファイルコピー(または移動)
Dom0から他のVMへのファイルコピー(または移動)は、端末でしか行うことができない。
例えば、Workにscreenshot.pngというファイルをコピー(または移動)する場合は、以下のように行う。
$ qvm-copy(or move)-to-vm work(VM名) /home/user(インストール時に使用したユーザー名)/Pictures/screenshot.png
コピー(または移動)したファイルは、Workのファイルマネージャ内「QubesIncoming/dom0」というフォルダにある。
反対に、VMからDom0へのファイルコピー(または移動)は、システム全体を危険に晒す可能性が大きいため、NGだ。
どうしてもしたい場合は、公式サイトのドキュメンテーションを参照しよう。
VM間のファイルコピー(または移動)
VM間のファイルコピー(または移動)は、Dom0からより簡単だ。
アプリケーションメニューからVMのファイルマネージャを開き、コピー(または移動)したいファイルを右クリックする。すると以下のように、「Move To Other AppVM」「Copy To Other AppVM」と出るので、それを選ぶだけだ。
コピー(または移動)したファイルは、Dom0の時と同様に、目的のファイルマネージャ内「QubesIncoming/personal(コピー元のVM名)」フォルダに保存される。
Qubes OSのレビュー
ここまで使ってみた感想を少し書いておこう。
- 起動に時間がかかる(暗号化ディスク・ログインと2度パスワードを要求される)
- Torを経由するため、ネットワーク接続に時間がかかる
- 外付けHDDなど外部に保存されたファイルは一度VM内にコピーしてからでないと編集できない(ちょっと面倒)
- PCのメモリ容量(推奨は16GB:筆者PCは2GB x 4)のため、一度にいくつものVMを立ち上げることができない(せいぜい2つ)
特に最後のメモリについては、推奨のシステム要件をよく見ずにインストールしてしまったが、以下のようになっている。
【最小要件】
- CPU: 64ビットIntel又はAMDプロセッサ
- メモリ: 4 GB RAM
- ストレージ: 32GBの空き容量
【推奨要件】
- CPU: 64ビットIntel又はAMDプロセッサ
- メモリ: 16 GB RAM
- ストレージ: 128GBの空き容量(SSDを強く推奨)
しかしながら、一つのVM内でのブラウジングや各ソフトウェアでの作業などは、何ら問題ない。必要に応じて、VMを立ち上げたりシャットダウンしながら使えば、どうにか普段使いはできる。
感想自体はネガティブなことばかりだが、使いやすさを優先するなら通常のLinux+アンチウイルスソフト、セキュリティを優先するならQubes OSという考え方が良いと思う。
もう少しQubes OSを使ってみて、エドワード・スノーデン氏推奨の意味を確かめたい。
Qubes OSに関する日本語記事自体が少なく、参考になるものもあまり多くない。この記事は公式サイトのドキュメントを元に、自分であれこれ試しながら書いたものなので、もし違う点があれば是非ご指摘いただきたい。
【ざっくりLinux!のおすすめ本】
コメント
こういうものは日本語での情報が少ないのでありがたいです。ありがとうございます。
QubesOSを普段使いにしようと思うのですがwhonix通さなければTor通さない通常のネットワーク経路を通るのでしょうか?
コメント有難うございます。
QubesOSのネットワークは、デフォルトですべてのネットワークはTor経由になっています。
それがQubesOSの良いところであり、面倒なところでもあるでしょう。
普段使いには何かと面倒なOSですが、セキュリティ面では安心できますね。
あまりTor通さないことは想定していない感じでしょうか。
うーん、PureOSにVMつくってそこで作業って感じにしたほうがよさそうですね。
コメント有難うございます。
ご指摘のとおり、PureOSもセキュリティ重視のディストリビューションなので、良いかもしれません。