Перейти к содержимому

Как установить qubes os

  • автор:

Как установить и настроить Qubes Linux

Как установить и настроить Qubes Linux

В этой статье будет рассказано о процессе установки и настройки Qubes Linux. Также будет рассказано о том, как тестировать и оценивать функции безопасности Qubes Linux. Наконец, он предложит краткий обзор его преимуществ и недостатков, а также некоторые альтернативы, доступные для запуска Qubes.

Процесс установки и настройки Qubes Linux довольно прост. Это также операционная система для настольных ПК, ориентированная на безопасность, которая призвана обеспечить безопасность за счет изоляции, что является отличным аргументом в пользу системных администраторов, журналистов и, надеюсь, этичных хакеров.

Qubes — это дистрибутив Linux, использующий Xen, технологию виртуализации, которая позволяет вам иметь несколько изолированных сред операционных систем, работающих на одном компьютере. С Qubes вы можете иметь разные операционные системы, работающие в разных средах, на одном компьютере.

Установить Qubes Linux

Чтобы установить Qubes Linux, перейдите на официальную страницу и загрузите Qubes Linux для своей системной архитектуры и следуйте инструкциям, описанным ниже.

Настройте системный BIOS

Важной предпосылкой для установки Qubes Linux является настройка BIOS/UEFI хост-системы. Обычно для входа в BIOS используются клавиши F2 , Canc или F10 .

Если они у вас не работают, вы можете просто поискать в Google нужную клавишу/комбинацию, чтобы попасть в BIOS/UEFI вашей системы. Сразу после того, как вы закончите, перейдите к следующему шагу ниже.

Создание загрузочных USB-кубов Linux

Создайте загрузочный USB-накопитель, чтобы загрузить ОС Qubes на USB-накопитель. Это позволит вам упростить первоначальный процесс загрузки, необходимый для начала использования операционной системы Qubes Linux.

Когда вы будете готовы, войдите в свою хост-систему, если вы уже настроили свой BIOS /UEFI, а затем продолжите процесс установки, описанный ниже.

Установка и настройка Qubes Linux

Qubes Linux вряд ли будет хорошо работать с любой традиционной виртуальной машиной, которая у вас есть, поэтому вам нужно установить ее на «голое железо», то есть на ваш ноутбук или рабочий стол.

Из-за сложного характера ОС Qubes и возможности запуска нескольких вариантов виртуальных машин вам, скорее всего, понравится полноценная природа ОС, например:

Qubes OS использует не слишком радикальный подход с использованием AppVM для облегчения управления несколькими средами приложений с функциями, обеспечивающими взаимодействие между этими виртуальными машинами:

Пользователи могут инициировать операции копирования и вставки на этих виртуальных машинах с помощью специальной комбинации клавиш (Ctrl-Shift-C /V). Из-за явного характера совместимости платформ другие виртуальные машины приложений не имеют возможности доступа к содержимому буфера обмена за пределами его явного характера.

Система Qubes настроена таким образом, что только пользователь-администратор может отвечать за то, какая AppVM должна иметь доступ к буферу обмена в любой момент времени. Природа вставки буфера обмена такова, что пользователь Qube OS должен выбрать целевое окно AppVM перед использованием комбинации клавиш Ctrl-Shift-V.

Qubes — это дистрибутив Linux, который дает вам возможность разделить вашу систему, предлагая различные уровни безопасности. Однако он основан не только на безопасности. Он также включает в себя такие инструменты, как Ubuntu Core и AppArmor, которые упрощают вашу жизнь.

Вы можете установить его на различное оборудование, включая ноутбуки и настольные компьютеры. Его основа основана на Xen, что делает его подходящим для многих типов оборудования. Qubes предназначен для обеспечения безопасности, но также предназначен для запуска современного программного обеспечения, поэтому он совместим с большинством популярных операционных систем. Он также работает с Windows 10.

Более того, элегантные функции, такие как одноразовые виртуальные машины, всегда присутствуют в изюминке функций, представленных в ОС Qubes. Благодаря привлекательному списку параметров конфигурации оставаться с ОС Qubes становится проще с течением времени, особенно если вы заинтересованы в работе с несколькими виртуальными машинами или проводите большую часть своего рабочего времени перед рабочей станцией.

Qubes также использует FreeBSD, что делает его более безопасным, чем другие дистрибутивы Linux, что является неоценимым преимуществом для системных администраторов.

Вывод

Qubes Linux легко настраивается и предлагает множество различных функций. С другой стороны, Qubes не так прост в использовании, как другие дистрибутивы Linux, что предполагает крутую кривую обучения, чтобы познакомиться с ним.

Из-за его изначально безопасной природы требуется много настроек и настроек, чтобы заставить его работать так, как вам нравится. Qubes Linux использует подход к безопасности, аналогичный подходу других дистрибутивов Linux. Qubes Linux по определению использует комбинацию различных уровней безопасности.

Supportaci se ti piacciono i nostri contenuti. Grazie.

Installation guide

Welcome to the Qubes OS installation guide! This guide will walk you through the process of installing Qubes. Please read it carefully and thoroughly, as it contains important information for ensuring that your Qubes OS installation is functional and secure.

Pre-installation

Hardware requirements

Warning: Qubes has no control over what happens on your computer before you install it. No software can provide security if it is installed on compromised hardware. Do not install Qubes on a computer you don’t trust. See installation security for more information.

Qubes OS has very specific system requirements. To ensure compatibility, we strongly recommend using Qubes-certified hardware. Other hardware may require you to perform significant troubleshooting. You may also find it helpful to consult the Hardware Compatibility List.

Even on supported hardware, you must ensure that IOMMU-based virtualization is activated in the BIOS or UEFI. Without it, Qubes OS won’t be able to enforce isolation. For Intel-based boards, this setting is called Intel Virtualization for Directed I/O (Intel VT-d) and for AMD-based boards, it is called AMD I/O Virtualization Technology (or simply AMD-Vi). This parameter should be activated in your computer’s BIOS or UEFI, alongside the standard Virtualization (Intel VT-x) and AMD Virtualization (AMD-V) extensions. This external guide made for Intel-based boards can help you figure out how to enter your BIOS or UEFI to locate and activate those settings. If those settings are not nested under the Advanced tab, you might find them under the Security tab.

Note: Qubes OS is not meant to be installed inside a virtual machine as a guest hypervisor. In other words, nested virtualization is not supported. In order for a strict compartmentalization to be enforced, Qubes OS needs to be able to manage the hardware directly.

Copying the ISO onto the installation medium

Pick the most secure existing computer and OS you have available for downloading and copying the Qubes ISO onto the installation medium. Download a Qubes ISO.

Warning: Any file you download from the internet could be malicious, even if it appears to come from a trustworthy source. Our philosophy is to distrust the infrastructure. Regardless of how you acquire your Qubes ISO, verify its authenticity before continuing.

Once the ISO has been verified as authentic, you should copy it onto the installation medium of your choice, such as a USB drive, dual-layer DVD, or Blu-ray disc. The size of each Qubes ISO is available on the downloads page by hovering over the download button. The instructions below assume you’ve chosen a USB drive as your medium. If you’ve chosen a different medium, please adapt the instructions accordingly.

Note: There are important security considerations to keep in mind when choosing an installation medium. Advanced users may wish to re-verify their installation media after writing.

Warning: Be careful to choose the correct device when copying the ISO, or you may lose data. We strongly recommended making a full backup before modifying any devices.

Linux ISO to USB

On Linux, if you choose to use a USB drive, copy the ISO onto the USB device, e.g. using dd :

$ sudo dd if=Qubes-RX-x86_64.iso of=/dev/sdY status=progress bs=1048576 conv=fsync 

Change Qubes-RX-x86_64.iso to the filename of the version you’re installing, and change /dev/sdY to the correct target device e.g., /dev/sdc ). Make sure to write to the entire device (e.g., /dev/sdc ) rather than just a single partition (e.g., /dev/sdc1 ).

Windows ISO to USB

On Windows, you can use the Rufus tool to write the ISO to a USB key. Be sure to select “Write in DD Image mode” after selecting the Qubes ISO and pressing “START” on the Rufus main window.

Note: Using Rufus to create the installation medium means that you won’t be able to choose the «Test this media and install Qubes OS» option mentioned in the example below. Instead, choose the «Install Qubes OS» option.

Rufus menu

Rufus DD image mode

Installation

This section will demonstrate a simple installation using mostly default settings.

Getting to the boot screen

“Booting” is the process of starting your computer. When a computer boots up, it first runs low-level software before the main operating system. Depending on the computer, this low-level software is may be called the “BIOS” or “UEFI”.

Since you’re installing Qubes OS, you’ll need to access your computer’s BIOS or UEFI menu so that you can tell it to boot from the USB drive to which you just copied the Qubes installer ISO.

To begin, power off your computer and plug the USB drive into a USB port, but don’t press the power button yet. Right after you press the power button, you’ll have to immediately press a specific key to enter the BIOS or UEFI menu. The key to press varies from brand to brand. Esc , Del , and F10 are common ones. If you’re not sure, you can search the web for BIOS key or UEFI key (replacing with your specific computer model) or look it up in your computer’s manual.

Once you know the key to press, press your computer’s power button, then repeatedly press that key until you’ve entered your computer’s BIOS or UEFI menu. To give you and idea of what you should be looking for, we’ve provided a couple of example photos below.

Here’s an example of what the BIOS menu looks like on a ThinkPad T430:

ThinkPad T430 BIOS menu

And here’s an example of what a UEFI menu looks like:

UEFI menu

Once you access your computer’s BIOS or UEFI menu, you’ll want to go to the “boot menu,” which is where you tell your computer which devices to boot from. The goal is to tell the computer to boot from your USB drive so that you can run the Qubes installer. If your boot menu lets you select which device to boot from first, simply select your USB drive. (If you have multiple entries that all look similar to your USB drive, and you’re not sure which one is correct, one option is just to try each one until it works.) If, on the other hand, your boot menu presents you with a list of boot devices in order, then you’ll want to move your USB drive to the top so that the Qubes installer runs before anything else.

Once you’re done on the boot menu, save your changes. How you do this depends on your BIOS or UEFI, but the instructions should be displayed right there on the screen or in a nearby tab. (If you’re not sure whether you’ve saved your changes correctly, you can always reboot your computer and go back into the boot menu to check whether it still reflects your changes.) Once your BIOS or UEFI is configured the way you want it, reboot your computer. This time, don’t press any special keys. Instead, let the BIOS or UEFI load and let your computer boot from your USB drive. If you’re successful in this step, after a few seconds you’ll be presented with the Qubes installer screen:

Boot screen

From here, you can navigate the boot screen using the arrow keys on your keyboard. Pressing the “Tab” key will reveal options. You can choose one of three options:

  • Install Qubes OS
  • Test this media and install Qubes OS
  • Troubleshooting

Select the option to test this media and install Qubes OS.

Note: If the latest stable release is not compatible with your hardware, you may wish to consider testing a newer release.

If the boot screen does not appear, there are several options to troubleshoot. First, try rebooting your computer. If it still loads your currently installed operating system or does not detect your installation medium, make sure the boot order is set up appropriately. The process to change the boot order varies depending on the currently installed system and the motherboard manufacturer. If Windows 10 is installed on your machine, you may need to follow specific instructions to change the boot order. This may require an advanced reboot.

The installer home screen

On the first screen, you are asked to select the language that will be used during the installation process. When you are done, select Continue.

welcome

Prior to the next screen, a compatibility test runs to check whether IOMMU-virtualization is active or not. If the test fails, a window will pop up.

Unsupported hardware detected

Do not panic. It may simply indicate that IOMMU-virtualization hasn’t been activated in the BIOS or UEFI. Return to the hardware requirements section to learn how to activate it. If the setting is not configured correctly, it means that your hardware won’t be able to leverage some Qubes security features, such as a strict isolation of the networking and USB hardware.

If the test passes, you will reach the installation summary screen. The installer loads Xen right at the beginning. If you can see the installer’s graphical screen, and you pass the compatibility check that runs immediately afterward, Qubes OS is likely to work on your system!

Like Fedora, Qubes OS uses the Anaconda installer. Those that are familiar with RPM-based distributions should feel at home.

Installation summary

Did you know? The Qubes OS installer is completely offline. It doesn’t even load any networking drivers, so there is no possibility of internet-based data leaks or attacks during the installation process.

The Installation summary screen allows you to change how the system will be installed and configured, including localization settings. At minimum, you are required to select the storage device on which Qubes OS will be installed.

Installation summary not ready

Localization

Let’s assume you wish to add a German keyboard layout. Go to Keyboard Layout, press the “Plus” symbol, search for “German” as indicated in the screenshot and press “Add”. If you want it be your default language, select the “German” entry in the list and press the arrow button. Click on “Done” in the upper left corner, and you’re ready to go!

Keyboard layout selection

The process to select a new language is similar to the process to select a new keyboard layout. Follow the same process in the “Language Support” entry.

Language support selection

You can have as many keyboard layout and languages as you want. Post-install, you will be able to switch between them and install others.

Don’t forget to select your time and date by clicking on the Time & Date entry.

Time and date

Software

Add-ons

On the software selection tab, you can choose which software to install in Qubes OS. Two options are available:

  • Debian: Select this option if you would like to use Debian qubes in addition to the default Fedora qubes.
  • Whonix: Select this option if you would like to use Whonix qubes. Whonix allows you to use Tor securely within Qubes.

Whonix lets you route some or all of your network traffic through Tor for greater privacy. Depending on your threat model, you may need to install Whonix templates right away.

Regardless of your choices on this screen, you will always be able to install these and other templates later. If you’re short on disk space, you may wish to deselect these options.

By default, Qubes OS comes preinstalled with the lightweight Xfce4 desktop environment. Other desktop environments will be available to you after the installation is completed, though they may not be officially supported (see advanced topics).

Press Done to go back to the installation summary screen.

Installation destination

Under the System section, you must choose the installation destination. Select the storage device on which you would like to install Qubes OS.

Warning: Be careful to choose the correct installation target, or you may lose data. We strongly recommended making a full backup before proceeding.

Your installation destination can be an internal or external storage drive, such as an SSD, HDD, or USB drive. The installation destination must have a least 32 GiB of free space available.

Note: The installation destination cannot be the same as the installation medium. For example, if you’re installing Qubes OS from a USB drive onto a USB drive, they must be two distinct USB drives, and they must both be plugged into your computer at the same time. (Note: This may not apply to advanced users who partition their devices appropriately.)

Installing an operating system onto a USB drive can be a convenient way to try Qubes. However, USB drives are typically much slower than internal SSDs. We recommend a very fast USB 3.0 drive for decent performance. Please note that a minimum storage of 32 GiB is required. If you want to install Qubes OS onto a USB drive, just select the USB device as the target installation device. Bear in mind that the installation process is likely to take longer than it would on an internal storage device.

Select storage device

Did you know? By default, Qubes OS uses LUKS/dm-crypt to encrypt everything except the /boot partition.

As soon as you press Done, the installer will ask you to enter a passphrase for disk encryption. The passphrase should be complex. Make sure that your keyboard layout reflects what keyboard you are actually using. When you’re finished, press Done.

Warning: If you forget your encryption passphrase, there is no way to recover it.

Select storage passhprase

When you’re ready, press Begin Installation.

Installation summary ready

Create your user account

While the installation process is running, you can create your user account. This is what you’ll use to log in after disk decryption and when unlocking the screen locker. This is a purely local, offline account in dom0. By design, Qubes OS is a single-user operating system, so this is just for you.

Select User Creation to define a new user with administrator privileges and a password. Just as for the disk encryption, this password should be complex. The root account is deactivated and should remain as such.

Account name and password

When the installation is complete, press Reboot. Don’t forget to remove the installation medium, or else you may end up seeing the installer boot screen again.

Post-installation

First boot

If the installation was successful, you should now see the GRUB menu during the boot process.

Grub boot menu

Just after this screen, you will be asked to enter your encryption passphrase.

Unlock storage device screen

Initial Setup

You’re almost done. Before you can start using Qubes OS, some configuration is needed.

Initial setup menu

By default, the installer will create a number of qubes (depending on the options you selected during the installation process). These are designed to give you a more ready-to-use environment from the get-go.

Initial setup menu configuration

Let’s briefly go over the options:

  • Create default system qubes: These are the core components of the system, required for things like internet access.
  • Create default application qubes: These are how you compartmentalize your digital life. There’s nothing special about the ones the installer creates. They’re just suggestions that apply to most people. If you decide you don’t want them, you can always delete them later, and you can always create your own.
  • Create Whonix Gateway and Workstation qubes: If you want to use Whonix, you should select this option.
    • Enabling system and template updates over the Tor anonymity network using Whonix: If you select this option, then whenever you install or update software in dom0 or a template, the internet traffic will go through Tor.
    • Use sys-net qube for both networking and USB devices: You should select this option if you rely on a USB device for network access, such as a USB modem or a USB Wi-Fi adapter.

    When you’re satisfied with you choices, press Done. This configuration process may take a while, depending on the speed and compatibility of your system.

    After the configuration is done, you will be greeted by the login screen. Enter your password and log in.

    Login screen

    Congratulations, you are now ready to use Qubes OS!

    Desktop menu

    Next steps

    Updating

    Next, update your installation to ensure you have the latest security updates. Frequently updating is one of the best ways to remain secure against new threats.

    Security

    The Qubes OS Project occasionally issues Qubes Security Bulletins (QSBs) as part of the Qubes Security Pack (qubes-secpack). It is important to make sure that you receive all QSBs in a timely manner so that you can take action to keep your system secure. (While updating will handle most security needs, there may be cases in which additional action from you is required.) For this reason, we strongly recommend that every Qubes user subscribe to the qubes-announce mailing list.

    In addition to QSBs, the Qubes OS Project also publishes Canaries, XSA summaries, template releases and end-of-life notices, and other items of interest to Qubes users. Since these are not essential for all Qubes users to read, they are not sent to qubes-announce in order to keep the volume on that list low. However, we expect that most users, especially novice users, will find them helpful. If you are interested in these additional items, we encourage you to subscribe to the Qubes News RSS feed or join one of our other venues, where these news items are also announced.

    For more information about Qubes OS Project security, please see the security center.

    Backups

    It is extremely important to make regular backups so that you don’t lose your data unexpectedly. The Qubes backup system allows you to do this securely and easily.

    Submit your HCL report

    Consider giving back to the Qubes community and helping other users by generating and submitting a Hardware Compatibility List (HCL) report.

    Get Started

    Find out Getting Started with Qubes, check out the other How-To Guides, and learn about Templates.

    Getting help

    • We work very hard to make the documentation accurate, comprehensive useful and user friendly. We urge you to read it! It may very well contain the answers to your questions. (Since the documentation is a community effort, we’d also greatly appreciate your help in improving it!)
    • If issues arise during installation, see the Installation Troubleshooting guide.
    • If you don’t find your answer in the documentation, please see Help, Support, Mailing Lists, and Forum for places to ask.
    • Please do not email individual members of the Qubes team with questions about installation or other problems. Instead, please see Help, Support, Mailing Lists, and Forum for appropriate places to ask questions.

    Обзор дистрибутива Qubes OS

    Qubes OS имеет несколько преимуществ, которые делают его привлекательным для пользователей:

    1. Изоляция: одно из ключевых преимуществ Qubes OS — это способность создавать виртуальные машины (VM), которые изолированы друг от друга. Каждая VM может быть использована для выполнения отдельной задачи, и в случае компрометации одной VM, остальные остаются надежными. Это повышает безопасность и защиту от вредоносных программ.
    2. Сегментация задач: Qubes OS позволяет разделять задачи на отдельные VM. Например, вы можете иметь одну VM для работы, другую для личных дел, третью для банковских операций и так далее. Это обеспечивает отсутствие влияния одной задачи на другую и повышает общую безопасность системы.
    3. Разделение ресурсов: каждая VM в Qubes OS работает в своей отдельной области памяти, что предотвращает взаимное вмешательство задач и защищает конфиденциальность данных. Это полезно при работе с чувствительными данными.
    4. Гибкость: Qubes OS позволяет гибко настраивать свою систему под свои потребности, выбирая необходимые VM и создавая собственные правила безопасности. Вы можете изменять настройки и конфигурацию системы, чтобы они соответствовали вашим предпочтениям.
    5. Поддержка множества операционных систем: позволяет установить различные операционные системы внутри VM, включая Linux, Windows, FreeBSD и др. Это означает, что вы можете использовать несколько ОС в одной системе, в зависимости от ваших нужд.
    6. Встроенная безопасность: включает в себя множество встроенных механизмов безопасности, таких как управление правами доступа, политика использования устройств, фильтрация сетевого трафика и др
    7. Активное сообщество: имеет активное сообщество пользователей и разработчиков, которые предлагают поддержку, обновления и патчи безопасности для системы. Это обеспечивает надежность и развитие ОС.

    В целом, Qubes OS предлагает высокий уровень безопасности и гибкости для пользователей, особенно для тех, кто работает с чувствительными данными и требует изоляции задач.

    Недостатки Qubes OS

    Несмотря на множество преимуществ, у Qubes OS также есть некоторые недостатки:

    1. Сложность использования: требует от пользователя знания основных принципов виртуализации и безопасности компьютера. Из-за этого начинающему пользователю может быть трудно настроить и использовать операционную систему.
    2. Высокие системные требования: требует мощного компьютера с большим объемом оперативной памяти. Без необходимого оборудования установка и использование операционной системы могут быть затруднительными.
    3. Ограничение в совместимости: из-за специфической архитектуры дистрибутива некоторое программное обеспечение может не работать или требовать особых настроек для правильной работы внутри виртуальных машин.
    4. Уязвимость физического оборудования: Даже при всех мерах безопасности, не может защитить от физической угрозы, такой как украли компьютер или установили шпионское устройство.
    5. Ограниченное сообщество: Несмотря на то, что Qubes OS развивается в активно, его сообщество пользователей все еще сравнительно небольшое по сравнению с другими операционными системами. Это может создавать ограничения в доступной поддержке и помощи от сообщества.

    Несмотря на это, Qubes OS — мощная и безопасная операционная система, но она не идеальна и имеет свои ограничения и недостатки.

    Защищенная операционная система Qubes

    Существует множество операционных систем семейства Linux. Тем не менее разработчики создают все новые и новые дистрибутивы для решения узкоспециализированных задач. Например, Kali Linux — система для тестирования безопасности и этичного взлома. Есть серверные операционные системы, есть медиа центры и многое другое.

    Менеджер виртуальных машин Qubes

    Дистрибутив Qubes OS фокусируется на максимальной безопасности. Его цель — создать максимально защищенный дистрибутив. В этой статье мы сделаем обзор Qubes OS и попытаемся разобраться чем же она отличается от других систем.

    Что такое Oubes OS?

    Qubes OS — операционная система ориентированная на безопасность, основанная на Linux. Давайте посмотрим насколько она отличается от других. Антивирусное программное обеспечение и брандмауэры необходимы для обеспечения безопасности, да даже Linux нужен антивирус, но разработчики Qubes использовали другой подход. Вместо того чтобы опираться на традиционные методы защиты, в системе используется виртуализация. Безопасность достигается, благодаря изоляции.

    Изоляционный метод основывается на ограниченном взаимодействии программ и оборудования. Примечательно, что ноутбуки с предустановленным Linux компании Purism предлагают опцию: предоставление их машин вместе с Qubes OS. Машины этой компании считаются лучшими ноутбуками и компьютерам, которые вы можете купить.

    Установка и подготовка к работе

    Как и все дистрибутивы, разработанные на основе Debian, Qubes OS устанавливается очень легко. Я пробовал Qubes OS на AMD A-10 HP ноутбуке. Легковесные системы, как правило, работают лучше, но у меня не было проблем с производительностью QubesOS на HP. Установка довольно простая. Скачать ISO образ, записать его на загрузочное устройство, и установить на жёсткий диск.

    Установка Qubes OS в виртуальную машину (например VirtualBox) не будет правильно работать, учитывая что все приложения в Qubes OS запускаются в виртуальном окружении. Таким образом, вы создадите виртуальную машину в виртуальной машине. Примечательно, что функция LiveUSB не поддерживается, хотя образ доступен для загрузки.

    Изоляция в Qubes ОС

    В отличии от других Linux дистрибутивов, Qubes OS использует виртуализацию. СистМенеджер виртуальных машин Qubesема разделена на виртуальные машины . По умолчанию доступны несколько виртуальных машин. Вы также можете создать свою. Виртуализация проявляется в 2 категориях: программы и оборудование. Программы разделяются по доменам с различным уровнем доступа.

    Например у вас есть рабочий домен для приложений которым вы доверяете и не доверенный домен для неизвестных приложений. Каждый из доменов работают в виртуальной машине. Но запуск в виртуальной машине отличается от запуска напрямую в операционной системе. Qubes использует виртуализацию для изоляции приложений. Например ваш интернет браузер останется в другой рабочей среде, не там где его файлы. Этот спасает если уязвимость позволит хакеру получить доступ к командной оболочке вашей системы. Вирусная атака будет сдержана.

    Гипервизор Xen

    Qubes OS использует гипервизор для изоляции различных виртуальных машин. Также это административный домен, Xen D0m0. Этот административный домен имеет доступ ко всему оборудованию. Более того, Dom0 отвечает за графический интерфейс пользователя (GUI) и периферийные устройства, такие как клавиатура и мышь. Но так как у него нет доступа к GUI, приложения не смогут нанести ущерб компьютеру. Также в Qubes OS есть «Просмотр приложений» (Application Viewer) для запуска приложений не в виртуальной машине.

    Выделенные домены

    Использование Qubes OS может показаться сложнее чем это есть на самом деле. В основном из-за настройки изоляции. Но достоинство Qubes OS это её простота. На первый взгляд, В Qubes достаточно стандартная оболочка. По внешнему виду она похожа на Ubuntu.

    Например, вы можете запустить два разных браузера бок о бок, они могут быть запущены в разных доменах по категории защиты. Один может быть вашим браузером в рабочем домене, в том время как другой — браузер в недоверенном. Решили посетить один сайт в браузерах, запущенных в разных доменах, в одном вы вошли в аккаунт, в другом — нужно входить снова. Это происходит, потому что они работают в доменах, в рабочей виртуальной машине.

    Для сохранения дискового пространства все домены приложений используют одну общую файловую систему. Однако, есть средство обмена между доменами. Например, если у вас есть файл, который сохранён в вашем ненадёжном домене, вы можете скопировать его в ваш рабочий домен. Различные цветные границы вокруг окна помогают вам определить, в каком домене запущено приложение.

    Одноразовые домены

    В дополнении к выделенным доменам, вы можете создать одноразовый домен. Он отличается от выделенного тем, что после использования удаляется. Если вы откроете браузер в одноразовой виртуальной машине, вы можете делать что хотите: закладки сайтов, добавлять их в любимые и сохранять куки. Когда вы закроете браузер, всё что вы сделали пропадёт. Открытие браузера в этой виртуальной машине не покажет что вы сделали в прошлый раз.

    В любом домене кликаем правой кнопкой мыши, чтобы открыть документ в одноразовом домене. Поэтому, если вы скачали файл в рабочем или персональном домене, вы можете кликнуть правой кнопкой мыши и открыть файл в одноразовом домене. В частности, это отличное средство, чтобы избежать заражения домена, например если вы скачали PDF из непроверенного источника (не рекомендуется), вы можете сохранить в рабочий домен, но запустить в одноразовом.

    Установка приложений и обновления в Qubes ОС

    Процесс установки приложений в Qubes немного отличается от других дистрибутивов Linux для настольных систем из-за использования шаблонных виртуальных машин. Когда вы перезапустите домен, программы не будет. Чтобы установить и сохранить приложение, вы должны установить его в шаблонной виртуальной машине. Это не изменяет ваши приложения . Например, если вы хотите попробовать приложение, вы можете не использовать шаблонный домен.

    Внешний вид и производительность Qubes ОС

    Внешний вид и производительность это те качества где Qubes OS действительно лучшая. Используя приложение, вы практически не замечаете, что вы используете приложение в домене. Единственный признак, что они работают в отдельных виртуальных машинах — это цветная граница вокруг каждого и надписи, с именем домена. Я действительно почувствовал симпатию к Qubes OS. Хотя её сложно настраивать.

    Хотя обе системы, Qubes OS и CoreOS фокусируются на виртуализации, Qubes все реализовано более удобно. Потому что CoreOS позволяет работать только в командной строке, поэтому она меньше подходит для начинающих. В QubesOS есть графический интерфейс, в ней проще ориентироваться.

    Почему надо использовать Qubes OS?

    Ладно, сейчас ответ на вопрос «Зачем мне использовать Qubes OS? Ведь я могу получить все то же самое в таких программах как VirtualBox, VMware, Parallels?” К сожалению, этот подход является довольно громоздким. Например, вы будете обновлять браузер отдельно для каждой виртуальной машины.

    Что делает Qubes ОС интересной для использования?
    Это её способность запускать приложения в отдельных виртуальных машинах в одной рабочей среде. Запуск виртуальных машин очень управляем. В пределах доменов, вы можете выбрать, какие приложения останутся, выбирать различные шаблоны, а также работать в полностью изолированной среде на одном рабочем столе.

    Поскольку Qubes OS это центр управления виртуальными машинами, вам понадобится очень мощный компьютер. Хотя вы можете запустить Qubes OS на менее мощном оборудовании, но это не рекомендуется.

    Введение в ОС Qubes

    Операционная система Qubes OS создана для достижения максимальной безопасности в процессе работы с различными приложениями и фундаментально отличается ото всех известных на сегодня систем на основе ядра Linux для настольных компьютеров.В данном разделе проведем краткий обзор системы Qubes, выделив некоторые особенности ее реализации, которые принципиально отличают ее ото всех дистрибутивов Linux для настольных компьютеров, а также являются особенно интересными в плане безопасности.

    При разговоре о безопасности систем Linux обычно рассматриваются вопросы безопасного функционирования серверов. В процессе выполнения мероприятий, направленных на защиту серверов, чаще всего прибегают к ограничению возможностей отдельных серверов, а также к задействованию межсетевых экранов с целью разрешения лишь необходимых сетевых взаимодействий между ними. В случае использования на сервере современного программного окружения, в котором исполняется лишь демон SSH, а также один или несколько сетевых сервисов у взломщика остается не так уж и много возможностей для проникновения. Если же определенный сервер все же подвергается взлому, идеальным вариантом действий является своевременное установление факта взлома, изоляция скомпрометированного сервера и устранение последствий взлома с условием поддержания работоспособности всей остальной инфраструктуры.

    Подход к обеспечению безопасности настольных систем Linux принципиально отличается от описанного выше ввиду широкого спектра операций, выполняемых с использованием настольных компьютеров. Каждое действие, которое выполняется с помощью настольного компьютера, открывает новый путь его компрометации. Веб-серфинг, особенно в том случае, если в вашей системе все еще установлены такие небезопасные плагины для веб-браузера, как Flash, является одним из основных путей компрометации настольной системы. Сообщения электронной почты являются еще одним популярным вектором атаки, так как пользователю нужно лишь открыть вредоносное вложение или нажать на фишинговую ссылку для того, чтобы атака прошла успешно. Настольные системы Linux обычно используются в качестве платформ для разработки программных компонентов и это означает, что их пользователи могут загружать, компилировать или исполнять чей-либо код, а также использовать программные компоненты, собранные на основе собственноручно написанного кода. Хотя некоторые пользователи Linux и могут ехидно улыбаться при разговоре о вредоносном программном обеспечении для других платформ, фактически их представления сформировались в то время, когда в качестве настольной системы могла использоваться лишь ОС Windows, при этом на сегодняшний день многое вредоносное программное обеспечение изначально является кросплатформенным и может функционировать в различных операционных системах.

    Самой большой проблемой, связанной с нарушением безопасности настольной системы Linux, является набор данных, к которому получит доступ злоумышленник в результате успешного осуществления атаки: это все ваши персональные данные. Ими могут быть любые данные начиная с различных имен и паролей и заканчивая данными для доступа к важным учетным записям, таким, как учетные записи, связанные с банковским счетом или кредитной картой, а также социальными сетями, регистраторами доменных имен и службами хостинга, которыми вы пользовались в прошлом и которые все еще хранят данные о вашей кредитной карте. В результате успешной атаки злоумышленник получит доступ ко всем вашим персональным фотографиям и сообщениям электронной почты. Он может оставить в вашей системе троян с интерфейсом удаленного доступа для того, чтобы снова проникнуть в вашу систему впоследствии, а до этого времени следить за вам с помощью веб-камеры и встроенного микрофона. Кроме того, он может даже скопировать ваши ключи SSH, VPN и GPG, которые позволят получить доступ к другим компьютерам.

    Основная идея механизма безопасности системы Qubes может быть сформулирована как «безопасность через разграничение». Данный подход позволяет минимизировать последствия компрометации того или иного программного компонента путем разделения программных компонентов и используемых ими файлов в по виртуальным машинам. Вы можете установить для каждой из виртуальных машин отдельный уровень доверия на основе риска, связанного с компрометацией программного компонента, исполняющегося в рамках этой виртуальной машины. Например, вы можете создать виртуальную машину с низким уровнем доверия для веб-серфинга без аутентификации. При этом впоследствии вы можете также создать отдельную виртуальную машину с высоким уровнем доверия только для работы с онлайн-банкингом. После этого вы можете создать еще одну виртуальную машину вообще без доступа к сети для работы с локальными документами. Если вы также выполняете какую-либо оплачиваемую работу с помощью вашего персонального компьютера, вы можете создать отдельные виртуальные машины для работы персональными файлами и выполнения оплачиваемой работы, причем последняя виртуальная машина должна иметь более высокий уровень доверия. Если вы перейдете на веб-сайт с вредоносным содержимым помощью веб-браузера из виртуальной машины с низким уровнем доверия, взломщик не получит доступа к учетной записи онлайн-банкинга и к вашим персональным файлам, так как они хранятся в других виртуальных машинах. В Qubes вы можете использовать даже одноразовые виртуальные машины: файлы этих виртуальных машин полностью удаляются с диска после закрытия запущенных в них приложений.

    Принцип работы Qubes

    Хотя вы и можете без каких-либо сложностей использовать любые существующие в данное время технологии виртуализации для создания нескольких виртуальных машин в любом дистрибутиве Linux для настольных систем, данный подход может быть как минимум неудобным, особенно в том случае, если вы не желаете использовать несколько окружений рабочего стола в рамках отдельных виртуальных машин. Также при использовании данного подхода не исключены различные ошибки, которые могут свести на нет все предпринятые вам меры предосторожности. Кроме того, у вас может возникнуть ряд резонных вопросов, например: «Как передавать файлы или использовать буфер обмена для безопасного обмена данными между виртуальными машинами?» или «Как обновлять все программные компоненты в рамках этих виртуальных машин?».

    В то время, как традиционные дистрибутивы Linux упрощают методику получения всего необходимого программного обеспечения, позволяя отказаться от загрузки исходного кода и компиляции в ручном режиме, Qubes предоставляет набор дополнительных инструментов для упрощения процесса управления множеством виртуальных машин с различными уровнями доверия в рамках настольной операционной системы. При этом Qubes позволяет выполнять все операции, выполняемые в классических операционных системах для настольных компьютеров, с учетом безопасности их выполнения, а также использует по умолчанию безопасные параметры конфигурации. Таким образом, Qubes значительно усложняет (но не делает невозможным) собственноручное выведение системы из строя.

    Qubes использует технологию виртуализации Xen (если вас интересует мотивация выбора данной технологии, вы можете обратиться к разделу с ответами на часто задаваемые вопросы веб-сайта проекта Qubes). Вместо запуска отдельных экземпляров окружения рабочего стола в каждой из виртуальных машин, для окружения рабочего стола в Qubes используется более привилегированная виртуальная машина Xen dom0 (на данный момент Qubes позволяет выбрать в качестве окружения рабочего стола либо KDE, либо XFCE, хотя участники сообщества поддерживают своими силами и другие окружения рабочих столов), при этом все остальные виртуальные машины выводят окна отдельных приложений в рамках окружения рабочего стола, запущенного в виртуальной машине dom0.

    Таким образом, запуск веб-браузера Firefox в Qubes на первый взгляд осуществляется точно так же, как и в любом дистрибутиве Linux. Главное отличие заключается в том, что Qubes позволяет установить цветовой уровень доверия для каждой из ваших виртуальных машин начиная с красного (минимальный уровень доверия) и заканчивая черным (максимальный уровень доверия) с множеством цветов между ними.

    При запуске приложения из виртуальной машины приложения (appVM в терминологии Qubes), последняя начнет свою работу в том случае, если она не была запущена ранее, после чего на экране появится окно приложения с рамкой цвета, соответствующего уровню доверия, присвоенному виртуальной машине приложения. Следовательно, в том случае, если в вашей системе запущено два экземпляра веб-браузера Firefox, вы сможете без каких-либо проблем отличить веб-браузер с низким уровнем доверия от веб-браузера для онлайн-банкинга, так как рамка окна веб-браузера с низким уровнем доверия будет иметь красный цвет, а окна веб-браузера для онлайн-банкинга — зеленый. На Рисунке 1 представлен снимок экрана из руководства пользователя Qubes, который отлично иллюстрирует описанную ситуацию.

    Множество окон приложений с рамками различных цветов

    Множество окон приложений с рамками различных цветов

    Так как виртуальная машина dom0 имеет привилегии, позволяющие осуществлять доступ к данным других виртуальных машин Xen, в Qubes предприняты дополнительные меры, направленные на ее защиту, а именно, список запускаемых с помощью нее программных компонентов ограничен компонентами окружения рабочего стола, а также из нее полностью закрыт доступ к сети. Вам придется выполнять минимально возможное количество действий в рамках данной виртуальной машины, а для работы с любыми из доступных приложений использовать вместо нее виртуальные машины приложений. В Qubes умышленно затруднена методика копирования файлов из виртуальной машины dom0 по сравнению с методикой копирования файлов между виртуальными машинами приложений. Соответствующий каждой из виртуальных машин элемент меню приложений окружения рабочего стола, которое запущено в виртуальной машине dom0, содержит подменю, позволяющее запускать в виртуальной машине каждое из установленных приложений (Рисунок ниже). В составе Qubes имеются инструменты, с помощью которых вы можете установить соответствия между виртуальными машинами и приложениями, поэтому данные подменю не должны выглядеть слишком громоздкими.

    Меню приложений Qubes

    Меню приложений Qubes

    Механизм обмена информацией на уровне виртуальных машин приложений

    В том случае, если у вас открыто несколько окон приложений, невольно возникает вопрос: «Как осуществляются операции копирования и вставки данных?». Небезопасный вариант реализации подобного механизма мог бы заключаться в разделении буфера обмена между всеми окнами приложений, но в случае его использования нельзя бы было исключить такие ситуации, когда при открытии веб-браузера в доверенной виртуальной машине и копировании пароля для входа на веб-сайт из менеджера паролей, пароль становился доступен всем приложениям, которые исполняются в других виртуальных машинах. Вместо описанной модели в Qubes используется двухуровневая модель буфера обмена. Каждая виртуальная машина приложения имеет свой собственный буфер обмена, с помощью которого вы можете осуществлять операции копирования/вставки в рамках данной виртуальной машины обычным образом. Если же вам нужно скопировать данные в рамках одной виртуальной машины приложения и вставить их в рамках другой, то сразу же после копирования данных в первой виртуальной машине вам придется воспользоваться сочетанием клавиш Ctrl-Shift-c для перемещения скопированных данных в глобальный буфер обмена, после чего перейти к окну приложения, в которое требуется вставить данные и воспользоваться сочетанием клавиш Ctrl-Shift-v для перемещения данных в буфер обмена виртуальной машины этого приложения и их автоматического удаления из глобального буфера обмена. После выполнения описанных действий вы сможете вставить скопированные данные в окно приложения обычным образом. Очевидно, что данный процесс содержит один дополнительный этап, но вы наверняка удивитесь быстроте привыкания к выполнению описанной последовательности действий: Ctrl-c, Ctrl-Shift-c, переход к окну другого приложения, Ctrl-Shift-v, Ctrl-v. Кроме того, именно этот дополнительный этап позволяет предотвратить случайную вставку информации в окно приложения, для которого эта информация не предназначается.

    В составе Qubes также поставляется утилита с интерфейсом командной строки и плагины для контекстных меню файловых менеджеров, позволяющие осуществлять передачу файлов между виртуальными машинами приложений. При попытке копирования файла вы увидите окно подтверждения с черной рамкой, которое никоим образом не зависит от виртуальной машины запущенного приложения и позволяет подтвердить правомерность передачи файла. Даже после подтверждения вы не сможете скопировать файл в любую директорию в рамках целевой виртуальной машины приложения (ведь в противном случае злоумышленник имел бы возможность замены важных файлов на собственные файлы с бэкдорами). Вместо этого все файлы будут размещаться в директории QubesIncoming, расположенной в домашней директории виртуальной машины приложения.

    Шаблонные виртуальные машины, целостность системы и защита от бэкдоров

    Еще одним механизмом Qubes, реализующим дополнительный уровень защиты данных пользователя настольной системы, является механизм поддержания целостности системы. В том случае, если злоумышленникам удастся скомпрометировать обычную настольную систему, они смогут установить в нее версии таких стандартных утилит, как ls или bash с бэкдорами, или же установить дополнительные программы, активировав механизм их запуска в процессе загрузки системы. В случае Qubes виртуальные машины приложений основываются на шаблонных виртуальных машинах (templateVM), которые по умолчанию содержат базовые компоненты таких дистрибутивов, как Fedora, Debian или Whonix (участники сообщества также поддерживают шаблонные виртуальные машины на основе компонентов других популярных дистрибутивов). При создании новой виртуальной машины приложения вам предоставляется возможность выбора шаблона, на которой она будет основываться, а в процессе ее запуска ей предоставляется доступ на чтение к корневой файловой системе выбранной шаблонной виртуальной машины. Несмотря на то, что пользователь все же может устанавливать программное обеспечение в рамках виртуальной машины приложения или изменять содержимое ее корневой файловой системы, при остановке виртуальной машины все изменения удаляются. При этом сохраняются лишь изменения файловых систем, смонтированных в директории /rw, /usr/local и /home. Это означает, что история и закладки вашего веб-браузера будут сохранены, но в том случае, если злоумышленник все же сможет скомпрометировать ваш веб-браузер и попытается установить версию командной оболочки bash или веб-браузера Firefox с бэкдором, после следующего запуска этой виртуальной машины бэкдор исчезнет сам собой.

    Также по умолчанию в рамках виртуальных машин приложений не исполняются какие-либо системные службы, такие, как демон планирования задач cron. Это означает, что злоумышленники также не смогут создать задачу cron для планирования исполнения бэкдора. Несмотря на то, что у злоумышленников все же остается возможность сохранения вредоносного программного обеспечения в домашней директории виртуальной машины приложения, после перезапуска виртуальной машины это вредоносное программное обеспечение больше не будет исполняться и у них не будет возможности его автоматического перезапуска.

    Но как в таком случае устанавливать программное обеспечение? Так как каждая виртуальная машина приложения использует корневую файловую систему шаблонной виртуальной машины, при необходимости установки нового программного обеспечения вам придется запустить менеджер программного обеспечения в рамках соответствующей шаблонной виртуальной машины, такой, как yum, apt-get, менеджер с графическим интерфейсом или любой другой, и установить необходимое программное обеспечение. После этого Qubes установит факт наличия новых элементов меню приложений и сделает их доступными в рамках виртуальных машин приложений, основывающихся на использованной шаблонной виртуальной машине.

    Единственный недостаток данного подхода заключается в том, что установленные приложения не обнаруживаются виртуальными машинами приложений до момента перезапуска последних. Ввиду того, что в случае компрометации шаблонной виртуальной машины будут скомпрометированы все основанные на ней виртуальные машины приложений, в руководстве Qubes рекомендуется не запускать шаблонные виртуальные машины, не использовать их для запуска обычных приложений и запускать их лишь тогда, когда необходимо установить надежное программное обеспечение. Хотя данный подход и подразумевает наличие дополнительных трудозатрат в процессе установки программного обеспечения, его достоинством является упрощение процесса обновления системы, ведь при наличии обновления безопасности вам придется установить его лишь в шаблонной виртуальной машине, так как после перезапуска всех основанных на ней виртуальных машин приложений файлы этого обновления автоматически появится в их файловых системах.

    Обеспечение безопасной работы с сетью с помощью сетевых виртуальных машин

    Еще одним механизмом обеспечения безопасности данных пользователя, применяемым в Qubes, является механизм разделения ресурсов сетевого соединения. После установки Qubes будет создано несколько специальных системных виртуальных машин, называемых сетевыми виртуальными машинами (netVM) с именами sys-net, sys-firewall и sys-whonix. Сетевая виртуальная машина с именем sys-net связана со всеми сетевыми устройствами вашего узла, поэтому они недоступны для любых других виртуальных машин. Так как данная сетевая виртуальная машина является единственной виртуальной машиной с IP-адресом во внешней сети, она считается недоверенной и обозначается с помощью красного цвета. Вы можете использовать утилиту конфигурации Network Manager для настройки сетевого соединения в рамках этой виртуальной машины, после чего в области уведомлений вашего окружения рабочего стола появится классический апплет Network Manager. Сетевая виртуальная машина с именем sys-firewall (технически классифицируемая как сетевая виртуальная машина с прокси — proxyVM) обозначена с помощью зеленого цвета и позволяет соединить сетевую виртуальную машину с именем sys-net непосредственно с сетевыми клиентами. По умолчанию создаваемые вами виртуальные машины приложений используют виртуальную машину с именем sys-firewall для организацию доступа к сети.

    Для чего все эти сложности? Во-первых, сетевая виртуальная машина с именем sys-firewall функционирует как полноценный межсетевой экран, который может использоваться всеми вашими виртуальными машинами приложений. Несмотря на то, что по умолчанию все виртуальные машины приложений могут взаимодействовать с ресурсами сети Интернет без каких-либо ограничений, в составе Qubes поставляется приложение с графическим интерфейсом для упрощения ограничения доступа отдельных виртуальных машин приложений к сетевым ресурсам, благодаря которому заданные приложения будут получать доступ лишь к заданным узлам сети. Например, вы можете ограничить доступ виртуальной машины приложения для работы с онлайн-банкингом к ресурсам сети таким образом, что приложение сможет использовать лишь порт 443 для доступа к веб-сайту банка или виртуальной машины приложения для работы с сообщениями электронной почты таким образом, что оно будет взаимодействовать лишь с вашим удаленным почтовым сервером. Кроме того, вы можете ввести даже такие ограничения для других виртуальных машин, что они смогут взаимодействовать лишь с узлами из вашей внутренней сети. Любому, кому захочется атаковать одну из ваших виртуальных машин приложений, придется преодолеть сетевые виртуальные машины с именами sys-net и sys-firewall. Это также означает, что в том случае, если злоумышленники скомпрометируют виртуальную машину приложения, они не получат прямого доступа к сетевым устройствам и не смогут, к примеру, настроить автоматическое соединение с другой точкой доступа беспроводной сети.

    Сетевая виртуальная машина sys-whonix функционирует аналогично sys-firewall за исключением того, что она автоматически активирует безопасный программный маршрутизатор сети Tor. Любые виртуальные машины приложений, использующие виртуальную машину sys-whonix вместо sys-firewall для доступа к сетевым ресурсам автоматически передают свой трафик посредством сети Tor. В составе Qubes также по умолчанию поставляется виртуальная машина приложения anon-whonix, созданная на основе дистрибутива Whonix для анонимной и безопасной работы в сети, включающая браузер Tor и по умолчанию передающая весь трафик посредством сетевой виртуальной машины sys-whonix.

    Я уверен, что вы уже оценили высокую применимость операционной системы Qubes в ряде областей обусловленную тем, что она является более безопасной, чем любой обычный дистрибутив Linux для настольных компьютеров. Надеюсь, вы разобрались с отличиями подхода к защите пользовательских данных, примененного в Qubes, от подхода, примененного в тех программных продуктах, к работе с которыми вы привыкли. При работе с Qubes вы будете гораздо больше задумываться о том, как осуществляется изоляция файлов и данных, а также о том, что могут сделать злоумышленники, если им удастся скомпрометировать одну из ваших виртуальных машин приложений. Даже те дополнительные действия, которые необходимо выполнять при копировании и вставке данных посредством буфера обмена, а также при копировании файлов, будут привлекать ваше внимание к факту передачи информации между недоверенной и доверенной виртуальными машинами приложений и заставлять задумываться о последствиях. Я считаю, что описанные дополнительные меры безопасности на самом деле позволили мне немного расслабиться, так как, к примеру, теперь я уверен в том, что вложение из сообщения электронной почты, которое я открою в одноразовой виртуальной машине, не причинит вреда моей системе или вредоносный веб-сайт, который я открою в недоверенном веб-браузере не получит доступа к важным данным.

    Далее следует описание методики загрузки и установки Qubes, даны пояснения относительно использования Qubes в качестве операционной системы для настольных компьютеров, не обходя вниманием некоторые базовые функции менеджера виртуальных машин Qubes и других специфичных для Qubes инструментов, а также приведены некоторые примеры организации повседневной работы с настольным компьютером, на котором используются приложения в отдельных виртуальных машинах. Далее будет описать дополнительных возможностей Qubes, включая технологию split-GPG (данная технология позволяет использовать закрытый ключ GPG в рамках виртуальных машин приложений без необходимости осуществления непосредственного доступа к нему), методику более безопасной работы со ссылками с использованием стандартных обработчиков, методику автоматического открытия вложений сообщений электронной почты в отдельных одноразовых виртуальных машинах, а также методику создания виртуальной машины USB (usbVM), которая позволит изолировать все устройства с интерфейсом USB, что необходимо для защиты от заражения через USB-порты.

    Установка ОС Qubes на компьютер

    Ранее были подробно описаны возможности Qubes, а также ее главное отличие от большинства дистрибутивов Linux для настольных компьютеров, а именно, механизм разделения приложений по различным виртуальным машинам с целью максимального сокращения возможных маневров злоумышленников в случае компрометации той или иной виртуальной машины. Данный механизм позволяет вам использовать, к примеру, одну виртуальную машину для обычного веб-серфинга, еще одну — для работы с онлайн-банкингом и еще одну — для хранения ключей GPG и работы с менеджером паролей. Ниже максимально просто описан процесс загрузки файла образа установочного диска и непосредственной установки Qubes, а также проведу небольшой обзор окружения рабочего стола и различных типов виртуальных машин, создаваемых по умолчанию.

    Загрузка и проверка файла образа установочного диска операционной системы Qubes формата ISO

    Вы можете загрузить новейшую версию Qubes с этой страницы , причем на ней помимо ссылки на загрузку образа установочного диска формата ISO, вы также найдете более подробные инструкции по использованию накопителя с интерфейсом USB для создания установочного диска на основе загруженного файла образа формата ISO (на данный момент размер файла образа установочного диска новейшей версии 3.1 превышает размер диска DVD, поэтому вам в любом случае понадобится накопитель с интерфейсом USB для установки данной версии).

    В дополнение к файлу образа установочного диска формата ISO вам также следует загрузить файл с электронной подписью и файл открытого ключа с помощью соответствующих ссылок на упомянутой странице. Файл с электронной подписью содержит подпись GPG, созданную с использованием закрытого ключа GPG команды разработчиков Qubes. Благодаря ей вы можете убедиться не только в том, что файл образа установочного диска не был поврежден в процессе загрузки, но и в том, что никто не подменил оригинальный файл, созданный командой разработчиков Qubes. Разумеется, злоумышленник может подменить файл образа установочного диска, а также файл открытого ключа, поэтому следует загружать файл открытого ключа с отдельных компьютеров, расположенных в отдельных сетях (в идеале не связанных с вашей сетью) и использовать такой инструмент, как sha256sum для сравнения хэшей всех загруженных файлов. В том случае, если все хэши совпадают, вы можете быть вполне уверены в том, что для создания электронной подписи использовался корректный ключ, ведь одновременная модификация потоков данных, передаваемых между несколькими компьютерами и сетями, является достаточно сложной задачей для любого злоумышленника.

    После того, как вы проверите корректность открытого ключа, вы можете добавить его в свою связку ключей GPG с помощью следующей команды:

    $ gpg --import qubes-master-signing-key.asc

    Далее вы можете использовать утилиту gpg для проверки электронной подписи загруженного файла образа установочного диска формата ISO:

    $ gpg -v --verify Qubes-R3.1-x86_64.iso.asc Qubes-R3.1-x86_64.iso gpg: armor header: Version: GnuPG v1 gpg: Signature made Tue 08 Mar 2016 07:40:56 PM PST using RSA key ID 03FA5082 gpg: using classic trust model gpg: Good signature from "Qubes OS Release 3 Signing Key" gpg: WARNING: This key is not certified with a trusted signature! gpg: There is no indication that the signature belongs to the owner. Primary key fingerprint: C522 61BE 0A82 3221 D94C A1D1 CB11 CA1D 03FA 5082 gpg: binary signature, digest algorithm SHA256

    В выводе вас должна в первую очередь интересовать строка «Good signature», которая сообщает о совпадении электронной подписи. Если вы обнаружите предупреждение, такое, как в примере вывода выше, вам нужно будет просто добавить открытый ключ в свою связку ключей и снова выполнить последнюю команду, после чего можно будет сделать однозначный вывод о безопасности загруженного образа.

    Процесс установки операционной системы Qubes

    Процесс установки операционной системы Qubes является либо очень очевидным и простым, либо очень сложным в зависимости от используемого аппаратного обеспечения. Из-за сложностей комбинирования технологии виртуализации и аппаратных возможностей различных устройств, требуемых для корректной работы Qubes, данная операционная система не всегда корректно работает даже на тех компьютерах, на которых раньше отлично работали различные дистрибутивы Linux. На веб-сайте проекта Qubes расположен список совместимого аппаратного обеспечения, на основе которого вы можете сделать предварительный вывод о корректности работы того или иного устройства, причем на этом же веб-сайте начато создание списка сертифицированного аппаратного обеспечения, в который пока добавлен лишь первый официально сертифицированный для запуска Qubes ноутбук Purism Librem 13.

    Как и в случае работы с большинством установщиков дистрибутивов, вам будет предоставлена возможность разделения вашего жесткого диска на разделы, причем вы можете как согласиться с предложенным разделением, так и создать собственное разделение. Обратите внимание на то, что по умолчанию Qubes активирует функцию шифрования данных на разделах жесткого диска, поэтому вам придется создать как минимум один отдельный раздел /boot. После окончания работы установщика вы увидите окно мастера конфигурации системы, с помощью которого вы сможете установить значения нескольких дополнительных параметров конфигурации, таких, как активация виртуальной машины USB с именем sys-usb. Эта виртуальная машина позволит изолировать все ваши устройства с интерфейсом USB и будет защищать все программные компоненты окружения рабочего стола от вредоносных USB-устройств. Данный механизм все еще является экспериментальным и имеет некоторые достоинства и недостатки, о которых я расскажу в следующей статье. По умолчанию соответствующий параметр конфигурации системы деактивирован, поэтому в том случае, если вы не уверены в необходимости активации описанного механизма, просто не активируйте его в процессе установки — при необходимости вы в любом случае сможете создать описанную виртуальную машину позднее.

    Кроме того, установщик также позволяет вам выбрать окружения рабочего стола для установки: KDE, XFCE или оба. Если вы установите оба окружения, вы сможете выбирать необходимое окружение рабочего стола в процессе входа в систему таким же образом, как и в любом другом дистрибутиве Linux. Принимая во внимание дешевизну дискового пространства я рекомендую вам установить оба окружения рабочего стола.

    Рабочий стол Qubes

    Вне зависимости от того, выберите вы KDE или XFCE в качестве окружения рабочего стола, основной принцип запуска приложений в Qubes останется прежним, поэтому вместо описания особенностей определенного окружения рабочего стола, я попытаюсь максимально обобщенно описать возможности системы таким образом, чтобы данное описание подходило как к KDE, так и к XFCE.

    Первой особенностью системы Qubes, на которую вы можете обратить внимание, является организация приложений в соответствующем меню по различным классам виртуальных машин, а не по категориям. Каждой из виртуальных машин поставлен в соответствие стандартный набор приложений, но следует обратить внимание на то, что этот набор не содержит всех установленных приложений — в этом случае меню было бы слишком длинным. Вместо этого вы можете выбрать приложения, которые будут запускаться в каждой из виртуальных машин, использовав пункт меню приложений нужной виртуальной машины «Add more shortcuts» (Рисунок выше). В результате откроется окно, с помощью которого вы сможете перемещать ссылки на приложения в рамках меню приложений. Обратите внимание на то, что Qubes позволяет размещать в меню лишь те приложения, в комплекте поставки которых присутствует файл .desktop (этот же файл используется для добавления элемента в меню запуска приложений в других окружениях рабочего стола).

    Пример меню запуска приложений окружения рабочего стола Qubes

    Qubes группирует виртуальные машины в меню приложений в соответствии с их типами. Важно понимать назначение виртуальных машин каждого из типов, ведь это понимание позволит вам принимать боле безопасные решения относительно обоснованности (или отсутствия оснований) выполнения определенных действий в рамках виртуальной машины того или иного типа. А это список типов виртуальных машин:

    • Одноразовая виртуальная машина: виртуальные машины данного типа, обозначаемые с помощью аббревиатуры dispVM, спроектированы для однократного запуска приложений. При использовании одноразовой виртуальной машины в первую очередь создается новая виртуальная машина на основе шаблонной виртуальной машины, после чего в рамках этой виртуальной машины осуществляется запуск приложения (чаще всего в случае использования меню приложений таким приложением является веб-браузер, но вместо него может осуществляться запуск и любого другого приложения, присутствующего в файловой системе используемой шаблонной виртуальной машины). После завершения работы приложения все данные созданной виртуальной машины удаляются с диска. Вы можете запустить одновременно несколько виртуальных машин, причем каждая виртуальная машина будет работать в рамках своего собственного контейнера. Одноразовые виртуальные машины полезны для работы с опасными вложениями сообщений электронной почты, просмотра опасных веб-страниц или выполнения любых других действий, связанных с высокой вероятностью компрометации системы. В том случае, если злоумышленникам все же удастся скомпрометировать вашу одноразовую виртуальную машину, они выполнят по сути бесполезную работу, ведь все окружение исполнения приложения исчезнет сразу же после того, как вы закроете его окно.
    • Доменная виртуальная машина: виртуальные машины данного типа чаще всего называются виртуальными машинами приложений, обозначаются с помощью аббревиатуры appVM и являются виртуальными машинами, в рамках которых исполняется большинство приложений и с которыми пользователи взаимодействуют большую часть времени. Если вы желаете разделить выполняемые операции, вы можете создать различные виртуальные машины приложений и присвоить им разные уровни доверия с использованием цветов из диапазона от красного (минимальный уровень доверия) до черного (высочайший уровень доверия) с промежуточными оранжевым, желтым, зеленым, синим, фиолетовым и серым цветами. Например, вы можете создать недоверенную виртуальную машину приложения, обозначенную с помощью красного цвета для обычного веб-серфинга, еще одну виртуальную машину приложения, обозначенную с помощью желтого цвета для веб-серфинга по проверенным веб-сайтам, на которых требуется вводить данные для входа, а также еще одну виртуальную машину приложения, обозначенную с помощью зеленого цвета, исключительно для работы с онлайн-банкингом. Если вы выполняете все описанные выше действия с помощью одного и того же ноутбука, виртуальные машины приложений являются отличным механизмом для разделения рабочих и персональных файлов и операций.
    • Сервисная виртуальная машина: сервисные виртуальные машины разделены на подкатегории сетевых виртуальных машин (netVM) и виртуальных машин для прокси (proxyVM) и являются виртуальными машинами, которые обычно работают в фоновом режиме и используются для предоставления виртуальным машинам приложений тех или иных сервисов (чаще всего доступа к сети). Например, сетевая виртуальная машина с именем sys-net связывается со всеми вашими сетевыми картами и является недоверенной виртуальной машиной, которая предоставляет доступ к сети всем остальным виртуальным машинам. Виртуальная машина для прокси с именем sys-firewall соединяется с виртуальной машиной с именем sys-net, причем виртуальные машины приложений используют ее для организации доступа к сети. Так как виртуальная машина sys-firewall выступает в данном случае в роли прокси-сервера, на ее уровне могут вводиться пользовательские правила межсетевого экрана для каждой из соединенных с ней виртуальных машин приложений, поэтому вы можете, к примеру, создать виртуальную машину для работы с онлайн-банкингом, в рамках которой будет доступен лишь порт 433 сервера вашего банка. Виртуальная машина для прокси с именем sys-whonix предоставляет в ваше распоряжение интегрированный маршрутизатор сети Tor, поэтому трафик любых соединенных с ней виртуальных машин приложений автоматически отправляется через сеть Tor. Вы можете выбрать сервисную виртуальную машину, которую будет использовать ваша виртуальная машина приложений для осуществления доступа к сети (или вообще ограничить доступ приложения к сети) с помощью менеджера виртуальных машин Qubes.
    • Шаблонная виртуальная машина: Qubes содержит несколько различных шаблонных виртуальных машин, созданных на основе дистрибутивов Linux, которые вы можете использовать в качестве основы для своих виртуальных машин. Корневые файловые системы всех остальных виртуальных машин основывается на файловой системе одной из шаблонных виртуальных машин, причем после отключения каждой из виртуальных машин приложений все изменения, внесенные в эту файловую систему, автоматически удаляются (сохраняются лишь изменения в файловых системах /rw, /usr/local и /home). Если вы захотите установить обновление приложения вам придется запустить соответствующую шаблонную виртуальную машину, осуществить установку обновления, после чего остановить ее. При последующем запуске виртуальных машин приложений, основанных на данном шаблоне, они уже будут содержать новое приложение. Компрометация одной шаблонной виртуальной машины по своей сути является компрометацией любых виртуальных машин, основанных на ней, поэтому, вообще говоря, вам следует держать шаблонные виртуальные машины в остановленном состоянии и запускать их на некоторое время лишь тогда, когда необходимо установить обновления или новое программное обеспечение. Вы даже можете изменить шаблонную виртуальную машину, которая используется для запуска виртуальной машины приложения после создания последней. Ввиду того, что на постоянной основе будут сохраняться лишь ваши персональные настройки, вы можете считать, что процесс запуска виртуальной машины приложения аналогичен установке нового дистрибутива Linux с сохранением домашней директории /home из предыдущей установки.

    Установка приложений в ОС Qubes

    Процесс установки приложений в Qubes немного отличается от процесса установки приложений в обычном дистрибутиве Linux для настольных систем ввиду использования шаблонных виртуальных машин. Давайте предположим, что вам понадобилось установить GIMP в вашу персональную виртуальную машину приложения. Хотя вы и можете установить этот графический редактор в рамках виртуальной машины приложения с помощью таких утилит, как yum, dnf или apt-get в зависимости от дистрибутива, использованного для создания шаблонной виртуальной машины, лежащей в ее основе, он будет доступен вам лишь до момента остановки выбранной виртуальной машины приложения (кроме того, в меню приложений окружения рабочего стола не появится соответствующего элемента). Для того, чтобы установить приложение на постоянной основе, вам придется идентифицировать шаблонную виртуальную машину, лежащую в основе выбранной виртуальной машины приложения, после чего выбрать в меню окружения рабочего стола пункт «debian-8: Packages» или «fedora-23: Software» для запуска приложения с графическим интерфейсом, позволяющего установить дополнительное программное обеспечение. Альтернативным вариантом является открытие приложения терминала в рамках соответствующей шаблонной виртуальной машины и использование утилит yum, dnf или apt-get для установки программного обеспечения.

    После того, как вы установите приложение, файл .desktop из его комплекта поставки будет помещен в предназначенную для него директорию и Qubes автоматически поместит это приложение в список приложений, доступных для запуска в рамках виртуальных машин приложений. При этом оно автоматически не появится в меню запуска приложений. Для того, чтобы добавить его в меню запуска приложений, вам придется выбрать пункт подменю «Add More Shortcuts» меню какой-либо виртуальной машины приложений и переместить его в список видимых приложений. Вы также можете просто открыть приложение терминала в любой из виртуальных машин приложений и запустить установленное приложение с помощью него.

    Менеджер виртуальных машин Qubes

    Менеджер виртуальных машин Qubes является приложением с графическим интерфейсом, позволяющим управлять виртуальными машинами системы Qubes. В основном окне приложения находится список всех работающих виртуальных машин с информацией об использовании каждой из них таких ресурсов, как время центрального процессора, оперативная память и дисковое пространство, а также о выбранном вами цвете и шаблонной виртуальной машине, на которой она основана. В верхней части окна расположена панель инструментов с кнопками, позволяющими выполнять различные операции с выбранной виртуальной машиной, включая создание новой виртуальной машины или удаление существующей виртуальной машины, включение и отключение виртуальной машины, изменение ее настроек и переключение формата вывода списка с целью показа лишь функционирующих виртуальных машин или всех существующих виртуальных машин.

    Менеджер виртуальных машин Qubes с некоторыми функционирующими виртуальными машинами

    Вы можете изменить множество параметров функционирования виртуальной машины, при этом менеджер виртуальных машин делает процесс создания новой виртуальной машины или изменения ее стандартных параметров достаточно простым и прямолинейным. Основными параметрами виртуальной машины, которые вы наверняка будете изменять, являются цвет виртуальной машины, квоты использования ею оперативной памяти и дискового пространства, шаблонная виртуальная машина, на которой она основывается, а также сетевая виртуальная машина, с которой она соединена. В дополнение вы можете использовать данное приложение для создания собственных правил межсетевого экрана, установки соответствия аппаратных устройств, использующих шину PCI, и виртуальных машин, а также изменения меню запуска приложений.

    Менеджер виртуальных машин является одним из наиболее полезных компонентов рассматриваемой операционной системы, так как он значительно упрощает навигацию по сложной системе утилит с интерфейсом командной строки и файлов конфигурации. В комбинации с некоторыми другими инструментами операционной системы Qubes, такими, как менеджер буфера обмена (реализующий метод копирования и вставки, заключающийся в перемещении данных из локального буфера обмена виртуальной машины приложения в глобальный буфер обмена с помощью сочетания клавиш Ctrl-Shift-c, выборе виртуальной машины приложения для вставки данных и вставке данных в окно приложения с помощью сочетания клавиш Ctrl-Shift-v), а также утилит с интерфейсом командной строки и графическим интерфейсом, которые позволяют копировать файлы между виртуальными машинами приложений, он создает окружение, которое гораздо проще использовать, чем кажется при учете всей сложности реализации описанных концепций.

    Хотя данная статья и будет полезна для начала продуктивной работы с Qubes, самыми интересными аспектами использования данной системы являются организация виртуальных машин приложений и разделение задач между ними. В моей следующей статье я поделюсь собственными подходами к разделению персональных и рабочих задач на ноутбуке, а также расскажу о некоторых применяемых в Qubes дополнительных механизмах обеспечения безопасности пользовательских данных, не позволяющих мне вернуться к использованию обычных дистрибутивов Linux для настольных компьютеров.

    Знаете ли Вы, что такое «усталость света»?
    Усталость света, анг. tired light — это явление потери энергии квантом электромагнитного излучения при прохождении космических расстояний, то же самое, что эффект красного смещения спектра далеких галактик, обнаруженный Эдвином Хабблом в 1926 г.
    На самом деле кванты света, проходя миллиарды световых лет, отдают свою энергию эфиру, «пустому пространству», так как он является реальной физической средой — носителем электромагнитных колебаний с ненулевой вязкостью или трением, и, следовательно, колебания в этой среде должны затухать с расходом энергии на трение. Трение это чрезвычайно мало, а потому эффект «старения света» или «красное смещение Хаббла» обнаруживается лишь на межгалактических расстояниях.
    Таким образом, свет далеких звезд не суммируется со светом ближних. Далекие звезды становятся красными, а совсем далекие уходят в радиодиапазон и перестают быть видимыми вообще. Это реально наблюдаемое явление астрономии глубокого космоса. Подробнее читайте в FAQ по эфирной физике.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *