Як перенаправити весь трафік через мережу Tor

6 травня 2023 2 хвилин Автор: D2-R2

Можливості та обмеження мережі Tor

Tor — це скорочення від англійської is “The Onion Router”, (ретранслятор) що відноситься до декількох шарів шифрування, які використовуються для захисту вашої конфіденційності. Основна функція Tor полягає в тому, що він приховує ваші сліди в інтернеті, дозволяючи переглядати веб-сторінки та завантажувати анонімно. Але давайте визначимо, що Tor не є службою VPN або браузером зі вбудованою VPN. Хоча як Tor, так і VPN дозволяють здійснювати приватний веб-перегляд, це дуже різні технології. Мережа Tor приховує вашу особистість, переміщаючи вашу інтернет-активність через різні Tor-сервери. Це дозволяє мати повну анонімність та безпеку від будь-кого, хто намагається відслідковувати вашу активність, як от уряди, хакери та рекламодавці. Тор не тільки приховує інтернет-активність, але й допомагає обійти цензуру.

Мережа Tor є стежкою на «темну сторону інтернету» – частини цифрового світу, яка гарантує анонімність перебування, непідвладна цензурі і живе за своїми суворими законами. Однак за таку високу безпеку доводиться розплачуватись: підключення до Tor займає декілька секунд, а швидкість пересилання даних є відносно невисокою. На щастя, усі серйозні технології, що покладені в основу Tor, не роблять його складним і недоступним для пересічного користувача. Робота з браузером Tor не надто відрізняється від взаємодії зі звичайним браузером. Tor – портативне програмне забезпечення, яке не інтегрується в Windows, тобто ви можете запускати браузер з будь-якого місця на вашому комп’ютері, навіть через USB-накопичувач. Тому кожен пересічний користувач може розпочати роботу з браузером Tor. Тому ця стаття розповість про можливості та обмеження мережі Tor, а також про кілька програм, які підвищать вашу анонімність за рахунок приховування реального IP.

Як використовувати Tor як прозорий проксі

Мережа Tor, в першу чергу, призначена для забезпечення анонімності користувачів при виході в Інтернет за рахунок приховування їхньої реальної IP-адреси. Дані, що передаються по мережі, шифруються, але на вихідному вузлі, який робить безпосередній запит до сайту і отримує від нього відповідь, трафік знаходиться у своєму вихідному стані (тобто той трафік, який шифрується сторонніми засобами, наприклад, HTTPS — він зашифрований, а трафік, переданий у вигляді простого тексту, доступний для вихідної ноди в незашифрованому вигляді).

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

  • обхід блокувань сайтів;
  • приховування IP від ​​сайту, до якого ви підключаєтеся;
  • для сканування відкритих портів методом створення повного підключення (повільніший і помітніший порівняно з методом напіввідкритих з’єднань);
  • DNS запитів через Tor (DNS потрібен для отримання IP адрес сайтів – ваш браузер і система постійно надсилають ці запити). При цьому не використовуються пакети UDP, а дані передаються в зашифрованому вигляді.

З цієї причини, коли ми говоримо “перенаправлення всього трафіку через Tor” насправді мається на увазі “перенаправлення всього трафіку, що підтримується цією мережею, через Tor”. Значна частина трафіку просто не може бути відправлена ​​через мережу Tor, наприклад, пінг, деякі методи трасування, сканування напіввідкритими з’єднаннями, DNS запити по протоколу UDP і т. д. Виходячи з цього виникає інше питання — що робити з трафіком, який неможливо передати через мережа Tor: відправляти до цільового хоста обминаючи мережу Tor чи блокувати?

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

При налаштуванні системи для використання Tor можна вибрати різні варіанти реалізації: проксі або iptables. При налаштуванні проксі потрібно пам’ятати, що Tor працює як SOCKS проксі — не всі програми підтримують цей протокол. Але найнеприємніше може бути в тому, що якщо встановлені загальносистемні налаштування проксі, деякі програми можуть ігнорувати ці налаштування і підключатися до віддалених хостів безпосередньо, минаючи проксі і Tor. У цьому сенсі програма iptables є більш надійним та універсальним варіантом, яка при правильному налаштуванні гарантуватиме, що той чи інший тип трафіку не зможе вийти з системи окрім через мережу Tor, або буде заблокований. Отже, як ми вже дізналися, потрібно вирішити низку завдань для коректної роботи з Tor:

  • правильно перенаправити трафік
  • заблокувати пакети, які неможливо надіслати через Tor
  • налаштувати виконання DNS запитів через Tor
  • подбати про IPv6 трафік або заблокувати його
  • швидко відновлювати систему до вихідного стану, оскільки мережа Tor повільна і не завжди потрібна

З цієї причини є багато різних програм від різних авторів, що реалізують тією чи іншою мірою описаний функціонал.

orjail

Хоча всі програми, що розглядаються далі, трохи різні, почнемо з найнезвичайнішої з них. Вона називається orjail. Програма на момент запуску створює власне мережне оточення для програми, що запускається, і в цьому оточенні програма може виходити в Інтернет тільки через мережу Tor.

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



Установка в BlackArch



Щоб програма виходила в мережу через Tor, запустіть команду виду:

sudo orjail ПРОГРАМА АРГУМЕНТИ

Наприклад, наступна команда показує зовнішній IP вашого комп’ютера:

curl suip.biz/ip/

А тепер запустимо цю ж команду за допомогою orjail:

sudo orjail curl suip.biz/ip/

 



Зверніть увагу — служба Tor необов’язково має бути запущена. Програма orjail сама створює віртуальні мережеві інтерфейси, сама запускає новий екземпляр служби Tor і коли основна програма завершується, зупиняє Tor та видаляє тимчасові мережеві інтерфейси. Щоб ви наочно це побачили, перегляньте інформацію про ваші мережеві інтерфейси:

ip a

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

sudo orjail ip a

Вони зовсім в іншому оточенні!



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

sudo orjail firefox -P /tmp/tmpprofile

Але з веб-браузерами будьте обережні: або це швидше супер швидке рішення, коли потрібно обійти блокування або змінити свій IP. У більш серйозних ситуаціях використовуйте Tor Browser – цей варіант безпечніший.

Якщо запустити orjail з опцією -v, то можна побачити всі процеси, що відбуваються:

sudo orjail -v curl suip.biz/ip/

Зверніть увагу, що orjail не вміє працювати з протоколом IPv6! Справа в тому, що створюваним тимчасовим мережевим інтерфейсам призначаються лише IP-адреси. В принц

Як ми вже знаємо, через Tor неможливо передати пакети UDP протоколу, проте orjail може виконувати DNS запити:

sudo orjail dig suip.biz

Як сервер, від якого отримано відповідь DNS, буде вказано щось на кшталт:

10.200.194.2 # 53

Тобто DNS запити обробляються у мережі Tor.

Помилки в orjail

Помилка “User root: invalid name or no home directory.”

Ви можете зіткнутися з помилкою:

User root: invalid name або no home directory.

де замість root буде ім’я вашого користувача.

Так помилка виглядає при виведенні налагоджувальної інформації:



Для виправлення відкрийте файл orjail (якщо ви вже виконали інсталяцію, то цей файл розміщений на шляху /usr/sbin/orjail), знайдіть рядок

USERHOME = $ (getent passwd les | cut -d: -f 6)

І замініть на:

USERHOME=$(getent passwd $USER | cut -d: -f 6)

Помилка “./usr/sbin/orjail: рядок 563: /tmp/torpVKzn4: Відмовлено у доступі”

Це приклад помилки. Замість /tmp/torpVKzn4 може бути будь-яке довільне ім’я.



Для виправлення знову відкрийте файл orjail (якщо ви вже виконали інсталяцію, то цей файл розташований на шляху /usr/sbin/orjail), знайдіть рядок

chown “$USERNAME” “$TORCONFIGFILE”

та замініть на

#chown “$USERNAME” “$TORCONFIGFILE”

torctl

Далі такі програми дуже схожі, вони всі використовують Tor + iptables, але все трохи по-різному. Почнемо з багатофункціональної програми torctl. Ця програма написана для BlackArch, але легко портується на інші дистрибутиви.

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



Установка у BlackArch

sudo pacman -S torctl

torctl ip

Щоб запустити Tor як прозорий проксі:

sudo torctl start

 

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

torctl status

Якщо ви хочете змінити IP в мережі Tor:

sudo torctl chngid

Щоб повернути вихідні MAC адреси:

sudo torctl rvmac

Щоб змінити MAC адреси на всіх мережних інтерфейсах, виконайте команду:

sudo torctl chngmac

Для роботи з Інтернетом безпосередньо без Tor запустіть:

sudo torctl stop

Для вимкнення цієї функції:

sudo systemctl disable torctl-autowipe.service

Ця команда додасть службу torctl в автозавантаження:

sudo systemctl enable torctl-autostart.service

Ви можете увімкнути автоматичне очищення пам’яті щоразу, коли комп’ютер вимкнено:

sudo systemctl enable torctl-autowipe.service

Щоб видалити службу з автозавантаження, виконайте:

sudo systemctl disable torctl-autostart.service

AnonSurf

Якщо ви знайомі з Parrot Linux, то програма AnonSurf теж має бути вам знайома – вона включає режим анонімності у системі. AnonSurf за бажання закриває програми, які можуть скомпрометувати анонімність, перенаправляє трафік та DNS запити через Tor, блокує IPv6. AnonSurf надто інтегрована в Parrot Linux і на інших системах я б рекомендував вибрати якийсь інший варіант, благо, вибір є. Ще мені не подобається, що програма намагається запустити/зупинити якісь сервіси без перевірки їх наявності та виводить помилки, якщо вони відсутні — через надлишок непотрібної інформації можна пропустити щось дійсно важливе. Тим не менш, далі показано, як встановити AnonSurf в Kali Linux. Основна частина функціональності збережена, але команда «dns — Заміна вашого DNS на сервер OpenNIC DNS» працювати не буде!

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



Показ своєї зовнішньої IP адреси:

sudo anonsurf myip

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

sudo anonsurf start

Припинення редиректу трафіку через Tor:

sudo anonsurf stop

Інші програми

Nipe це скрипт, який робить мережу Tor вашим шлюзом за замовчуванням. Цей скрипт на Perl дозволяє вам безпосередньо спрямовувати весь ваш трафік з вашого комп’ютера в мережу Tor, через яку ви можете анонімно виходити в Інтернет, не турбуючись про те, що за вашим IP стежитимуть або зможуть вирахувати по IP. В даний час Nipe підтримує лише IPv4, але ведуться роботи для додавання підтримки IPv6.Tor Router дозволяє використовувати мережу Tor як прозорий проксі та відправляти весь ваш трафік, у тому числі DNS запити через Tor. Мережа Tor стане стандартним шлюзом для всіх Інтернет-з’єднань, що збільшить приватність/анонімність за рахунок мінімальних зусиль. Скрипт буде працювати на будь-якій системі, яка використовує systemd (якщо ви хочете використовувати цей інструмент як службу) та tor.

Tor Router дозволяє використовувати мережу Tor як прозорий проксі та відправляти весь ваш трафік, у тому числі DNS запити через Tor. Мережа Tor стане стандартним шлюзом для всіх Інтернет-з’єднань, що збільшить приватність/анонімність за рахунок мінімальних зусиль. Скрипт буде працювати на будь-якій системі, яка використовує systemd (якщо ви хочете використовувати цей інструмент як службу) та tor. Tor Router не змінює системні файли, як це роблять інші інструменти для маршрутизації вашого трафіку, завдяки мінімальному впливу на систему, у разі помилки в службі TOR Router або після видалення цього інструменту, решта вашої системи не буде порушена. В даний момент Tor-router підтримує лише IPv4 трафік, але автор планує додати підтримку IPv6.

Скрипт Tor Iptables – це анонімайзер, який налаштовує iptables та tor для перенаправлення всіх служб та трафіку, включаючи DNS, через мережу Tor. Більш детально про цей скрипт я вже розповідав у статті “Як швидко поміняти IP в Linux”. Останні три скрипти я б не рекомендував використовувати доки в них не додадуть IPv6, інакше можна випадково сильно облажатися.

Tor Browser є повністю налаштованим і портативним браузером, для перегляду веб-сайтів через мережу Tor. Плюси цього варіанта – додаткові заходи для анонімності. Мінуси випливають із плюсів: чим більше заходів для анонімності, тим незручніше користуватися.

Інші статті по темі
Знайшли помилку?
Якщо ви знайшли помилку, зробіть скріншот і надішліть його боту.