IsNull
ПОЛЬЗОВАТЕЛЬ
IsNull
ПОЛЬЗОВАТЕЛЬ
- Статус
- Вне сети
- Регистрация
- 14 Авг 2017
- Сообщения
- 198
- Реакции
- 27
- Автор темы
- #1
В этой статье пойдет речь о настройке своего моста Tor с последующей обфускацией трафика с помощью obfs4proxy. Возможно, вы уже знакомы с мостами, которые Tor Project подробно описывает на своем сайте. Тем не менее, некоторые страны, где законодательно осуществляется контроль сети Интернет, применяется глубокий анализ пакетов Deep packet inspection (DPI) для фильтрации потоков трафика, даже если они используют альтернативные IP-адреса.
Поэтому мы настроим наиболее популярный транспорт - обфусцирующие мосты. Они изменяют Tor-трафик, чтобы он был похож на «обычный» трафик.
Приступим к делу.
Поэтому мы настроим наиболее популярный транспорт - обфусцирующие мосты. Они изменяют Tor-трафик, чтобы он был похож на «обычный» трафик.
Приступим к делу.
Установка пакетов Tor и obfs4proxy
Нам нужно установить Tor на своем VPS из официального репозитория и утилиту для обфускации. Сначала добавим репозитории Torproject. Для этого откроем sources.list командой:
nano /etc/apt/sources.list
и в конец добавим следующие строки:
deb Index of /torproject.org <DISTRIBUTION> main
deb-src Index of /torproject.org <DISTRIBUTION> main
deb Index of /torproject.org obfs4proxy main
<DISTRIBUTION> заменяем на имя дистрибутива своего сервера.
Далее добавим открытый gpg ключ Torproject:
gpg --keyserver keys.gnupg.net --recv A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-key add -
После чего обновляем список пакетов, а затем систему
apt update && apt upgrade
Далее устанавливаем последнюю стабильную версию Tor и obfs4proxy
apt install tor deb.torproject.org-keyring obfs4proxy
Теперь служба Tor установлена и работает.
Проверим состояние службы
systemctl status tor
В выдаче должна присутствовать одна строка зеленого цвета
Active: active (running). Если выдаст active (exited) – это нормально
На этом установка закончена, теперь перейдем к настройке параметров службы Tor.
Настройка параметров службы Tor
Нам нужно настроить файл конфигурации для работы службы в качестве моста с обфускацией трафика. Для этого выполняем следующие команды. Открываем файл с конфигурацией:
nano /etc/tor/torrc
Вставляем в начало файла следующие директивы:
BridgeRelay 1
Nickname <имя вашего моста (до 19 символов)>
ContactInfo RandomPerson
ExitPolicy reject *:*
PublishServerDescriptor 0
ServerTransportPlugin obfs4 exec /usr/bin/obfs4proxy
SocksPort 0
ORPort 443
ExtORPort auto
AvoidDiskWrites 1
HeartbeatPeriod 24 hours
В ContactInfo можете указать свои контакты, если вы делаете открытый мост (в нашем случае это не нужно)
ExitPolicy reject *:* говорит, что
PublishServerDescriptor 0 означает не публиковаться нигде, это наш личный мост.
Для ORPort также как и для OpenVPN сервера будем использовать распространенные порты, предназначенные для зашифрованного соединения.
С настройками Tor все и теперь нам нужно скачать на свою машину файл с настройками обфускации. Для этого на своей машине открываем консоль и запускаем mc (Скачивать файлы с сервера на ПК можно разными способами, я пользуюсь Midnight Commander). Заходим на наш сервер и качаем файл obfs4_bridgeline.txt
Полный путь к файлу : /var/lib/tor/pt_state/obfs4_bridgeline.txt
После этого находим в логе номер порта обфускатора командой:
grep obfs4 /var/log/tor/log
Строка выдачи содержит случайно сгенерированный номер порта 40182 (он кэшируется в системе для дальнейшего использования и возобновляется после перезагрузки, но при первоначальной установке или переустановке генерируется заново, чтобы пользователи мостов в сети имели максимально различные порты)
Registered server transport 'obfs4' at '[::]:40182'
Открываем в фаерволе этот порт для входящих подключений, добавив новое правило:
iptables -A INPUT -p tcp --dport 40182 -j ACCEPT
Использование моста и обфускатора
Запускаем Tor Browser. В окне Tor Status нажимаем кнопку Open Settings. В окне Tor Network Settings нажимаем кнопку Configure. На вопрос, имеется ли цензура, отвечаем Yes. В окне конфигурации моста в поле ввода Enter custom bridges вводим IP адрес VPS и порт 443. Если локальный прокси отсутствует, то нажимаем Connect (если используется, то указываем его) Проверяем созданную цепочку. Первым хопом значится Unknown country (IP unknown). Это означает, что наш Tor мост работает.
Теперь сделаем обфускацию трафика и для этого нам понадобится файл obfs4_bridgeline.txt , который мы скачали с нашего сервера. Открываем этот файл и меняем маски <IP ADDRESS>:<PORT> на IP адрес VPS и порт обфускатора 40182
А вместо маски <FINGERPRINT> вписываем fingerprint (40 символов) своего моста, который получаем командой в терминале сервера
cat /var/lib/tor/fingerprint
Теперь в окне конфигурации моста в поле Enter custom bridges всавляем строку из файла obfs4_bridgeline.txt с введенными нами данными, типа:
obfs4 111.111.111.113:2222 FF7652873C326B0AF41587409E88C8612B8FE654 cert=fP23efkIrlPawTerdcUpN3Uatrh9jQcP0UpnPkfcfge5WiPP1mVffEfgesGgAgnBO97lOA iat-mode=0
Перезапускаем Tor Browser и смотрим, что получилось. Теперь первым хопом значится Bridge: obfs4 (Swedan). Это значит, что обфускация трафика используется нашим мостом.
P.S. Можно сделать отдельные копии Tor Browser'а: одну для соединения через обычный мост, вторую для соединения через мост с дополнительной обфускацией трафика.
Нам нужно установить Tor на своем VPS из официального репозитория и утилиту для обфускации. Сначала добавим репозитории Torproject. Для этого откроем sources.list командой:
nano /etc/apt/sources.list
и в конец добавим следующие строки:
deb Index of /torproject.org <DISTRIBUTION> main
deb-src Index of /torproject.org <DISTRIBUTION> main
deb Index of /torproject.org obfs4proxy main
<DISTRIBUTION> заменяем на имя дистрибутива своего сервера.
Далее добавим открытый gpg ключ Torproject:
gpg --keyserver keys.gnupg.net --recv A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-key add -
После чего обновляем список пакетов, а затем систему
apt update && apt upgrade
Далее устанавливаем последнюю стабильную версию Tor и obfs4proxy
apt install tor deb.torproject.org-keyring obfs4proxy
Теперь служба Tor установлена и работает.
Проверим состояние службы
systemctl status tor
В выдаче должна присутствовать одна строка зеленого цвета
Active: active (running). Если выдаст active (exited) – это нормально
На этом установка закончена, теперь перейдем к настройке параметров службы Tor.
Настройка параметров службы Tor
Нам нужно настроить файл конфигурации для работы службы в качестве моста с обфускацией трафика. Для этого выполняем следующие команды. Открываем файл с конфигурацией:
nano /etc/tor/torrc
Вставляем в начало файла следующие директивы:
BridgeRelay 1
Nickname <имя вашего моста (до 19 символов)>
ContactInfo RandomPerson
ExitPolicy reject *:*
PublishServerDescriptor 0
ServerTransportPlugin obfs4 exec /usr/bin/obfs4proxy
SocksPort 0
ORPort 443
ExtORPort auto
AvoidDiskWrites 1
HeartbeatPeriod 24 hours
В ContactInfo можете указать свои контакты, если вы делаете открытый мост (в нашем случае это не нужно)
ExitPolicy reject *:* говорит, что
PublishServerDescriptor 0 означает не публиковаться нигде, это наш личный мост.
Для ORPort также как и для OpenVPN сервера будем использовать распространенные порты, предназначенные для зашифрованного соединения.
С настройками Tor все и теперь нам нужно скачать на свою машину файл с настройками обфускации. Для этого на своей машине открываем консоль и запускаем mc (Скачивать файлы с сервера на ПК можно разными способами, я пользуюсь Midnight Commander). Заходим на наш сервер и качаем файл obfs4_bridgeline.txt
Полный путь к файлу : /var/lib/tor/pt_state/obfs4_bridgeline.txt
После этого находим в логе номер порта обфускатора командой:
grep obfs4 /var/log/tor/log
Строка выдачи содержит случайно сгенерированный номер порта 40182 (он кэшируется в системе для дальнейшего использования и возобновляется после перезагрузки, но при первоначальной установке или переустановке генерируется заново, чтобы пользователи мостов в сети имели максимально различные порты)
Registered server transport 'obfs4' at '[::]:40182'
Открываем в фаерволе этот порт для входящих подключений, добавив новое правило:
iptables -A INPUT -p tcp --dport 40182 -j ACCEPT
Использование моста и обфускатора
Запускаем Tor Browser. В окне Tor Status нажимаем кнопку Open Settings. В окне Tor Network Settings нажимаем кнопку Configure. На вопрос, имеется ли цензура, отвечаем Yes. В окне конфигурации моста в поле ввода Enter custom bridges вводим IP адрес VPS и порт 443. Если локальный прокси отсутствует, то нажимаем Connect (если используется, то указываем его) Проверяем созданную цепочку. Первым хопом значится Unknown country (IP unknown). Это означает, что наш Tor мост работает.
Теперь сделаем обфускацию трафика и для этого нам понадобится файл obfs4_bridgeline.txt , который мы скачали с нашего сервера. Открываем этот файл и меняем маски <IP ADDRESS>:<PORT> на IP адрес VPS и порт обфускатора 40182
А вместо маски <FINGERPRINT> вписываем fingerprint (40 символов) своего моста, который получаем командой в терминале сервера
cat /var/lib/tor/fingerprint
Теперь в окне конфигурации моста в поле Enter custom bridges всавляем строку из файла obfs4_bridgeline.txt с введенными нами данными, типа:
obfs4 111.111.111.113:2222 FF7652873C326B0AF41587409E88C8612B8FE654 cert=fP23efkIrlPawTerdcUpN3Uatrh9jQcP0UpnPkfcfge5WiPP1mVffEfgesGgAgnBO97lOA iat-mode=0
Перезапускаем Tor Browser и смотрим, что получилось. Теперь первым хопом значится Bridge: obfs4 (Swedan). Это значит, что обфускация трафика используется нашим мостом.
P.S. Можно сделать отдельные копии Tor Browser'а: одну для соединения через обычный мост, вторую для соединения через мост с дополнительной обфускацией трафика.
Похожие темы:
- [MakeWeb] Практический курс «Javascript Fullstack разработчик» (2023)
- [Сергей Марков] Искусственный интеллект и машинное обучение: итоги 2022 года [Архэ] (2023)
- [Центр digital-профессий ITtensive] Анализ временных рядов на Python [Udemy] (2023)
- [Яндекс.Практикум] Специалист по Data Science Плюс. Часть 9/16 (2022)
- [Яндекс.Практикум] Java-разработчик. Часть 9 из 10 (2022)
- [udemy] SQL HackerRank Challenge: получите золотую звезду и 670 баллов (2022)
- [udemy] Three.js — полный курс от начального до продвинутого (2022)
- [Marco Peixeiro] Прогнозирование временных рядов в Python (2022)
- [Максим Новак] Универсальные коллекции значений в 1С [Udemy] (2022)
- [Яндекс.Практикум] Android-разработчик. Часть 1 из 10 (2022)