Whonix - анонимная ОС на основе Debian. Установка и настройка.

Что такое Whonix?

Whonix представляет из себя комплект из двух преднастроенных виртуальных машин, на основе операционной системы Debian. Виртуальные машины работают в одной связке, соединяясь между собой посредством внутренней сети Virtualbox.

Первая машина называется Whonix-Gateway и представляет из себя шлюз, заворачивающий весь трафик в сеть Tor. Вторая машина называется Whonix-Workstation и представляет из себя рабочую систему оснащенную всем необходимым для комфортной работы в сети интернет. Все программное обеспечение рабочей станции настроено заранее на использование Tor, некоторые из приложений используют выделенные Tor SocksPort-ы.

Подобная схема реализована в целях анонимности и безопасности работающих операционных систем. Трафик проходящий между машинами по внутренней сети никак не связан с хост-системой и посредством шлюза уходит только в Tor. Архитектура Whonix обеспечивает значительный уровень защиты от утечек IP, DNS и от вредоносных программ. Даже если представить ситуацию когда злоумышленнику удалось каким-либо образом получить доступ к рабочей станции, то все что он увидит это адрес внутри закрытой сети Virtualbox.

Ни одно из приложений Whonix не имеет прямого доступа к сети, пользователь общается с сетью только посредством Tor. Весь трафик генерируемый Workstation отправляется в Gateway, а потом в Tor. При обрыве соединения, трафик не покинет шлюз, пока соединение не будет восстановлено. Даже обновление системы происходит через Tor.

whonixПокинув шлюз, трафик проходит по цепочке Tor-серверов и на одной из выходных Tor-нод попадает в обычную сеть. Таким образом на конечном сайте или сервере никогда не будет виден настоящий ip-адрес. Установленный uwtwrapper перенаправляет трафик на разные порты, поэтому трафик всегда идет по разным цепочкам, на разные выходные ноды и разном порядке.

Единственное что можно увидеть во время использования Whonix, это момент соединения вашего адреса с сетью Tor. Дальнейший путь трафика остается надежно скрытым. Использование Tor можно скрыть, пустив весь направленный в Tor трафик поверх VPN, но об этом немного позднее.

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

Установка Whonix

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

Запускаем Virtualbox и нажимаем сочетание клавиш Ctrl+I, для импорта виртуальной машины, в появившемся окне выбираем файл Whonix-Gateway, нажимаем Next. В окне параметров импорта нажимаем кнопку Импорт, больше ничего не трогаем и не меняем.

whonix tor linux debian

Принимаем лицензионное соглашение, ждем завершения импорта виртуальной машины. Таким же образом импортируем Whonix-Workstation.

Настройка виртуальных машин

После импорта конфигураций виртуальных машин, открываем Virtualbox-менеджер, выбираем Whonix-Workstation, нажимаем на шестеренку "Настроить".

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

Помимо общего буфера я рекомендую указать папку для снимков. Здесь будут храниться снимки состояния виртуальной машины. Снимки позволяют сохранять состояние виртуальной машины и откатываться к сохраненному состоянию при необходимости. Создайте каталог для снимков и укажите его в настройках.

whonix virtualbox tor

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

whonix tor virtualbox

В разделе общих папок можно задать общую папку, которая позволит обмениваться файлами с хост-системой. Любой файл в расшаренной папке будет доступен для использования на Whonix-Workstation.

whonix tor linux

Переходим к настройке Whonix-Gateway.

В системном разделе, на вкладке "Материнская плата", снимаем галочки с гибкого и оптического дисков, жесткий диск перемещаем наверх в порядке загрузки. Что касается объема оперативной памяти, то тут есть два варианта. Первый вариант оставить все как есть, 768 мегабайт вполне хватает для работы системы. Второй вариант, это уменьшить объем памяти и сделать его меньше чем 480 мегабайт, в таком случае Whonix-Gateway будет работать в консольном режиме и не загружать графическую оболочку. В связи с тем что от пользователя практически не требуется никакого вмешательства в работу Whonix-Gateway, то консольный режим вполне удобен для использования. Хотя имеет свои минусы, в консольном режиме не работает общий буфер обмена, но это не страшно. В дальнейшем, для управления Whonix-Gateway мы будем использовать ssh-клиент.

virtualbox linux whonix

Я рекомендую не изменять объем оперативной памяти перед первым запуском Whonix-Gateway, так будет удобнее выполнить первоначальную настройку. После чего можно спокойно запускать шлюз в консольном режиме, для экономии ресурсов железа.

Первый запуск Whonix

Переходим к настройке операционной системы. Сначала всегда запускаем Whonix-Gateway.

После запуска принимаем лицензионное соглашение и нажимаем Next.

whonix tor linux debian

Выбираем I am ready to enable Tor (Я готов задействовать Tor) и нажимаем Next.

whonix tor linux debian

В следующем двух окнах нажимаем Next. После сообщения о первом запуске (First Boot) соглашаемся с установкой обновлений.

whonix tor linux debian

Выбираем Whonix Stable Repository нажимаем Next.

whonix tor linux debian

Следующее сообщение предупредит что изменить репозитории можно в любой момент, через терминал - sudo whonix_repository или запуском меню Start Menu - Applications - System - Whonix Repository. В последнем окне Welcome to Whonix-Gateway жмем Finish.

После проверки соединения и поиска доступных обновлений, система предупредит что соединение с Tor установлено и есть доступные обновления. Также в предупреждении будет указана команда для обновления системы.

whonix tor linux debian

Нажимаем OK. Открываем терминал и запускаем обновление системы. Во время выполнения команды система запросит пароль пользователя, пароль написан в терминале - changeme. Позже пароль нужно будет изменить.

После обновления шлюз готов к работе. Не выключая Gateway, запускаем Workstation и выполняем все описанные выше действия, включая обновление системы.

На всякий случай выполняем команду whonixcheck для проверки системы, если все зелененькое и нет Warning, значит обновление прошло удачно и можно двигаться дальше. Команда whonixcheck не должна выполняться от root, поэтому просто вводится в консоль без sudo, от имени обычного пользователя.

whonix tor linux debian

Не забывайте периодически выполнять обновления обоих систем.

Общие папки в Whonix-Workstation

Создайте в хост-системе каталог share, откройте настройки виртуальной машины Whonix-Workstation и добавьте созданный каталог в разделе общих папок. Отметьте галочкой Авто-подключение.

whonix tor virtualbox

Запустите Whonix-Workstation, нажмите на значок KDE в левом нижнем углу экрана и выберите File Manager. Расшаренный каталог будет находиться в каталоге media - /media/sf_share.

whonix tor virtualbox

Поддержка русского языка в Whonix-Workstation

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

Обновим системные локали.

Выбираем локали для использования. Чтобы отметить локаль жмем пробел, для выбора <OK> или <Cancel> жмем Tab. По умолчанию в Whonix включена только en_US.UTF-8 UTF-8.

whonix tor linux debian

Для поддержки русского языка отмечаем ru_RU.UTF-8 UTF-8, для поддержки украинского языка - ru_UA.UTF-8 UTF-8. Потом нажать ОК.

whonix tor linux debian

Выбираем локаль которую будем использовать по умолчанию. Чтобы отметить нужную жмем Tab, потом ОК.

whonix tor linux debian

Перезагружаем систему.

Теперь нужно добавить клавиатурную раскладку. Кликаем по значку KDE в левом нижнем углу экрана и выбираем System Settings. Прокручиваем вниз до раздела Hardware и выбираем Input Devices. В разделе Keyboard выбираем вкладку Layouts. Отмечаем галочкой пункт Configure layouts.

whonix tor linux debian

Нажимаем кнопку Add с зеленым плюсиком. Выбираем нужную раскладку клавиатуры и нажимаем ОК.

whonix tor linux debian

В разделе Shortcuts for Switching Layout нажимаем кнопку рядом с надписью Main shortcuts. В открывшейся менюшке выбираем сочетание клавиш для переключения клавиатурных раскладок и нажимаем Apply.

whonix tor linux debian

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

Изменение пароля пользователя

По умолчанию на обоих системах используется стандартное имя пользователя user и пароль changeme. Пароль довольно таки говорящий, он так и просит изменить его.

Выходим из обычного пользователя и становимся root. Во время выхода будет запрошен пароль пользователя, вводим - changeme.

Меняем пароль для root.
Меняем пароль для пользователя.

Проделываем это на обоих машинах. При желании можно изменить имя пользователя, как это сделать можно узнать здесь.

Консольный режим Whonix-Gateway

Whonix-Gateway может работать в консольном режиме, режим может быть актуальным на хост-системах с небольшим объемом оперативной памяти. В консольном режиме все управление системой происходит посредством терминала, а не с ярлыков на рабочем столе.

Для запуска Whonix-Gateway в консольном режиме в настройках виртуальной машины задаем объем оперативной памяти меньше 480 мегабайт.

whonix tor linux debian

За минимальный объем памяти необходимой для запуска графической оболочки отвечает файл /etc/rads.d/30_default.conf. Точнее находящийся в нем параметр rads_minium_ram, по умолчанию равный 480-и мегабайтам.

whonix tor linux

На рабочем столе Gateway находятся четырнадцать ярлыков, включая ярлык вызова терминала. В консольном режиме для управления используются эквивалентные им команды.

Stop Tor - остановка Tor. Интернет пропадет на всех машинах.

Reload Tor - перезагрузка Tor.

Restart Tor - перезапуск Tor.

Tor User Config - открывает основной конфигурационный файл /etc/tor/torrc в текстовом редакторе.

Tor Examples - открывает файл torrc.examples в текстовом редакторе. Файл содержит примеры заполнения основного файла torrc.

Tor Data - открывает каталог /var/lib/tor.
Arm - Tor Controller - мониторинг tor-соединения.

Global Firewall Settings - открывает файл настроек фаервола /etc/whonix_firewall.d/30_default.conf в текстовом редакторе.

User Firewall Settings - открывает файл с пользовательскими настройками фаервола /etc/whonix_firewall.d/50_user.conf в текстовом редакторе.

Reload Firewall - перезагрузка сетевого экрана для применения изменений в настройках.

Whonix Repository - выбор или изменение репозиториев.

Whonix Setup - запуск Whonix Setup Wizard, тот что запускается при первом запуске.

WhonixCheck - запуск проверки системы. Нельзя запускать от имени root или c использованием sudo.

Обычному пользователю Whonix хватает нескольких ярлыков reload/restart tor, arm и whonixcheck. Остальные, как правило, остаются невостребованными. Не стоит изменять и трогать конфигурационные файлы, если не знаете что делаете.

Подключение к Whonix-Gateway по SSH

Если для управления Whonix-Gateway вполне хватает консольного режима, то зачем вводить команды в окно виртуальной машины? Гораздо удобнее это делать посредством SSH-клиента, тут хоть текст копировать / вставлять можно, а то в консольном режиме общий буфер обмена не работает. Хотя дело даже не в общем буфере обмена, а в простом удобстве использования.

По умолчанию у Whonix-Gateway два сетевых адаптера, один в режиме Nat, второй в режиме внутренней сети. Внутренняя сеть используется для связи между шлюзом и рабочей станцией, она полностью изолированная и со стороны хост-системы к ней не подобраться. Но зато можно подобраться со стороны сети Nat, пробросив порт в виртуальную машину. Подробнее о пробросе портов можно прочитать здесь.

Логинимся как root в Whonix-Gateway или выполняем команду.

Редактируем настройки фаервола, чтобы разрешить подключение по SSH.

В конфигурационном файле находим секцию "SSH into Whonix-Gateway" меняем значение GATEWAY_ALLOW_INCOMING_SSH на единицу, разрешая входящие соединения на 22-ом порту.

Сохраняем изменения Ctrl+O и Enter, выходим из редактора Ctrl+X. Перезагружаем фаервол для принятия изменений.

В Whonix-Gateway отсутствует ssh-сервер, его надо установить.

Выключаем виртуальную машину, запускаем Virtualbox, открываем настройки Whonix-Gateway. В разделе "Сеть" выбираем первый сетевой адаптер, раскрываем "Дополнительно", нажимаем "Проброс портов".

whonix tor linux debian virtualbox

В окне проброса портов добавляем правило как на изображении.

whonix tor linux virtualbox

Сохраняем новые настройки. Запускаем Whonix-Gateway. Теперь к шлюзу можно подключаться через любой из ssh-клиентов. Для подключения нужно указать: адрес - 127.0.0.1, порт - 50022, пользователь - user.

Вход по ssh от имени обычного пользователя user, по умолчанию вход root-пользователя запрещен. Чтобы разрешить подключение root по ssh нужно отредактировать настройки ssh-сервера. Откройте файл sshd_config в Whonix-Gateway.

Найдите параметр PermitRootLogin и измените его значение на yes.
Перезапустите демона ssh.
Теперь к Whonix-Gateway можно подключаться от имени root.

Скрытие использования Tor

Использование сети Tor можно скрыть. Существует три способа скрытия и во всех способах используется VPN. Использование Tor можно скрыть в начале соединения, таким образом достигается невидимость со стороны вашего провайдера. А можно скрыть в конце, таким образом использование Tor будет скрыто на конечном сайте. А можно и там и там. Работает это следующим образом.

Whonix > VPN > Tor > Интернет

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

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

Whonix > Tor > VPN > Интернет

В данной схеме весь трафик генерируемый Whonix пойдет напрямую в Tor c вашего адреса. На выходе из сети Tor он попадет в VPN тоннель и уже с VPN-сервера в открытую сеть. В результате достигается скрытие Tor-адреса на конечном сайте. Некоторые сайты и онлайн-сервисы не любят Tor и не пускают его пользователей, но таким способом этот запрет можно обойти.

Это возможно сделать запустив VPN соединение на Whonix-Workstation. Поскольку рабочая станция не имеет своего выхода в интернет, а выходит наружу только с адресов Tor, то и запущенное на ней VPN соединение будет соединяться со своим сервером с Tor-адреса. После чего пакеты попадут в открытую сеть с адреса VPN-сервера. Кроме того шифрованное соединение защищает от прослушивания и перехвата пакетов на выходной Tor-ноде, некоторые владельцы выходных нод любят этим заниматься.

Whonix > VPN > Tor > VPN > Интернет

Способ скомбинированный из двух предыдущих, самый затратный, но и самый профитный. VPN должен быть активен одновременно на двух системах.