Как пустить весь трафик через tor windows

Обновлено: 07.07.2024

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

Замечательный инструмент для обеспечения анонимности и сохранности данных в
сети хорош по многим причинам. Сразу остаются не у дел любые сниферы, в том
числе установленные и на интернет-маршрутизаторах, потому как весь трафик
передается через цепочку узлов исключительно в зашифрованном виде. Крайне
затруднительно или, если полностью поверить разработчикам, то даже невозможно
становится отследить источник отправки данных благодаря постоянно меняющимся
цепочкам специальных узлов-посредников, через которые передаются данные. Кто не
пробовал использовать Tor, чтобы банально сменить свой IP? Минус на первый
взгляд один - скорость работы. Каждый из нодов, входящих в цепочку, вносит
серьезную задержку, как по времени отклика, так и банально по ширине канала. В
результате получаем анонимное соединение. Анонимное и модемное :). Но диалапный
коннект - это не самая главная проблема активных пользователей Tor. Гораздо
сильнее их должно волновать, что любые данные можно перехватить и, черт подери,
сделать это просто!

Откуда берутся. ноды

Чтобы пустить трафик приложения через Tor, достаточно указать в настройках
прокси - адрес локального SOCKS-сервера. В случае, если такой возможности не
предусмотрено можно использовать соксофикатор (например, Sockcap), но помнить
при этом, что через сокс можно пустить только TCP-трафик. Впрочем, для
большинства пользователей намного более интересны будут готовые сборки (так
называемые Bundles), включающие сам Tor, а также преконфигурированные браузер
Firefox и IM-клиент Pidgin. Поставил и все работает! Кстати говоря, для большего
удобства для Firefox'а реализован плагин
Torbutton.
Щелкнул - и весь безопасно трафик уже передается через цепочку промежуточных
узлов. Что вообще представляют собой эти узлы и как в принципе устроен Tor?
Попробуем разобраться.

Где зарылась собака?

Итак, маршрут постоянно меняется, данные через промежуточные узлы проходят в
виде белиберды, т.е. в зашифрованном виде - где подвох? Он есть. Ведь, как
серьезно бы ни защищались данные, как изощренно не выбирался и запутывался
маршрут, где-то на выходе данные все равно нужно расшифровывать. Ведь только так
их можно доставить до места назначения. Эта операция осуществляется на последней
ноде в цепочке - так называемой выходной нодой (Exit Node). Если на таком узле
установить снифер, то данным ничего больше не останется, как прямиком попасть в
логи :).




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

Да здравствует Exit node!

Ну что ж, приступим. Для экспериментов нам понадобится любой никсовый
дистрибутив, пускай даже это будет
Backtrack,
запущенный с флешки, или Ubuntu на виртуальной машине - это совершенно не нужно.
Далее потребуется последняя версия Tor (на момент публикации - 0.2.1.19).
Любители GUI также могут скачать и установить Vidalia - мы же будем работать в
консоли. Итак скачиваем пакет, распаковываем и устанавливаем. Я думаю на этой
стадии никаких проблем быть не должно.

Для Tor'а важно, чтобы часы были установлены точно. В противном случае -
синхронизируем с публичными серверами времени. Забегая вперед скажу, что для
запуска Tor лучше создать отдельного пользователя - делается это командой
adduser. Я создал себе пользователя toruser: uid=111(toruser) gid=10(wheel)
groups=0(wheel),10(wheel). Теперь нужно создать файл конфигурации. Tor
использует для хранения своих данных папку .tor в домашней директории
пользователя (/home/toruser). Создаем папку .tor, создаем в ней файл torrc и
открываем его в текстовом редакторе.

Нас интересует несколько параметров :

ControlPort – на этом порту Tor будет принимать подключения для
управления Tor-сервером (т.е. можно подключиться удаленно для конфигурации Tor'а,
опция важна для тех, кто использует графические оболочки типа Vidalia или Tork).
Устанавливаем его в 9051.

DirPort – на этом порту Tor будет принимать данные от сервера
директорий. Устанавливаем в 9030.

ControlPort 9051
DirPort 9030

ExitPolicy – определяет, какой трафик мы будем принимать и форвардить.
Имеет формат "ExitPolicy Accept | reject address:port". По умолчанию политика
следующая:

reject *:25
reject *:119
reject *:135-139
reject *:445
reject *:563
reject *:1214
reject *:4661-4666
reject *:6346-6429
reject *:6699
reject *:6881-6999
accept *:*

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

ExitPolicy accept *:80, accept *:443, accept *:110, accept *:143,
accept *:993, accept *:995, reject *:*

HashedControlPassword – хеш пароля для доступа и конфигурации
Tor-сервера (чтобы никакой злобный хакер не смог переконфигурировать наш
сервер), создается при помощи команды: tor --hash-password.

Nickname – имя нашего сервера.

ORPort – порт, ожидающий подключения от других нодов.

SocksListenAddress - адрес, по которому Tor будет ждать подключений от
приложений, работающих через SOCKS. Формат: SocksListenAddress IP[:PORT]
Установим IP в 127.0.0.1, а порт оставим дефолтным (9050). Это понадобится нам,
если мы захотим использовать Tor в связке с Privoxy или другими прокси.

Сохраняем изменения и закрываем файл. Можно приступать к запуску. Открываем
консоль, логинимся под toruser и запускаем Tor, передав в качестве параметра
путь до конфиг-файла:

$ tor -f /home/toruser/.tor/torrc

Вот и появился наш сервер в списке. Посмотрим на строчку ниже HelloHacker.
Что мы видим: s Exit Fast Running V2Dir Valid. Exit - означает, что мы являемся
Exit Node!

Ловись-ловись, рыбка

Итак, выходная нода настроена, запущена, добавлена в базу - кто-нибудь
обязательно ею воспользуется уже в самое ближайшее время. Что ж, остается только
запустить любимый снифер Wireshark, выбрать Интерфейс, смотрящий во внешнюю сеть
и включить захват пакетов. А дальше нужно чуть подождать. В большинстве случаев
пакеты начинают сыпаться в логи уже очень скоро :))

$ python sslstrip.py -a -l 8080 -w today.log

$ iptables -t nat -I OUTPUT -p tcp -m owner -uid-owner 111 --dport 80 -j
DNAT --to-destination 127.0.0.1:8080

Анонимное сканирование

Перехватывать чужие логины и пароли мы научились. А вот задачка поинтересней.
Сталкивался ли ты c ситуацией, когда ты находишься во внутренней сети, а
посканировать интересующий тебя сервак нельзя, потому как это тут же привлечет
внимание IDS и соответственно админа. Или вот еще вариант: ты сканируешь
удаленный хост, а он распознает сканирование и блокирует твой айпишник.
Неприятные ситуации. Но и из них есть выход! Нам опять поможет Tor, который
можно использовать в качестве посредника для сканирования. Ведь, кто говорил,
что эта система можно использовать только для анонимного серфинга? 🙂

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

Устанавливаем, все, кроме tortunnel. Заходим в конфиг proxychains и, чтобы
пустить трафик через Tor, раскомментируем строчку:

Socks4 127.0.0.1 9050

Укажем Nmap использовать сканирование с полным соединением: " proxychains
nmap -sT -PN 92.241.175.142 "

Прокачиваем скорость

$ bootstrap.sh --libdir=/usr/lib --includedir=/usr/include
$ ./bjam --prefix=/usr
$ ./bjam install

После этого, заголовочные файлы должны оказаться в /usr/include/boost, а
библиотеки в /usr/lib. Теперь надо вручную создать символическую ссылку на
библиотеку libboost_system.so.1.40.0 (может кому и не понадобится, но у меня она
при установке автоматически не создалась):

$ ln -s /usr/lib/libboost_system.so.1.40.0 /usr/lib/libboost_system-mt.so

Теперь, для того чтобы все заработало, нужно через конфиг указать proxychains
использовать socks5. Итак, комментируем строку Socks4 127.0.0.1 9050
в /etc/proxychains.conf и добавляем socks5 127.0.0.1 5060 (5060 –
порт, который будет слушать tortunnel).

После этого можно запустить и Nmap:

@proxychains nmap -sT -p 80,443,21,23 92.241.175.142

Как ты видишь, скорость сканирования увеличилась (если нет – попробуй другой
нод). Теперь можно даже просканировать свою собственную машину. В довершении
научим Privoxy работать через tortunnel. Тем самым мы снизим уровень анонимности
(одна промежуточная нода вместо трех), но получим более шустрый серфинг. Заходим
в файл конфигурации и добавляем строчку:

Tor Scanner

Torscanner сканирует все выходные узлы, что занимает достаточно много
времени. Но я думаю, что ты сумеешь модифицировать программу таким образом,
чтобы она проверяла только определенный диапазон или один конкретный сервер и
уже их использовать в качестве выходных серверов (Tor'у можно явно указать какой
или какие выходные узлы использовать).

Жди подвох 🙂

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

Держать Exit Node - задача для крепких парней

Скрытые сервисы - уникальная фишка Tor

Специализированные ОС

WARNING

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

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

Давно, писал статью - Kali linux весь трафик через tor , как можно пропустить трафик через тор в Kali Linux. Благодаря тому способу можно осуществлять пентесты сайтов без ипользования прокси.

Сегодня мы будем пропускать трафик в Windows через сеть ТОР.


Не используйте ТОР для электронных кошельков, интернет банкинга, социальных сетей, брута на популярных почтовых ресурсах. Эти сайты как минимум могут вас не пустить или заблокировать учётную запись для разбирательств.

Пропускаем весь трафик через TOR в Windows.

Мы рассмотрим 2 способа. Первый довольно не надёжный, но не требует никаких настроек.

Программа Tallow.

Здесь всё просто, качаете и устанавливаете программу.

Никаких меню, настроек здесь нет.

Весь трафик через TOR

Есть только 2 галочки.

Когда программа подключилась к сети тор (на это требуется некоторое время) — можно нажать кнопку с логотипом TOR и произойдёт подключение. После этого, весь ваш трафик пойдёт через данную сеть.

Из минусов данного способа, если произойдёт какой либо разрыв с программой, трафик пойдёт через ваш IP. Для кого-то это может быть критично. Поэтому перейдём ко второму способу.

Дополнительные настройки Tallow.

  • Через командную строку можно настроить вывод отладки запустив файл tallow.exe.
  • Изменив файл hosts.deny, вы сможете изменить домены которые блокируются через Tor.
  • Отредактировав файл traffic.deny, контролировать, какие типы трафика блокируются через Tor.
  • Изменив файл torrc для настройки Tor.
  • Заменив файл tor.exe на обновить версию.

Tor Bundle + proxifier.

Качаем с официального сайта сети TOR программу Expert Bundle. Ссылка потому что его трудно найти на сайте. Он находится в разделе Documents — Download — All downloads если вдруг ссылка станет неактуальна.

Необходимо распаковать программу в любое удобное место и запустить tor.exe .

Так же вам потребуется программа Proxifier, где его скачать — найдёте сами. На сайты типа Rsload, ссылок давать не буду.

Настраиваем Proxifier.


  • нажимаете Add и вводите локальный адрес 127.0.0.1 Port 9050. Тип Socks 5 и нажимаете ок. Готово, теперь если всё нормально весь ваш трафик будет идти через данную сеть.


В случае разрыва, у вас просто разорвётся связь и вы не сможете зайти никуда, пока не восстановите соединение с ТОР, что уменьшит утечку ваших данных.

Заключение.

Помните. Анонимностью это не назовёшь. Как минимум для анонимности вам потребуется хороший VPN. Но как средство чтобы открыть заблокированный сайт, подключиться к телеграм, какое либо сканирование своих и только своих сайтов, вполне подойдёт.

Этичный хакинг и тестирование на проникновение, информационная безопасность

Оглавление

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

Как использовать Tor как прозрачный прокси

Сеть Tor в первую очередь предназначена для доступа к веб-сайтам, по этой причине, а также чтобы избежать сбора отпечатков пользователя (например, о версии операционной системы по особенностям сетевых пакетов), сеть Tor поддерживает очень ограниченный набор передаваемого трафика. Например, через сеть Tor можно сделать запрос к веб-сайту (протокол TCP), но невозможно передать UDP пакеты или сырые пакеты (запрещено всё, кроме полноценного подключения к сайту).

Сеть Tor подходит для:

  • сокрытия IP от сайта, к которому вы подключаетесь
  • обход блокировок сайтов
  • DNS запросов через Tor (DNS нужен для получения IP адресов сайтов — ваш браузер и система постоянно отправляют эти запросы). При этом не используются UDP пакеты, а данные передаются в зашифрованном виде
  • для сканирования открытых портов методом создания полного подключения (более медленный и более заметный по сравнению с методом полуоткрытых соединений)

По этой причине, когда мы говорим «перенаправление всего трафика через Tor» на самом деле имеется ввиду «перенаправление всего трафика, поддерживаемого этой сетью, через Tor».

Значительная часть трафика просто не может быть отправлена через сеть Tor, например, пинг, некоторые методы трассировки, сканирование полуоткрытыми соединениями, DNS запросы по UDP протоколу и т. д. Исходя из этого возникает другой вопрос — что делать с трафиком, который невозможно передать через сеть Tor: отправлять к целевому хосту минуя сеть Tor или блокировать?

Прокси или iptables для перенаправления трафика

При настройке системы для использования Tor, можно выбрать разные варианты реализации: прокси или iptables.

При настройке прокси, нужно помнить, что Tor работает как SOCKS прокси — не все программы поддерживают этот протокол. Но самое неприятное может быть в том, что если установлены общесистемные настройки прокси, то некоторые программы могут игнорировать эти настройки и подключаться к удалённым хостам напрямую, минуя прокси и Tor.

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

Программы для перенаправления всего трафика через Tor

Итак, как мы уже узнали, нужно решить ряд задач для корректной работы с Tor:

По этой причине имеется много разных программ от разных авторов, реализующих в той или иной степени описанный функционал.

orjail

Хотя все рассматриваемые далее программы немного разные, начнём с самой необычной из них. Она называется orjail. Программа на момент запуска создаёт собственное сетевое окружение для запускаемой программы и в этом окружении программа может выходить в Интернет только через сеть Tor.

Установка orjail в Kali Linux

Установка orjail в BlackArch

Если вы хотите, чтобы ПРОГРАММА выходила в сеть через Tor, то запустите команду вида:

Например, следующая команда показывает внешний IP вашего компьютера:

А теперь запустим эту же команду с помощью orjail:


Обратите внимание — служба Tor необязательно должна быть запущена. Программа orjail сама создаёт виртуальные сетевые интерфейсы, сама запускает новый экземпляр службы Tor и когда основная программа завершается, останавливает Tor и удаляет временные сетевые интерфейсы.

Чтобы вы наглядно это увидели, просмотрите информацию о ваших сетевых интерфейсах:

А теперь посмотрите, что видят программы, запущенные с помощью orjail:

Они совершенно в другом окружении!


Таким образом можно запускать и программы с графическим пользовательским интерфейсом:

Но с веб-браузерами будьте осторожны: orjail это скорее супер быстрое решение, когда нужно обойти блокировку или сменить свой IP. В более серьёзных ситуациях используйте Tor Browser — этот вариант безопаснее.

Если запустить orjail с опцией -v, то можно увидеть все происходящие процессы:


Обратите внимание, что orjail не умеет работать с IPv6 протоколом! Дело в том, что создаваемым временным сетевым интерфейсам назначаются только IP адреса. В принципе, думаю добавить поддержку IPv6 несложно, но в настоящий момент IPv6 трафик просто никуда не уходит.

Как мы уже знаем, через Tor невозможно передать пакеты UDP протокола, тем не менее, orjail может выполнять DNS запросы:

В качестве сервера, от которого получен ответ DNS, будет указано что-то вроде:

То есть DNS запросы обрабатываются в сети Tor.

Ошибки в orjail

Ошибка «User root: invalid name or no home directory.»

Вы можете столкнуться с ошибкой:

где вместо «root» будет имя вашего пользователя.

Так ошибка выглядит при выводе отладочной информации:

Для исправления откройте файл orjail (если вы уже выполнили установку, то этот файл размещён по пути /usr/sbin/orjail), найдите там строку

Ошибка «./usr/sbin/orjail: строка 563: /tmp/torpVKzn4: Отказано в доступе»

Вместо /tmp/torpVKzn4 может быть любое произвольное имя.

Для исправления вновь откройте файл orjail (если вы уже выполнили установку, то этот файл размещён по пути /usr/sbin/orjail), найдите там строку

torctl

Далее рассматриваемые программы очень схожи, они все используют Tor + iptables, но все чуть по-разному.

Начнём с самой многофункциональной программы torctl.

Эта программа написана для BlackArch, но довольно легко портируется на другие дистрибутивы.

Установка torctl в Kali Linux

Установка torctl в BlackArch

Чтобы узнать свой текущий IP, выполните:

Чтобы запустить Tor в качестве прозрачного прокси:


Для проверки статуса служб:

Если вы хотите поменять IP в сети Tor:

Для работы с Интернетом напрямую, без Tor, запустите:

Чтобы поменять MAC адреса на всех сетевых интерфейсах выполните команду:

Чтобы вернуть исходные MAC адреса:

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

Для удаления службы из автозагрузки выполните:

Ещё вы можете включить автоматическую очистку памяти каждый раз при выключении компьютера:

Для отключения это функции:

Этот скрипт знает о существовании IPv6 трафика и успешно блокирует его. Запросы DNS перенаправляются через Tor.

AnonSurf

Если вы знакомы с Parrot Linux, то программа AnonSurf тоже должна быть вам знакома — она включает режим анонимности в системе. AnonSurf при желании закрывает программы, которые могут скомпрометировать анонимность, перенаправляет трафик и DNS запросы через Tor, блокирует IPv6.

AnonSurf слишком интегрирована в Parrot Linux и на других системах я бы рекомендовал выбрать какой-нибудь другой вариант, благо, выбор есть. Ещё мне не нравится, что программа пытается запустить/остановить какие-то сервисы без проверки их наличия и выводит ошибки, если они отсутствуют — из-за избытка ненужно информации можно пропустить что-то действительно важное. Тем не менее далее показано, как установить AnonSurf в Kali Linux. Основная часть функциональности сохранена, но команда «dns — Замена вашего DNS на сервера OpenNIC DNS» работать не будет!

Установка AnonSurf в Kali Linux

Показ своего внешнего IP адреса:

Запуск редиректа всего трафика через сеть Tor:

Прекращение редиректа трафика через Tor:

Nipe — это скрипт, который делает сеть Tor вашим шлюзом по умолчанию.

Этот скрипт на Perl позволяет вам напрямую направлять весь ваш трафик с вашего компьютера в сеть Tor, через которую вы можете анонимно выходить в Интернет, не беспокоясь о том, что за вашим IP будут следить или вас смогут вычислить по IP.

В настоящее время Nipe поддерживает только IPv4, но ведутся работы для добавления поддержки IPv6.

TOR Router

Tor Router позволяет использовать сеть Tor как прозрачный прокси и отправлять весь ваш трафик, в том числе DNS запросы, через Tor. Сеть Tor станет шлюзом по умолчанию для всех Интернет-соединений, что увеличит приватность/анонимность за счёт минимальных усилий. Скрипт будет работать на любой системе, использующей systemd (если вы хотите использовать этот инструмент как службу) и tor.

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

В данный момент Tor-router поддерживает только IPv4 трафик, но автор планирует добавить поддержку и IPv6.

TorIptables2

Скрипт Tor Iptables — это анонимайзер, который настраивает iptables и tor для перенаправления всех служб и трафика, включая DNS, через сеть Tor.

Более подробно об этом скрипте я уже рассказывал в статье «Как быстро поменять IP в Linux».

autovpn

Эта программа добавлена в качестве бонуса — autovpn также позволяет быстро сменить IP адрес, но вместо Tor использует случайный публичный OpenVPN из указанной страны. Больше подробностей в статье «Как быстро поменять IP в Linux».

Рассмотрим ещё несколько вариантов использования сети Tor.

Tor Browser

Tor Browser — является полностью настроенным и портативным браузером, для просмотра веб-сайтов через сеть Tor. Плюсы этого варианта — дополнительные меры для анонимности.

Минусы вытекают из плюсов: чем больше мер для анонимности, тем неудобнее пользоваться.

Создание виртуального адаптера для заворота всего трафика в TOR

TOR VLAN

Существует множество гайдов по завороту трафика в TOR, виртуальные машины, захват трафика, VPN и даже гайдов подобных этому. Данный гайд описывает один из способов торификации трафика вашей машины через SOCKS прокси TOR.

Внимание! Вы можете раскрыть себя (деанонимизировать) войдя в свои личные аккаунты соц. сетей, сайты, где были авторизованы или же отправив UDP пакет не через TOR, т.к. он не умеет передавать UDP, а работает именно с TCP.

Все действия в гайде написаны на примере виртуальной машине Windows 7 x64 Ultimate SP2 VMWare.

С установкой ОС всё ясно, тут проблем возникнуть не должно, приступим к настройке Tor Expert Bundle.

Действия будем выполнять в директории %programdata%. Поэтому создадим там папку tor и распакуем туда содержимое архива Expert Bundle.

ProgramData

Теперь нам понадобится файл torrc создадим его в папке Tor со следующим содержимым:

Разберём файл конфигурации torrc:

- Здесь указана директория программы, файлы данные GeoIP и файл логов notice.log, в данном гайде этот раздел не требует изменений.

- Необходимо, если требуется подключение через локальный SOCKS5 proxy, например, через SSH. В данном руководстве не требуется, поэтому закомментирован.

- SocksPort открывает порты 9999 и 9150 как к SOCKS прокси серверу. С помощью SocksPolicy мы разрешаем или запрещаем доступ для определённого диапазона IP. Данный раздел может не пригодиться, если вам не требуется локальный SOCKS прокси сервер, но в таком случае прокси тора будет работать только на порту 9050.

Проверим работу Tor'a, запустив tor.exe.

tor.exe

Для проверки работоспособности нашего прокси сервера можно воспользоваться программой SocksCap64:

SocksCap64 check tor

Теперь, для удобства и автоматизации создадим службу из Tor'a. Для создания службы я использовал cmd файл torservice.cmd, содержимое:

tor service

Теперь мы можем использовать свой Tor как локальный прокси сервер аж по двум портам (9999 и 9150) и использовать эту машину, как локальный SOCKS прокси сервер. Приступим к созданию виртуального адаптера, установим TAP Virtual Ethernet Adapter от OpenVPN.

TAP

Теперь распакуем tun2socks в папку tor и обратим внимание на t2s_start.bat. t2s_start.exe является скомпилированным приложением батника (для удобства), поэтому если необходимо произвести кастомизацию tun2socks редактировать и запускать нужно именно t2s_start.bat.

tun2socks

- В t2s_start.bat мы создаём туннель TAP -> Tor, т.е. от виртуального адаптера в SOCKS5 proxy Tor. В конфигурации torrc мы указали порт 9150 поэтому его и используем. Я использовал IPv4 100.64.0.0/10, т.к. остальные диапазоны у меня уже используются.
А теперь главный ньюанс! Прежде чем запускать t2s_start нам необходимо переименовать наш виртуальный адаптер, иначе после запуска посыпятся ошибки, поэтому идём в Сетевые подключения и переименовываем адаптер в taplan, как указано в батнике.

Теперь можно запускать tun2socks через t2s_start.bat или t2s_start.exe. Если всё прошло успешно, приступаем к следующему шагу.

tun2socks start

Адаптер запущен, но трафик через него не идёт, да и какой то он странный, адрес не получает, сеть неопознанная. Именно на этом этапе я застрял и чуть не бросил идею виртуального адаптера, а всего-то надо было вручную прописать настройки в адаптере, согласно созданному tun2socks:

Настройка вирутального адаптера

route PRINT


Теперь нам необходимо поменять метрики маршрутов, чем меньше метрика, тем выше приоритет маршрута (можно использовать add.bat, с теми же командами):

В файле route.txt находится список с примерами команд, чтобы не искать их в интернете.

Теперь на обоих адаптерах (виртуальный и основной) необходимо указать DNS сервер 127.0.0.1, как на скриншоте виртуального адаптера.

Можно проверять результат вышеописанного. Я использовал сервисы, найденные через duckduckgo:




Дополнительные меры

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

  • Adblock Plus - Блокировщик рекламы (Самостоятельная установка | Оф. сайт)
  • dotOnion - позволяет открывать .onion и .exit домены (Самостоятельная установка | Из магазина chrome)
  • WebRTC Control - отключает WebRTC протокол (Самостоятельная установка | Из магазина chrome)

Основные проблемы

  • После перезагрузки ОС маршрутизация может сброситься как и некоторые настройки самих адаптеров (DNS, шлюз)
  • Возможны потери маршрута основного адаптера при многократном изменении метрики, поэтому необходимо его добавить через route -p ADD .
  • После закрытия и открытия tun2socks иногда требуется снова добавить маршрут или изменить метрику (особенности Win 7)

Для последнего пункта рекомендуется вручную выставлять метрику адаптеров в их настройках. Так же существует альтернативный проект Tallow (TorWall), использующий немного другой способ торификации сети.

Читайте также: