A
Aegis
Гость
Тема анонимности в сети с завидным постоянством всплывает в различных частях интернета. Я неоднократно убеждалась в том, что эта тема абсолютно неблагодарна. Не потому что анонимности в интернете нет, а потому, что существует множество её решений. Выбор того или иного решения - вопрос абсолютно индивидуальный и субъективный.
В прошлой статье усилиями форумчан были рассмотрены ошибки и их решения при пропускании интернет трафика пользователя через виртуальный шлюз Whonix Gateway, установленный на виртуальную машину VMWare в операционной системе Windows.
Нужно отметить, что разработчики упомянутой программы виртуализации предусмотрели вполне удобную её установку и в Linux. И всё было-бы замечательно, если бы Linux не оставался самим собою. Казалось-бы установленная без ошибок "варя" страшно тормозит в линях, её использование представляет мучительное занятие. VMware - не для Linux! VMware - программа виртуализации для Windows, она прекрасно себя там чувствует.
Второй и наиболее распространённой программой виртуализации в Linux является VirtualBox. На мой взгляд, её популярность в данной системе объясняется лишь нежеланием пользователей что-то менять в нынешней системе ценностей Линукс. Мне VirtualBox не нравился никогда и недавнее знакомство не сделало прорыва в моём сознании. Основными недостатками программы является скудность функционала и интуитивное отторжение. Кроссплатформенность "виртуальной коробки" вызывает у меня противоречивые чувства. VirualBox, словно проститутка пытается подлечь под обе платформы и этот факт является скорее недостатком, чем достоинством. Никто не может служить двум господам. Впрочем, последнее утверждение весьма субъективно.
Огромным и объективным фактором, отрицательно влияющим на моё негативное отношение к использованию VMWare и VirtualBox в среде Linux является неспособность их работы в консоли. Но ведь Линукс - это и есть в основном консоль и обе программы абсолютно чужеродны этой среде.
С этими мыслями поиски родной системы виртуалицации для Linux привели меня к знакомству с KVM (Kernel-based Virtual Machine). Предварительное знакомство с KVM было многообещающим: возможность запуска любой ОС, возможность проброса физических устройств с хостовой системы в виртуальную, возможность использования на десктопных машинах, простота в установке, возможность управления из командной строки. Дополнительным несомненным плюсом являются возможность создания другой виртуальной машины в виртуалке kvm (виртуалка в виртуалке - при определённых танцах с бубном).
ВАЖНО: рисунок демонстрирует возможности KVM и НИКАК не связам с настройкой виртуального шлюза !!!
В данный момент мой компьютер управляется операционной системой Debian 9.6 x86_64. На её примере и рассмотрим установку Quemu-KVM.
Перед установкой необходимо убедиться в том, что компьютер поддерживает режим аппаратной виртуализации.
Код:
#egrep '(vmx|svm)' --color=always /proc/cpuinfo
Если вывод не пустой и искомые флаги подсвечены цветом, значит — процессор поддерживает аппаратную виртуализацию.

Думаю, что на момент написания статьи уже трудно найти компьютер без поддержки данной технологии. Поэтому, пробежавшись беглым взглядом по непонятным буквам, продолжим установку программы.
Для начала включим маршрутизацию в ядре:
Код:
sudo nano /etc/sysctl.conf
Ищем строку net.ipv4_forward=0 и меняем её значение на 1.

Сохраняем и:
Код:
sudo sysctl -p
Если читатель думает, что установка Quemu-KVM сопряжена с трудностями, то поспешу обрадовать: установка программы в Debian 9.6 производится командой
,
где qemu-kvm - программа аппаратной виртуализации,
libvirt-bin - библиотека для взаимодействиями возможностей виртуализации.
virt-manager - программа, позволяющая работать с виртуальными машинами в графической оболочке.
Примечание. Библиотека libvirt-bin в отличие от других пакетов в Debian 9 Strech разделена на два других пакета:

Окно программы Virt-Manager.
На этом программу можно считать установленной.
Далее в статье описываются некоторые ньюансы, необходимые для успешной работы программы.
Создайте ссылку
Код:
sudo ln -s /etc/apparmor.d/libvirt/TEMPLATE.qemu /etc/apparmor.d/libvirt/TEMPLATE.kvm
А также необходимо добавить пользователя в группы libvirt и kvm.
Для этого от имени суперпользователя выполняем команды:
Ещё небольшие нюансы... и на этом установку программы виртуализации можно считать законченной.
Конфигурационные файлы библиотеки libvirt будут располагаться в каталоге etc/libvirt
В каталоге /var/lib/libvirt будут располагаться несколько папок.
/var/lib/libvirt/boot/ — ISO-образы для установки гостевых систем;
/var/lib/libvirt/images/ — образы жестких дисков гостевых систем;
/var/log/libvirt/ — тут следует искать все логи;
/etc/libvirt/ — каталог с файлами конфигурации;
К слову, размер одного такого образа-файла может достигать внушительных размеров. Например, скачанные и разархивированные с официального сайта разработчиков образы виртуальных шлюза и рабочей станции Whonix достигают 100 Гигабайт.

Образы дисковых пространств *.qcow2 виртуальных систем Whonix достигают 100 Gb.
Поэтому, я расположила их на отдельном физическом диске, отличном от системного.
Каталог "Virtual" - это физический диск, смонтированный в каталог "media".
Из-за нехватки свободного дискового пространства у ряда пользователей может возникнуть необходимость в переносе "дефолтового" места (хранилища) расположения будущих образов.
На мой взгляд, наиболее простой способ изменения пути к хранилищу "default" - использование консольной утилиты управления виртуальными машинами "virsh".
Создадим дамп конфигурации командой.

Затем откроем полученный файл в любом текстовом редакторе для редактирования (я использую редактор Nano)
Код:
nano pool.xml

и изменим путь в строке на тот, который нужен.
Удалим текущий пул и создадим новый из отредактированного дампа - файла "pool.xml"
На этом установку KVM и подготовку установке виртуальных машин можно считать законченной.
Апофеоз статьи:
sudo reboot
Можно произвести первый пробный запуск программы командой virt-manager

В прошлой статье усилиями форумчан были рассмотрены ошибки и их решения при пропускании интернет трафика пользователя через виртуальный шлюз Whonix Gateway, установленный на виртуальную машину VMWare в операционной системе Windows.
Нужно отметить, что разработчики упомянутой программы виртуализации предусмотрели вполне удобную её установку и в Linux. И всё было-бы замечательно, если бы Linux не оставался самим собою. Казалось-бы установленная без ошибок "варя" страшно тормозит в линях, её использование представляет мучительное занятие. VMware - не для Linux! VMware - программа виртуализации для Windows, она прекрасно себя там чувствует.
Второй и наиболее распространённой программой виртуализации в Linux является VirtualBox. На мой взгляд, её популярность в данной системе объясняется лишь нежеланием пользователей что-то менять в нынешней системе ценностей Линукс. Мне VirtualBox не нравился никогда и недавнее знакомство не сделало прорыва в моём сознании. Основными недостатками программы является скудность функционала и интуитивное отторжение. Кроссплатформенность "виртуальной коробки" вызывает у меня противоречивые чувства. VirualBox, словно проститутка пытается подлечь под обе платформы и этот факт является скорее недостатком, чем достоинством. Никто не может служить двум господам. Впрочем, последнее утверждение весьма субъективно.
Огромным и объективным фактором, отрицательно влияющим на моё негативное отношение к использованию VMWare и VirtualBox в среде Linux является неспособность их работы в консоли. Но ведь Линукс - это и есть в основном консоль и обе программы абсолютно чужеродны этой среде.
С этими мыслями поиски родной системы виртуалицации для Linux привели меня к знакомству с KVM (Kernel-based Virtual Machine). Предварительное знакомство с KVM было многообещающим: возможность запуска любой ОС, возможность проброса физических устройств с хостовой системы в виртуальную, возможность использования на десктопных машинах, простота в установке, возможность управления из командной строки. Дополнительным несомненным плюсом являются возможность создания другой виртуальной машины в виртуалке kvm (виртуалка в виртуалке - при определённых танцах с бубном).
Достоинством программы является возможность проброса физических устройств с хостовой системы в виртуальную.ВАЖНО: рисунок демонстрирует возможности KVM и НИКАК не связам с настройкой виртуального шлюза !!!
В данный момент мой компьютер управляется операционной системой Debian 9.6 x86_64. На её примере и рассмотрим установку Quemu-KVM.
Перед установкой необходимо убедиться в том, что компьютер поддерживает режим аппаратной виртуализации.
Код:
#egrep '(vmx|svm)' --color=always /proc/cpuinfo
Если вывод не пустой и искомые флаги подсвечены цветом, значит — процессор поддерживает аппаратную виртуализацию.

Думаю, что на момент написания статьи уже трудно найти компьютер без поддержки данной технологии. Поэтому, пробежавшись беглым взглядом по непонятным буквам, продолжим установку программы.
Для начала включим маршрутизацию в ядре:
Код:
sudo nano /etc/sysctl.conf
Ищем строку net.ipv4_forward=0 и меняем её значение на 1.

Сохраняем и:
Код:
sudo sysctl -p
Если читатель думает, что установка Quemu-KVM сопряжена с трудностями, то поспешу обрадовать: установка программы в Debian 9.6 производится командой
Код:
Код:
sudo apt-get update
sudo apt-get install qemu-kvm libvirt-bin virt-manager
где qemu-kvm - программа аппаратной виртуализации,
libvirt-bin - библиотека для взаимодействиями возможностей виртуализации.
virt-manager - программа, позволяющая работать с виртуальными машинами в графической оболочке.
Примечание. Библиотека libvirt-bin в отличие от других пакетов в Debian 9 Strech разделена на два других пакета:
Код:
Код:
sudo apt install libvirt-daemon-system
sudo apt install libvirt-clients

Окно программы Virt-Manager.
На этом программу можно считать установленной.
Далее в статье описываются некоторые ньюансы, необходимые для успешной работы программы.
Создайте ссылку
Код:
sudo ln -s /etc/apparmor.d/libvirt/TEMPLATE.qemu /etc/apparmor.d/libvirt/TEMPLATE.kvm
А также необходимо добавить пользователя в группы libvirt и kvm.
Для этого от имени суперпользователя выполняем команды:
Код:
Код:
sudo addgroup "$(whoami)" libvirt
sudo addgroup "$(whoami)" kvm
Конфигурационные файлы библиотеки libvirt будут располагаться в каталоге etc/libvirt
В каталоге /var/lib/libvirt будут располагаться несколько папок.
/var/lib/libvirt/boot/ — ISO-образы для установки гостевых систем;
/var/lib/libvirt/images/ — образы жестких дисков гостевых систем;
/var/log/libvirt/ — тут следует искать все логи;
/etc/libvirt/ — каталог с файлами конфигурации;
К слову, размер одного такого образа-файла может достигать внушительных размеров. Например, скачанные и разархивированные с официального сайта разработчиков образы виртуальных шлюза и рабочей станции Whonix достигают 100 Гигабайт.

Образы дисковых пространств *.qcow2 виртуальных систем Whonix достигают 100 Gb.
Поэтому, я расположила их на отдельном физическом диске, отличном от системного.
Каталог "Virtual" - это физический диск, смонтированный в каталог "media".
Из-за нехватки свободного дискового пространства у ряда пользователей может возникнуть необходимость в переносе "дефолтового" места (хранилища) расположения будущих образов.
На мой взгляд, наиболее простой способ изменения пути к хранилищу "default" - использование консольной утилиты управления виртуальными машинами "virsh".
Создадим дамп конфигурации командой.
Код:
Код:
virsh pool-dumpxml default > pool.xml

Затем откроем полученный файл в любом текстовом редакторе для редактирования (я использую редактор Nano)
Код:
nano pool.xml

и изменим путь в строке на тот, который нужен.
Удалим текущий пул и создадим новый из отредактированного дампа - файла "pool.xml"
Код:
Код:
# virsh pool-destroy default
# virsh pool-create pool.xml
Апофеоз статьи:
sudo reboot
Можно произвести первый пробный запуск программы командой virt-manager





