Release of OS Qubes 4.1 using virtualization for application isolation

After almost four years of development, the Qubes 4.1 operating system was released, which implements the idea of ​​using a hypervisor for strict isolation of applications and OS components (each class of applications and system services run in separate virtual machines). Requires a system with 6 GB of RAM and a 64-bit Intel or AMD CPU with support for VT-x c EPT / AMD-v c RVI and VT-d / AMD IOMMU technologies, an Intel GPU is desirable (NVIDIA and AMD GPUs are not well tested ). The size of the installation image is 6 GB.

Applications in Qubes are divided into classes depending on the importance of the data being processed and the tasks being solved. Each application class (e.g. work, entertainment, banking) as well as system services (network subsystem, firewall, storage, USB stack, etc.) run in separate virtual machines that run using the Xen hypervisor . At the same time, these applications are available within the same desktop and are distinguished for clarity by different colors of the window frame. Each environment has read access to the underlying root FS and local storage that does not overlap with the storages of other environments; a special service is used to organize application interaction.

Release of OS Qubes 4.1 using virtualization for application isolation

The Fedora and Debian package base can be used as the basis for the formation of virtual environments, and templates for Ubuntu, Gentoo and Arch Linux are also supported by the community. It is possible to organize access to applications in a Windows virtual machine, as well as create Whonix-based virtual machines to provide anonymous access via Tor. The user shell is based on Xfce. When a user launches an application from the menu, that application starts in a specific virtual machine. The content of virtual environments is defined by a set of templates.

Release of OS Qubes 4.1 using virtualization for application isolation
Release of OS Qubes 4.1 using virtualization for application isolation

Major changes:

  • Implemented the ability to use a separate GUI Domain environment with components to ensure the operation of the graphical interface. Previously, virtual environments for each application class ran a separate X server, a simplified window manager, and a stub video driver that translated output to the control environment in composite mode, but the components of the graphics stack, the main desktop window manager, screen controls, and graphics drivers ran in the main control environment Dom0. Now graphics-related functions can be moved out of Dom0 into a separate GUI Domain environment and separated from system management components. In Dom0, only a special background process is left to provide access to certain pages of memory. GUI Domain support is still experimental and not enabled by default.
  • Added experimental support for Audio Domain, a separate environment for running the sound server, which allows you to extract components for sound processing from Dom0.
  • Added a qrexec-policy background process and a new rule system for the Qrexec RPC engine, which allows commands to be executed in the context of specified virtual environments. The Qrexec rules system defines who can do what and where in Qubes. The new version of the rules features a more flexible format, a significant increase in performance, and a notification system that makes it easier to diagnose problems. Added the ability to run Qrexec services as a server accessible via a socket server.
  • Three new virtual environment templates based on Gentoo Linux are proposed - minimal, with Xfce and with GNOME.
  • A new infrastructure has been implemented for maintenance, automated assembly and testing of additional virtual environment templates. In addition to Gentoo, the infrastructure provides support for Arch Linux templates and Linux kernel testing.
  • The build and test system has been improved, support for checking in the continuous integration system based on GitLab CI has been added.
  • Work has been done to implement support for repeatable builds of Debian-based environments, which can be used to confirm that Qubes components are built exactly from the declared sources and do not contain extraneous changes, the substitution of which, for example, can be done by attacking the build infrastructure or bookmarks in the compiler .
  • Firewall implementation rewritten.
    Release of OS Qubes 4.1 using virtualization for application isolation
  • The sys-firewall and sys-usb environments now start in "disposable" mode by default. are disposable and can be created on demand.
  • Improved support for high pixel density screens.
  • Added support for different cursor shapes.
  • Implemented a notification about the lack of free disk space.
  • Added support for paranoid backup recovery mode, which uses a one-time virtual environment for recovery.
  • The installer provides the option to choose between Debian and Fedora for virtual machine templates.
  • Added a new graphical interface for managing updates.
    Release of OS Qubes 4.1 using virtualization for application isolation
  • Added Template Manager utility to install, remove and update templates.
  • Improved template distribution mechanism.
  • The base Dom0 environment has been updated to the Fedora 32 package base. Templates for generating virtual environments have been updated to Fedora 34, Debian 11 and Whonix 16. The Linux 5.10 kernel is proposed by default. Updated Xen 4.14 hypervisor and Xfce 4.14 graphical environment.

Source: opennet.ru

Add a comment