QubesOS

Author Avatar
天空之间 3月 22, 2017
  • 在其它设备中阅读本文章

最近折腾完 Alpine Linux 之后,我开始正式在电脑上安装双系统,我不太喜欢 Ubuntu 操作系统,所以先尝试了 Debian ,不过 Debian 在我的电脑上安装 Nvidia 驱动程序时发生了严重错误,造成 X 桌面崩溃无法启动。我本着试试小众系统的想法,从 “粉碎棱镜” 网站得知了一个叫做 Qubes OS 的安全操作系统,介绍上写着这个系统使用 XEN 隔离每个程序。Qubes OS 认为,没有任何一个软件是安全的,所以 Qubes 使用虚拟机和安全复制模式隔离所有应用程序和用户数据。

Qubes OS 是什么

Qubes OS是一个面向安全的桌面操作系统,旨在通过隔离提供安全保障。
Qubes 通过隔离来保障安全性,并假设不可能有完美的,无漏洞的桌面环境。因为桌面环境有数百万行的代码并与数十亿的软件/硬件密切相关。这些关联中的任何一个关键错误都可能足以让恶意软件控制计算机。
为了保护桌面计算机的安全,Qubes 隔离了各种操作环境,因此,如果其中一个操作环境被黑,恶意软件只能得到该环境内的数据。
在 Qubes 中,有两个层面的隔离:硬件控制器被隔离到功能域(图形界面,网络,存储),而用户的数字生活由不同的信任级别隔离。例如:工作域(信任度最高),购物域,随机域(信任度最低)。每个域都在独立的虚拟机中运行。
———— 维基百科

具体请参看 这里

安装 Qubes

准备分区

首先准备出一个足够大的分区,我把电脑的最后一个分区清空,分配了大概 120G 的存储空间用来安装 Qubes

准备安装程序

因为这次是直接安装到电脑的硬盘而不是虚拟机,所以需要将 iso 文件写入到 U盘 中并引导,U盘写入使用 Rufus 工具来完成

下载光盘镜像 与 Rufus

Qubes OS 的官方网站在 Qubes OS Offical ,截止当前 2017年3月20日,最新版本为 Qubes Release 3.2 ,你看到这篇文章的时候很可能已经有比这个版本更新的版本了。选择 iso 进行下载即可。
Rufus 在 这里 下载,这个软件有中文语言,非常好用。

写入启动U盘

打开 Rufus ,插入U盘,Rufus 会自动识别你的U盘,写入过程会格式化你的U盘,所以确保你的U盘中已经没有你需要的文件。
在 Rufus 窗口下方选择 iso 文件并点击开始,这时候 Rufus 会提示你这个镜像是一个混合模式的镜像,询问你是使用 ISO 模式还是 DD模式,这里需要注意的是 Qubes 系统引导必须使用 DD模式 才能成功引导。选择 DD模式 并开始写入。

注意: DD模式写入后会导致你的U盘不可被修改,Windows下也无法正常格式化恢复你的U盘,只能在 Linux 下通过 mkfs.vfat 命令格式化U盘。

BIOS安装设置

根据你的电脑说明书的方式进入 BIOS ,选择启动选项,关闭 Secure Boot(安全引导),这里你可以保持 UEFI 引导模式,不需要旧式引导模式。
同时开启CPU的虚拟化技术 VT-x 或其他类似的选项。

开始安装

插入你的 Qubes 安装U盘并重启,你会进入 Qubes 安装界面,Qubes 系统基于 Fedora 23 ,使用 RedHat 系的图形化安装界面,如果你曾经安装过 CentOS 或者 RHEL 你就会发现这个界面非常的熟悉。需要注意的是,由于我是安装双系统,所以在硬盘分区选择手动模式,选择未分配的区域分别创建下列分区

  • /boot/efi 500M
  • swap 10G
  • / 剩余的都分配给它

设置完成后点击 Done 开始安装 Qubes。
这个步骤大概需要1-2个小时。

配置 Qubes

启动 Qubes

安装结束后,默认你的电脑应该会重启到原来的 Windows 系统上,开机时按 Esc 暂停启动,并选择从 EFI 文件启动,选择新的 EFI 分区并选择 xen.efi 启动 Qubes

如果你不进行其他配置,以后想进入 Qubes OS 都是这样操作。

首次进入系统的时候,Qubes 会询问你进行默认的系统配置,我的设置是配置 网络虚拟机防火墙虚拟机 ,取消了 Whonix 虚拟机 的配置,有关 Whonix 虚拟机的相关信息请看 这里
首次配置结束后就成功进入了 Qubes 系统。

进入 Qubes 桌面

进入 Qubes 桌面之后,你会看到 Qubes VM Manager 自动弹出,并显示启动了 dom0 sys-net sys-firewall 三个虚拟机,在左上角菜单中可以启动不同的虚拟区域以运行软件。

连接网络

这一步困扰了我比较长的时间,后来我发现这需要在左上的菜单中选择 sys-net 虚拟机 Add-Shortcut 并添加 Network Manager ,这样你就能配置你的网络连接了。

安装应用程序

因为 Qubes 是基于 Fedora 23 操作系统,所以包管理器命令是 dnf 。在 Qubes 中,所有工作虚拟机都是基于 TemplateVM模板虚拟机启动的,工作虚拟机只会保存用户文件而不会保存你安装的程序,如果你需要安装到模板虚拟机。然后关闭你的工作虚拟机并重启打开,即可同步你的软件。

向 dom0 安装软件或更新 dom0

因为安全性保护,dom0 系统并不连接网络,更新系统可以在 Qubes VM Manager 中右键 dom0 并选择 Update VM。稍后,Qubes 会自动在 sys-firewall 虚拟机中启动下载程序并将文件传输到 dom0 再安装系统更新,当然如果你想要使用命令行,则可以使用 sudo qubes-dom0-update 命令,这个命令也可以用来安装程序到 dom0,执行 sudo qubes-dom0-update 软件包 即可。

Qubes 特性与功能

安全剪贴板

当然,Qubes 中每一个虚拟机的剪贴板是独立的,如果你想跨虚拟机复制文字怎么办呢,答案就是使用全局复制,先将你想复制的文字复制到当前虚拟机的剪贴板中,然后按下 Ctrl + Shift + C ,右上角会提示已复制到全局剪贴板,然后转到目标虚拟机窗口,按下全局粘贴快捷键 Ctrl + Shift + V 然后就可以用粘贴功能粘贴文字了。注意,dom0 的复制只能在右上 Q 标志上右键 copy dom0 clipboard 来进行复制。

文件传输

安全剪贴板功能并不能复制文件,你需要打开文件管理器右键发送到 VM,或者使用 qvm-copy-file 虚拟机名 文件名 。文件会被保存在目标虚拟机的 ~/home/用户名/QubesIncoming 文件夹下。

中文输入

作为非英语母语的人来说,输入法必不可少,那么如何安装中文语言输入呢?
启动你的模板虚拟机,然后输入 dnf install ibus-pinyin ibus-qt4 ,安装结束后关闭你的模板虚拟机并重启你的工作虚拟机。
打开工作虚拟机的命令行,输入 ibus-setup 在弹出的窗口中选择 Yes 然后在配置界面 Input Method 添加一个 Chinese - Pinyin 即可使用中文输入。

所以呢

我试用了大概1个星期,感觉上 Qubes 的使用并不是很方便,而且内存占用巨大,启动后基本上要占用超过 5G 的内存,运行 Firefox 或者其他软件之后这种现象更加严重。 VM 之间的传输非常不方便,作为日常试用会大幅度的降低效率,不适合作为平时日常使用的操作系统使用。
不过作为安全性来说我认为还是非常不错的,这应该又是一个安全到几乎偏执的一个操作系统。
再见 Qubes OS ,你好 OpenSUSE。

本文使用 CC BY-NC-SA 3.0 中国大陆 协议许可
具体请参见 知识共享协议

本文链接:https://liyin.date/2017/03/22/qubesos/