Работаем под прикрытием: VPN — TOR — VPN.

Team zBrain
zBrain
Published in
5 min readMay 26, 2020

Whonix, Linux-дистрибутив, предназначенный для обеспечения анонимности в сети интернет, состоит из двух виртуальных машин:

Whonix-Gateway — работает исключительно через Tor;

Whonix-Workstation — клиентская машина, находящаяся в изолированной сети, которая выходит в интернет исключительно через Whonix-Gateway, и, собственно, предназначена для работы пользователя.

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

В проведении сегодняшнего ритуала участвуют:

- дистрибутив Whonix, скачанный с официального сайта. Достаточно будет версии Whonix with CLI (text terminal only), берегите свой трафик и ресурсы хостовой системы.

- две рабочие виртуальные машины (да-да, в изолированной сети Whonix может быть много машин):

1. Kali Linux;

2. Arch Linux.

- хостовая машина с Windows на борту (что было под рукой);

- гипервизор в лице VirtualBox.

Обратите внимание, Whonix “по умолчанию” работает не со всеми гипервизорами, о чём они и предупреждают в документации. Конечно, для нас это не преграда, и как быть, если у вас VMWare, можно подсмотреть в одной из наших предыдущих статей (Zen и Medium)

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

После того, как ВМ стартанула, взглянем на параметры её сети.

sudo ifconfig

и увидим примерно такую картину:

Где 10.0.2.15 — это внутренняя сеть для VirtualBox, через которую наш Whonix, скрывшись за NAT Virtualbox хоста, выходит в мир.

А 10.152.152.10 — это внутренняя сеть самого Whonix, в которой и будут существовать наши виртуальные машинки.

Если зайти в настройки Whonix-Gateway-CLI во вкладку Network, мы увидим, что у этой машины настроены два адаптера — один на NAT, и второй на Internal Network с именем Whonix.

Наш gateway работает.

Теперь нам надо направить через него рабочие виртуальные машины.

В настройках VirtualBox для этих машин заходим во вкладку Network и там так же выставляем Internal Network с именем Whonix (имя внутренней сети выбираем в выпадающем меню, если вдруг по умолчанию встало что-то иное).

Запускаем Kali.

В панели задач видим NetworkManager Applet — графический интерфейс для управления настройками сети. Кликаем по нему правой кнопкой мыши и выбираем Edit Connection. В открывшемся меню можно создать новое соединение (например на случай, если вы планируете использовать разные сети) или отредактировать имеющиеся.

Если мы создаём новое соединение, то выбираем тип Ethernet. Не забудьте проверить среди имеющихся соединений, у кого стоит галочка “Default”.

Заходим во вкладку IPv4 Settings и выставляем Method — Manual. Нажимаем кнопку Add и пишем

Address — 10.152.152.20 (маска подсети позволяет использовать до 16382 IP-адресов, так что есть где разгуляться),

Netmask — 255.255.192.0 (её мы видим при вводе ifconfig на Whonix), не пугайтесь, если после сохранения маска измениться на 18 — так тоже можно,

Gateway — 10.152.152.10 (это IP самого Whonix),

DNS servers так же указываем Whonix — 10.152.152.10.

Если вы не используете IPv6, то в настройках IPv6 Settings можно поставить Method — Disabled.

Сохраняем. Отключаем текущее соединение и подключаем свеженастроенное, если создавали новую, или просто перезапускаем, если редактировали имеющуюся запись.

Теперь, проверив IP на выходе, мы заметим, что оказались в Tor.

Приступаем к работе на Arch.

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

whonix_gw.sh

#! /bin/bash

echo “Drop interface if run”;

ifconfig enp0s3 down;

echo “Set interface”;

ifconfig enp0s3 10.152.152.30 netmask 255.255.192.0 up;

echo “add gateway”;

route add default gateway 10.152.152.10;

Теперь одной командой:

sudo bash /path/to/whonix_gw.sh

мы поднимаем сеть с нужными нам настройками.

Не забудьте предварительно проверить как у вас в системе именуется сетевой адаптер и изменить его имя в скрипте выше (выделено жирным), а поможет вам в этом команда:

ip link

Проверив внешний IP , мы увидим, что Arch тоже выходит в интернет через Tor.

Однако, выходить в сеть, светя Tor’ом провайдеру, не всегда обосновано. И для спокойствия провайдера, а так же для усиления эффекта анонимности, самый простой шаг — установить VPN на хост. Под Windows, традиционно, VPN-сервисы предлагают удобное клиентское ПО с GUI. На Linux-хосте вариации настройки VPN сильно зависят от выбранного сервиса. Обратите внимание, не все VPN, особенно под Linux, предоставляют встроенную функцию Kill switch. И, если нет желания заниматься любовью с маршрутизацией, выбирайте того поставщика услуги, у которого работает данная функция (на некоторых Linux-CLI клиентах названные просто Firewall on/off).

Конечно, VPN можно настроить и непосредственно на роутере, но далеко не у всех домашний роутер предоставляет такую функцию.

Итак, ставим VPN на хосте, врубаем функцию Kill switch, дабы быть уверенными, что в случае обрыва соединения с поставщиком VPN, или израсходованном трафике, или каких-то других непредвиденных ситуаций, мы не засветимся Tor’ом в логах провайдера. Вуа-ля — вот мы с вами уже в связке Tor — VPN.

Следует отметить, что такая связка не всегда удобна.

Во-первых, потому, что Tor, а следом и Whonix, работает через TCP. А значит ряд привычных функций работать не будет. Конечно, что-то можно заменить аналогом. Например, вместо Демона Времени ntp, работающего исключительно по UDP, даты можно синхронизировать с помощью утилиты htpdate. Но как же быть со сканированием по UDP протоколу? Да и с ping, кстати, тоже будут сложности.

Во-вторых, ряд IP Tor’а может оказаться в бан-листе у многих сервисов. Случалось даже, что было невозможно обновить некоторые пакеты, наткнувшись на 403 от репозитория.

Самым простым решением будет установка VPN на рабочую виртуальную машину. Обратите внимание! VPN должен работать по протоколу TCP. Поэтому выбирайте поставщика, который предоставляет такую возможность. И, конечно, обращаем внимание на наличие функции Kill switch. Клиенты VPN и их настройки зависят от выбранного вами сервиса.

Ставим, запускаем. Бинго! Теперь у нас на выходе вполне себе презентабельный IP.

А между делом, мы построили связку VPN — TOR — VPN без мам-пап и кредитов, увеличили свою безопасность и скрыли трафик от любопытных глаз.

--

--

Team zBrain
zBrain
Editor for

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