Whonix. Установка, настройка, использование.
https://www.whonix.org/
https://www.dds6qkxpwdeubwucdiaord2xgbbeyds25rbsgr73tbfpqpt4a6vjwsyd.onion/
Дистрибутив Whonix нацелен на предоставление анонимности, безопасности и защиты частной информации. Дистрибутив основан на Debian GNU/Linux и использует Tor для обеспечения анонимности. Для загрузки подготовлены образы виртуальных машин для Windows, Linux, MacOS. Образ также может быть сконвертирован для использования с гипервизором KVM.
Особенностью Whonix является разделение дистрибутива на два отдельно запускаемых компонента ― Whonix-Gateway с реализацией сетевого шлюза для анонимных коммуникаций и Whonix-Workstation с рабочим столом. Оба компонента поставляются внутри одного загрузочного образа. Выход в сеть из окружения Whonix-Workstation возможен только через шлюз Whonix-Gateway, что изолирует рабочее окружение от прямого взаимодействия с внешним миром и допускает использование только локальных сетевых адресов. Подобный подход позволяет защитить пользователя от утечки реального IP-адреса в случае взлома web-браузера и даже при эксплуатации уязвимости, дающей атакующему root-доступ к системе.
Взлом Whonix-Workstation позволят атакующему получить только локальные сетевые параметры, так как реальный IP и параметры DNS скрыты за границей сетевого шлюза, работающего на базе Whonix-Gateway, который направляет трафик только через Tor. При этом следует учитывать, что компоненты Whonix рассчитаны на запуск в форме гостевых систем, т.е. не исключена возможность эксплуатации критических 0-day уязвимостей в платформах виртуализации, которые могут предоставить доступ к хост-системе.
В Whonix-Workstation по умолчанию предоставляется пользовательское окружение Xfce. В поставку включены такие программы, как VLC, Tor Browser, Thunderbird, Pidgin и т.д. В поставке Whonix-Gateway можно найти набор серверных приложений, в том числе Apache httpd, ngnix и IRC-серверы, которые могут использоваться для организации работы скрытых сервисов Tor.
Для работы рекомендуется система с 16 Гб ОЗУ (минимум - 6 Гб) и 64-разрядным CPU Intel или AMD с поддержкой технологий виртуализации VT-x c EPT/AMD-v c RVI и VT-d/AMD IOMMU, желательно наличие GPU Intel (GPU NVIDIA и AMD недостаточно хорошо протестированы). Перед установкой зайдите в настройки UEFI и проверьте включена ли поддержка виртуализации.
Установка хост системы для гипервизора описана в предыдущем руководстве Kicksecure. Полнодисковое шифрование. Гипервизор для Whonix.
Загружаемся в предварительно установленной хост-системе.
Установка Whonix.
Запускаем встроенный установщик Whonix
[user ~]% whonix-xfce-installer-cli
whonix-xfce-installer-cli: [NOTICE]: Architecture detected: 'x86_64'
whonix-xfce-installer-cli: [NOTICE]: System detected: 'Linux'
whonix-xfce-installer-cli: [NOTICE]: Distribution/Derivative name detected: 'Debian GNU/Linux 12 (bookworm)' / 'Kicksecure'
whonix-xfce-installer-cli: [NOTICE]: Distribution/Derivative version detected: '12' / '17'
whonix-xfce-installer-cli: [NOTICE]: dist-installer-cli version: 'usability-misc 3:22.0-1'
[sudo] пароль для user:
В процессе работы установщик проверяет обновления системы, возможно придётся обновить, пользуясь его подсказками
[user ~]% sudo apt-get full-upgrade
[user ~]% sudo apt-get full-upgrade --target-release=bookworm-fasttrack
Если всё обновлено, от показывается лицензионное соглашение. Нужно нажать на кнопку <Agree> после чего начнётся скачивание и установка VirtualBox и Whonix. После скачивания и установки в домашнем каталоге пользователя создаются каталоги:
dist-installer-cli-download ― содержащий образ дистрибутива Whonix-Xfce-17.2.0.1.ova, файлы его контрольных сумм и подписей и логи установки
VirtualBox VMs ― содержащий импортированныйе образы виртуальных машин Whonix-Gateway-Xfce и Whonix-Workstation-Xfce.
В конце установки будет задан вопрос:
whonix-xfce-installer-cli: [NOTICE]: Question: Do you want to start VirtualBox and the Whonix Virtual Machine(s) now? [y/n] (default: yes):
Your answer:
Хотите ли вы запустить установленные виртуальные машины? По умолчанию выбираются разумные настройки VirtualBox. В последствии их можно скорректировать. Отвечаем y и дожидаемся старта Whonix-Gateway и Whonix-Workstation, появления графического интерфейса Xfce.
Настройка Whonix.
Открываем окно с запущенной Whonix-Gateway.
Нажимаем правой кнопкой мыши на пиктограмма замка справа вверху на панели. Выбираем из появившегося меню пункт Tor control panel
. Справа внизу появившегося окна нажимаем левой кнопкой мыши на пункт Configure
. Выбираем в User configuration
Bridges type
Custom bridges
нажимаем 🗹 Accept
. В появившееся окно ввода вставляем мост obfs4 IP:PORT…
нажимаем кнопку 🗹 Accept
При необходимости, если у вас для доступа в интернет используется прокси настраиваем п. Proxy type
. Открываем вкладку Logs
контролируем процесс установки соединения с мостом.
После установки соединения открываем терминал. Для само проверки системы вводим команду
[gateway_user ~]% whonixcheck
По результатм проверки может быть предложено провести обновление системы. Есди это необходимо вводим
[gateway_user ~]% upgrade-nonroot
Далее необходимо сменить стандартный пароль пользователя точно таким же образом как и в хост системе Kicksecure, сам пароль должен быть другим. Остальные настройки в Whonix-Gateway производить не нужно, т.к. вся дальнейшая работа будет проводится в Whonix-Workstation.
Открываем окно с запущенной Whonix-Workstation.
После установки соединения с tor в Whonix-Gateway соединение с интернетом через tor в Whonix-Workstation устанавливается автоматически. Аналогично запускаем
[workstation_user ~]% whonixcheck
[workstation_user ~]% upgrade-nonroot
Остальные настройки Whonix-Workstation делаем точно таким же образом как и в хост системе Kicksecure.
🗹 Необходимо сменить стандартный пароль пользователя.
🗹 Задать русскую локаль.
🗹 Добавить русскую раскладку в Xfce.
Для добавления индикатора раскладки необходимо установить пакет [workstation_user ~]% sudo apt install xfce4-xkb-plugin
.
После этого запускаем Запуск приложений ⇒ Система ⇒ Tor Browser Downloader для обновления Tor Browser.
Обмен файлами с хост системой.
В Whonix-Workstation создаём каталог
[workstation_user ~]% mkdit ~/share_vm
В хост системе Kicksecure создаём каталог
[user ~]% mkdit ~/share_vm
Открываем настройку виртуальных машин Запуск приложений ⇒ Система ⇒ VirtualBox
В меню слева выбираем виртуальную машину Whonix-Workstation. Открываем пункт меню Общие папки
, нажимаем на пиктограмму +
справа.
🗹 Путь к папке: /home/user/share_vm
🗹 Имя папки: share_vm
🗹 Точка подключения: /home/user/share_vm
🗷 Только для чтения.
🗹 Автоподключение.
🗹 Создать постоянную папку.
🗹 ОК.
Проверяем обмен файлами между гостевой и хост системами.
В пункте меню Система ⇒ Материнская плата ⇒ Основная память
лучше заранее добавить больший объём доступной оперативной памяти. Но этот пункт меню доступен только для не работающих Виртуальных машин. Оперативную память для виртуальной машины Whonix-Gateway добавлять не нужно т.к. эта виртавльная машина используется только как шлюз для передачи данных.
Рекомендации по использованию.
Необходимо регулярно делать проверку системы и вовремя обновлять как Whonix-Gateway, так и Whonix-Workstation. Никогда не разворачиваем браузер на весь экран. Если нужно увеличить размер окна, то делаем это вручную. Каждую сессию в браузере начинаем с проверки IP адреса.
Для тех кто хочет оптимизировать систему…
Как вы уже заметили графический интерфейс Whonix-Gateway-Xfce используется только для конфигурирования Tor, по сути просто занимая лишнюю память и место на диске. Заменяем его на Whonix-Gateway-Cli. Запускаем встроенный установщик:
[user ~]% whonix-xfce-installer-cli
Если его работа прерывается ошибкой на этапе импорта загруженного образа Whonix-CLI-xx.x.x.x.ova, то это ничего страшного. Просто проверяем образ с помощью GnuPG, обычным порядком, и импортируем этот образ вручную. Открываем настройку виртуальных машин Запуск приложений ⇒ Система ⇒ VirtualBox
, Файл ⇒ Импорт конфигураций
. Кнопкой +
выбираем файл /home/user/dist-installer-cli-download/Whonix-CLI-xx.x.x.x.ova, нажимаем Открыть
, нажимаем Далее
, дожидаемся импорта виртуальных машин Whonix-Gateway-Cli и Whonix-Workstation-Cli. После импорта выбираем виртуальную машину Whonix-Gateway-Cli и нажимаем ⇒ Запустить
. Дожидаемся старта виртуальной машины. Ни какого Xfce мы тут не видим, просто вводим в терминал стандартные Login: user Password: changeme. Далее автоматически запускается текстовый конфигуратор подключения к tor.
setup-dist Connection - Wizard
Before we let Tor connect, we need to know about your Internet connection.
Which of the following apples to you?
(Pleace scroll down using the arrow key.)
1 I'm ready to enable tor.
2 I want to disable tor.
3 Tor is censored or dangerous in my area.
4 I use proxy or firewall settings to connect to the internet.
Курсорными стрелками ⇕ выбираем п. 3, нажимаем ОК
. И получаем небольшую инструкцию. В которой сказано что кастомные конфигурации tor необходимо указывать в конфиге /usr/local/etc/torrc.d/50_user.conf Так как мышь терминале Whonix-Gateway-Cli не настроена, а набирать текст конфига долго, то подключаем к Whonix-Gateway-Cli расшаренную папку share_vm изложенным выше способом. Копируем, кроме комментариев, из Whonix-Gateway-Xfce содержимое конфига /usr/local/etc/torrc.d/40_tor_control_panel.conf в хостовую систему. Вставляем в текстовый редактор, сохраняем по пути /home/user/50_user.conf Набираем в терминале
[gateway_user ~]% sudo su
Вводим пароль. Набираем
root@host:/home/user# cat /home/user/share_vm/50_user.conf >> /usr/local/etc/torrc.d/50_user.conf
Перезапускаем tor, включаем для него автозапуск.
root@host:/home/user# systemctl rеstart tor
root@host:/home/user# systemctl enable tor
root@host:/home/user# exit
Соединение с tor с помощью транспорта WebTunnel настраивается аналогичным Tails образом, дополнительно необходимо раскомментировать в /etc/resolv.conf.whonix строчку #nameserver 10.0.2.3
⇒ nameserver 10.0.2.3
т.к. по умолчанию в Whonix-Gateway отключён DNS. Или узнав в хостовой системе ip адрес хоста моста [user ~]% tor-resolve bridge.com
добавить его вручную в /etc/hosts.whonix ip bridge.name
. Если это не привело к успеху, то посмотрите в хостовой системе [user ~]% ip addr
ip на интерфейсе virbr1 и укажите этот ip в /etc/resolv.conf.whonix вместо 10.0.2.3
Если всё настроено верно, то в запущеной виртуальной машине Whonix-Workstation-Xfce должно появиться соединение с интернетом. Настраиваем Whonix-Gateway-Cli указанным выше образом аналогично Whonix-Gateway-Xfce: запускаем проверку upgrade-nonroot, меняем пароль, удаляем в настройках виртуальных машин расшаренную папку share_vm. После этого виртуальную машину Whonix-Workstation-Xfce можно удалять.
Из Whonix-Workstation-Cli можно настроить систему по собственному усмотрению установив туда графический интерфейс и любой DE или WM которых много для Linux. Или использовать её для задач не требующих графического интерфейса.
Гипервизор KVM…
Описанное выше использование в качестве гипервизора Oracle vm VirtualBox имеет преимущество в простоте настройки. Однако если необходимо максимально использовать производительность компьютера, то необходимо обратиться к гипервизору KVM, так как он гораздо лучше подходит для гостевых Linux систем.
Устанавливаем KVM.
В хост-системе Kicksecure запускаем:
[user ~]% sudo apt install --no-install-recommends qemu-kvm qemu-system-x86 libvirt-daemon-system libvirt-clients virt-manager gir1.2-spiceclientgtk-3.0 dnsmasq-base qemu-utils iptables
Добавляем пользователя в необходимые группы:
[user ~]% sudo adduser "$(whoami)" libvirt
[user ~]% sudo adduser "$(whoami)" kvm
Перезагружаемся
[user ~]% sudo reboot
Скачиваем образы Xfce и Cli самого свежего релиза Whonix для KVM с сайта разработчиков проверяем образы с помощью OpenPGP или signify.
Создаём каталоги xfce и cli, перемещаем скачанные образы в эти каталоги соответственно названиям. Переходим в каталог [user ~]% cd ~/cli
Распаковываем архивы
[user ~]% tar -xvf Whonix*.libvirt.xz
Принимаем лицензионное соглашение
[user ~]% touch WHONIX_BINARY_LICENSE_AGREEMENT_accepted
Аналогично для образа xfce.
Переходим в каталог [user ~]% cd ~/cli
, переименовываем файл Whonix-Workstation-CLIxxx.qcow2 в Whonix-Workstation-CLIxxx.qcow2.bak
Переходим в каталог [user ~]% cd ~/xfce
, переименовываем файл Whonix-Gateway-Xfcexxx.qcow2 в Whonix-Gateway-xfcexxx.qcow2.bak
Переходим в каталог [user ~]% cd ~/cli
.
Импортируем виртуальные сети
[user ~]% sudo virsh -c qemu:///system net-define Whonix_external*.xml
[user ~]% sudo virsh -c qemu:///system net-define Whonix_internal*.xml
Запукаем их, добавляем в автозагрузку
[user ~]% sudo virsh -c qemu:///system net-autostart Whonix-External
[user ~]% sudo virsh -c qemu:///system net-start Whonix-External
[user ~]% sudo virsh -c qemu:///system net-autostart Whonix-Internal
[user ~]% sudo virsh -c qemu:///system net-start Whonix-Internal
Импортируем образы Whonix Gateway и Workstation.
[user ~]% sudo virsh -c qemu:///system define Whonix-Gateway*.xml
[user ~]% sudo virsh -c qemu:///system define Whonix-Workstation*.xml
По умалчанию в XML файлах задано расположение образов виртуальных машин в /var/lib/libvirt/images Копируем туда соответствующие образы.
Переходим в каталог [user ~]% cd ~/cli
[user ~]% sudo cp --sparse=always Whonix-Gateway*.qcow2 /var/lib/libvirt/images/Whonix-Gateway.qcow2
Переходим в каталог [user ~]% cd ~/xfce
[user ~]% sudo cp --sparse=always Whonix-Workstation*.qcow2 /var/lib/libvirt/images/Whonix-Workstation.qcow2
Запускаем виртуальные машины.
Открываем Start Menu → Applications → System → Virtual Machine Manager выделяем Whonix-Gateway нажимаем кнопку ▶ Что бы появилось окно VM нажимаем Открыть
.
Аналогично из терминала:
[user ~]% sudo virsh start Whonix-Gateway
[user ~]% sudo virsh console Whonix-Gateway
[user ~]% sudo virsh start Whonix-Workstation
[user ~]% sudo virsh console Whonix-Workstation
Разрешение экрана VM. В терминале VM Вид ⇒ Масштабировать экран ⇒ Всегда.
Расшаривание каталога.
Создаём каталог в хост и гостевой ОС
[user ~]% mkdir /home/user/share_vm
Выставляем права
[user ~]% chmod 777 /home/user/shared_vm
В окне VM кнопка с лампочкой Показать виртуальное оборудование ⇒ Память ⇒ 🗹 Enable shared memory ⇒ Apply
В окне VM кнопка с лампочкой Показать виртуальное оборудование ⇒ Добавить оборудование ⇒ Файловая система
Драйвер: virtio
Путь на хосте: /home/user/share_vm
Путь в гостевой ОС: share_vm
Перезапускаем гостевую ОС.
Монтируем расшаренный каталог в гостевой ОС
[user ~]% sudo mount -t virtiofs share_vm /home/user/share_vm
Для автоматического монтирования после загрузки добавляем в /etc/fstab
share /home/user/share_vm virtiofs defaults 0 0
Включение буфера обмена.
Для включения буфера обмена между хостовой и гостевой ОС нужно заменить
<clipboard copypaste='no'/>
на <clipboard copypaste='yes'/>
В конфигурационном файле виртуальной машины. В окне VM кнопка с лампочкой Показать виртуальное оборудование ⇒ Обзор ⇒ Вкладка XML, почти в самом конце текста.
Настройки самих гостевых ОС полностью аналогичны таковым для Oracle vm VirtualBox.
После настройки не забудте удалить уже не нужные файлы образов дистрибутива в ~/cli и ~/xfce.
Если у вас есть уже настроенные образы для Oracle vm VirtualBox, то для перехода на использование гипервизора KVM можно конвертировать их в формат KVM.
Смотрим расположение образов виртуальных машин VirtualBox.
[user ~]% vboxmanage list hdds
UUID: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
Родительский UUID: базовый
Состояние: создан
Тип: нормальный (базовый)
Расположение: /home/user/VirtualBox VMs/Whonix-Workstation-Xfce/temp-disk002.vmdk
Формат хранения: VMDK
Емкость: 102400 MB
Шифрование: выключено
UUID: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
Родительский UUID: базовый
Состояние: создан
Тип: нормальный (базовый)
Расположение: /home/user/VirtualBox VMs/Whonix-Gateway-CLI/temp-disk001.vdi
Формат хранения: vdi
Емкость: 102400 MB
Шифрование: выключено
Конвертируем образы Whonix-Gateway-Cli и Whonix-Workstation-Xfce в формат KVM.
[user ~]% qemu-img convert -p -f vdi -O qcow2 /home/user/VirtualBox\ VMs/Whonix-Gateway-CLI/temp-disk001.vdi Whonix-Gateway-CLI.qcow2
(100.00/100%)
[user ~]% qemu-img convert -p -f vdmk -O qcow2 /home/user/VirtualBox\ VMs/Whonix-Workstation-Xfce/temp-disk002.vmdk Whonix-Workstation-Xfce.qcow2
qemu-img: Could not open '/home/user/VirtualBox VMs/Whonix-Workstation-Xfce/temp-disk002.vmdk': Unknown driver 'vdmk'
zsh: exit 1 qemu-img convert -f vdmk -O qcow2 Whonix-Workstation-Xfce.qcow2
[user ~]% vboxmanage clonehd /home/user/VirtualBox\ VMs/Whonix-Workstation-Xfce/temp-disk002.vmdk Whonix-Workstation-Xfce.vdi --format vdi
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Создан клонированный носитель в формате 'vdi'. UUID: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
[user ~]% qemu-img convert -p -f vdi -O qcow2 Whonix-Workstation-Xfce.vdi Whonix-Workstation-Xfce.qcow2
(100.00/100%)
[user ~]% rm Whonix-Workstation-Xfce.vdi