Whonix везде, Whonix всегда, Whonix у всех! Да здравствует светлое будущее!

Team zBrain
zBrain
Published in
9 min readApr 6, 2020

Вот уже несколько лет когда среди сведущих людей начинаются разговоры про безопасность и анонимность в сети Интернет, всё чаще и чаще звучат слова «Whonix» или «Whonix linux». При чем же здесь безопасность и анонимность — ведь давно уже известно, что сам факт наличия у пользователя ОС Linux абсолютно не является гарантией его безопасности и тем более анонимности (а в некоторых случаях даже наоборот — ведь для того чтобы правильно настроить ОС семейства Linux необходимо обладать довольно обширными знаниями). Давайте для начала разберемся — что же это за зверь такой — Whonix.

Восемь лет назад в Сети появился проект под названием TorBOX. Изначально это был даже не проект какого-либо ПО — это была Wiki страничка. И целью её существования было собрать воедино и упростить руководства по использованию сети Tor в качестве прозрачного прокси. Основатель Whonix — Патрик Шлейзер, вдохновился простой идеей: использовать виртуальную машину, чтобы перенаправлять с её помощью весь трафик через сеть Tor, в то же время защищая этот трафик от утечек IP адресов и DNS. Более того — такой концепт позволяет избавится от настройки прокси для каждой отдельно взятой программы. Очень быстро страница проекта TorBOX заполнилась информацией — множество участников старались привнести свой вклад. И это привело к усложнению инструкций и доступной на странице проекта информации. Группа Anonymous даже создала скрипт, чтобы в автоматизированном виде пройти большую часть необходимых шагов. Также, Anonymous создали первый доступный для загрузки образ TorBOX. Так проект начал своё развитие в виде образа ОС Linux.

Спустя некоторое время, к Патрику Шлейзеру обратился Эндрю Леман (экс-директор The Tor Project) с предложением переименовать TorBOX. В то же время на сайте TorBOX появилось заявление о том что данный проект не имеет никакого отношения к The Tor Project, о чем ошибочно сделали вывод многие пользователи. Новым именем проекта стало aos — акроним от «anonymous operating system». Данное решение оказалось не оптимальным — поисковые системы не выдавали релевантных результатов при поиске — оно слишком часто использовалось для множества других продуктов (вспомните хотя бы стиральный порошок с аналогичной аббревиатурой, который на момент переименования уже давно и широко рекламировался). В результате опроса по tor-talking mailing list, было предложено название Whonix, образованное от «Who» — кто (персона) и «nix» — ничто. (Если вдруг кому-то интересна точная дата рождения проекта — это 11 января 2012 года)

Если пройти по ссылке https://www.whonix.org/wiki/Download, то легко заметить что существует множество готовых образов в различных вариациях. Однако, некоторые такие варианты (даже половина из них) помечены как экспериментальные и скачать готовый образ для них невозможно. Всё бы ничего — ведь готовый образ для Virtualbox есть! Однако, Virtualbox — сам по себе полуэкспериментальный продукт компании Oracle. И для данного продукта отсутствует возможность установки на сервер (как, например, VmWare ESXi). Да, решение с установкой на сервер ОС Linux, Virtualbox, настройкой и автозапуском виртуальных машин возможно (и в одной из следующих статей мы обязательно рассмотрим такое решение), но если есть готовый сервер с ESXi, то не ломать же всю инфраструктуру! И как раз для такого случая Вам пригодится написанное ниже!

Описанная ниже инструкция не претендует на свою абсолютную правильность или полноту, но, надеюсь, поможет многим пользователям, столкнувшимся с необходимостью получить Whonix Gateway (ведь именно Gateway отвечает за процесс перенаправления трафика в сеть Tor и его защиту от утечек IP и DNS) на своем сервере с ESXi.

Итак, исходные данные:

1. Домашний сервер с VmWare ESXi 6.5 (бесплатная лицензия ;-)),

2. Виртуальный образ Whonix (ссылку на скачивание не привожу — выше она уже была),

3. Желание создать комбайн VPN-TOR-VPN для анонимизации собственного трафика.

Вся инфраструктура поднималась на виртуальных машинах, в связи с чем и возникла первая проблема — Whonix не поддерживает вышеозначенного разработчика ПО виртуализации.

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

На приведенном скриншоте из перечисленных сетевых интерфейсов для реализации связки VPN-TOR-VPN будут использоваться vSwitch0, SpecSw0, OMGnixSw01 и привязанные к ним портгруппы VM Network, SepcPg0, OMGnixPg01.

Далее, необходимо создать виртуальную машину на базе линукс (конкретно какой линукс использовать советовать не буду, тут дело вкуса, главное — ставьте серверную). В приведенном случае была использована ArchLinux 2019 из-за простоты и скорости установки. При создании этой машины можно ограничиться 512 мегабайтами памяти и 1 ядром процессора — т. к. нагрузки на ней почти не будет (ну, если только Вы не планируете перенаправлять через VPN-TOR-VPN трафик с нескольких клиентских машин, при этом скачивая фильмы на каждой). На этой машине должны быть два сетевых интерфейса: один — подключенный к физическому сетевому адаптеру (на скриншоте vSwitch0 и привязанная к нему портгруппа VM Network) и второй — для подключения Whonix. На данной виртуальной машине поднимается любой сервис VPN (лучше платный — понадежнее), маршрутизация (все маршруты из подсети Whonix должны уходить в tun адаптер VPN), если есть необходимость — DHCP.

Теперь приступим к основному — а именно импорту виртуальной машины с Whonix Gateway в VmWare ESXi 6.5

Как я уже писал выше — официальной поддержки VmWare у проекта Whonix нет и, видимо, не предвидится. Но, есть посты разной степени подробности о том, что удалось заставить Whonix работать на платформе VmWare. Теперь пошагово:

1. Качаем комплект Whonix в формате .ova https://www.whonix.org/wiki/VirtualBox/CLI

2. Устанавливаем Virtualbox (https://wiki.archlinux.org/index.php/VirtualBox) последней версии, а заодно и VMWare Workstation 15 (именно с этой версией всё стабильно получилось https://wiki.archlinux.org/index.php/Vmware). (ссылка для ArchLinux, т. к. в процессе написания статьи все действия производились именно на нём).

3. Далее — необходимо запустить Virtualbox и импортировать виртуальные машины из комплекта Whonix (в комплекте две виртуальные машины — Gateway и Client, нас интересует только первый, т. к. клиентом для него может выступать любая другая ОС, и о вариантах выбора таковой мы тоже обязательно поговорим в следующих статьях):

б) Выбираем место расположения скачанного комплекта Whonix

в) ВНИМАТЕЛЬНО выбираем параметры импорта (читаем ниже)

ВНИМАНИЕ!!! ACHTUNG!!! ATTENTION!!! По умолчанию в Дополнительных опциях (да, те самые что под выпадающим списком «Политика МАС-адреса: Сгенерировать новые МАС-адреса всех сетевых адаптеров») галочка проставлена — если её не снять, Virtualbox импортирует виртуальные диски Whonix в формате .vdi, а в нашем случае это категорически не подходит, поэтому будьте внимательны — снимите эту галочку. Виртуальные HDD должны импортироваться только в формате .vmdk!

На следующем шаге Virtualbox попросит Вас согласиться с условиями — что необходимо сделать для продолжения процесса импорта виртуальных машин.

г) Итог предварительной подготовки:

4. Теперь необходимо экспортировать виртуальную машину Whonix-Gateway-CLI (или обе — на Ваш вкус) в формате .ovf:

а) Выделяем виртуальную машину Whonix-Gateway-CLI и идём в меню Файл и жмем «Экспорт конфигураций»:

б)

в) Жмём «Далее» и в следующем окне ничего не трогая жмём на «папочку» справа от поля «Файл»:

г) В открывшемся окне в поле «Имя файла» указываем любое имя, в выпадающем списке «Формат» выбираем «Открытый формат виртуализации (.ovf)» и жмём «Сохранить»:

д) Вернувшись к этому окну просто жмём «Далее»:

е) Тут жмём «Экспорт»

В итоге проделанных действий в указанном в пп д) каталоге будет создано 3 файла:

(имена файлов будут такими, какие Вы зададите в пп д)).

5. Теперь необходимо импортировать получившуюся виртуальную машину в VMWare Workstation (можно поставить и использовать в режиме пробного периода):

Тут всё просто — File → Open → указываем путь где лежат три файла с экспортированной Whonix и выбираем .ovf. VMWare Workstation немного подумает и перейдёт к окну импорта:

Просто подтвердите серьёзность Ваших намерений

6. ВНИМАНИЕ! По окончании процесса импорта импортированную машину не запускать!!! Теперь необходимо изменить аппаратное поколение машины, но прежде нужно зайти в её настройки и проверить чтобы всё было в порядке:

а) Проверить настройки виртуальных процессоров: внимательно отнеситесь к данному вопросу, потому как если количество ядер процессора будет превышать количество ядер физического процессора на котором ВМ будет работать — она не запустится. Это можно сделать и позже — после импорта ВМ в VMWare ESXi, но лучше сразу.

б) Проверить настройки сетевых интерфейсов: должен присутствовать один NAT и один Bridged (automatic). Если один из них отсутствует, то необходимо проверить ту ли виртуальную машину Вы экспортировали из Virtualbox.

7. На скриншоте ниже в основном окне виртуалной машины нужно выбрать пункт (это кнопка — просто нажмите) «Upgrade this virtual machine».

8. В появившемся окне нужно один раз нажать «Next» и в следующем окне из выпадающего списка выбрать Вашу версию ESXi (доступны правда всего две — 6.5 и 6.7U2). Изначально ВМ Whonix может быть оптимизирована под VMWare Workstation 14, тогда необходимо её конвертировать под ESXi 6.5. Главное — Ваша ВМ должна соответствовать Вашему ESXi. Обязательно в данном процессе оставить копию исходной ВМ:

9. Полученную виртуальную машину нужно экспортировать (также в формате .ovf) для последующего импорта её уже в VMWare ESXi 6.5. В меню «File» выбираем «Export to OVF» и указываем папку где сохранить виртуальную машину. После завершения процесса идём в Веб-интерфейс ESXi и импортируем полученную виртуальную машину:

10. Для импорта ВМ в ESXi. Необходимо на главной странице сервера выбрать «Create/Register VM» и в появившемся окне выбрать «Deploy a virtual machine from an OVF or OVA file». Далее, нужно указать последние экспортированные из VMWare Workstation файлы (их снова три т. к. формат экспортированной ВМ .ovf). Выбрать можно все три (ESXi всё равно файл проверки цифровой подписи ВМ в списке выбранных не покажет), после чего остается только задать имя импортируемой виртуальной машины и импортировать её. Ниже приведены скриншоты пошагово:

На данном этапе необходимо правильно выставить настройки сетевых интерфейсов: Bridged — это интерфейс, который смотрит на виртуальную машину с VPN, созданную в самом начале данной статьи. NAT — это интерфейс Whonix к которому будут подключаться уже клиентские машины.

И вот оно — долгожданное окно с сообщением о готовности импортировать виртуальную машину. Импортируем:

ВАЖНО! Пока идёт импорт — не переключаться на другие задачи и не обновлять страничку веб-интерфейса. А также не давать ОС уснуть, заблокироваться, свернуть окно браузера (моргать, икать, уходить в туалет и за чаем тоже не рекомендуется)!

Выдержали? Вы почти у цели!

Осталось дело за малым — нужно снова зайти в настройки виртуальной машины и поменять пару параметров: выставить верные настройки виртуального процессора — теперь уже для Вашего сервера с ESXi (т. е. если у Вас 1 процессор 4 ядра, то выставлять нужно как на скрине ниже),

также ESXi будет ругаться на то что в настройках виртуальной машины не определена ОС. Это легко исправить:

Ну и финальный кадр — Whonix Gateway запускается:

Остаётся только настроить сеть, настроить клиентов (на которых тоже устанавливается и настраивается клиент VPN) и пользоваться полученным комбайном.

В данной статье рассмотрен процесс импорта Whonix в ESXi 6.5. По этой причине в ней не разобраны подробно все вопросы по настройке ОС, сетевых подключений, маршрутизации и т.д.

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

--

--

Team zBrain
zBrain
Editor for

zBrain— онлайн школа для специалистов по кибербезопасности