Tor Expert Bundle и настройка конфига torrc

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

ClientTransportPlugin obfs4 exec D:\Soft\Tor\Tor\PluggableTransports\obfs4proxy.exe
Bridge obfs4 77.72.132.85:60942 108891B7875D12AADD0DDB06C88FBFED0DF48F91 cert=5T1zoNf9IvnUJ5PW8QrqvMs2FtTk5Zovxd4hPFFu8wSbo338e/yerVmH8bVGuREqZx/0CA iat-mode=0
Bridge obfs4 84.113.179.53:9999 9429DA1EBF5C50112776350
C4C0AF4ECC3D3E0F9 cert=DyGA0K+G8fax021WpttnsOgegCTk9Vc6xkgd/qK6wZg/0U7DawhsmNs+4HxiTDn1hkRoUg iat-mode=0
UseBridges 1
DataDirectory D:\Soft\Tor\Tor
GeoIPFile D:\Soft\Tor\Data\Tor\geoip
GeoIPv6File D:\Soft\Tor\Data\Tor\geoip6
Log notice file D:\Soft\Tor\Tor\log.txt
ExtORPort auto
ContactInfo yourname@example.com
Nickname PonteMilvio

После запуска командой tor.exe -f D:\Soft\Tor\Tor\torrc консоль молчит, нет соединения. должно быть bootstraped 100% done


Создавать и настраивать torrc приходится из-за того что Tor блокируется, bootstraped висит на 5%. Тут же просто мосты другие укажу которые работают.

Вам конфигурация клиента через транспорт obfs4 необходима?

CacheDirectory ..\Data\Tor\cache
DataDirectory ..\Data\Tor
GeoIPFile ..\Data\Tor\geoip
GeoIPv6File ..\Data\Tor\geoip6

SafeLogging 0

ClientOnly 1
AutomapHostsOnResolve 1

AvoidDiskWrites 1
HardwareAccel 1

ExcludeExitNodes {US},{RU},{BY}

NewCircuitPeriod 300

OutboundBindAddress 192.168.1.1
SocksPort [::1]:9050
DNSPort [::1]:9053

UseBridges 1
ClientTransportPlugin obfs4 exec ..\Tor\PluggableTransports\obfs4-client.exe

# Мосты
Bridge obfs4 …
Bridge obfs4 …
…

Сейчас актуальная версия 0.4.7.13, и похоже дальше переход будет на arti.

Потому что лог выводится в D:\Soft\Tor\Tor\log.txt. Закомментируйте Log notice, чтобы выводило в консоль.

Поскольку в новых версиях нету obfs4-client.exe то в конфиге нужно заменить

UseBridges 1
ClientTransportPlugin obfs4 exec …\Tor\PluggableTransports\obfs4-client.exe

На
UseBridges 1
ClientTransportPlugin obfs4 exec …\Tor\PluggableTransports\lyrebird.exe

Верно?

Да, формат мостов старый, екзешник поменять и должно заработать (если мост разумеется не заблокирован).

Есть момент с конфигом:
UseBridges 1
ClientTransportPlugin obfs4 exec /path to lyrebird.exe/
перед адресом моста надо добавить Bridge иначе выкатывает ошибку конфига

Какой аргумент для запуска tor.exe надо указывать для добавления нужного конфига ? по умолчанию он подхватывает из папки Roaming\ещк в Windows

Да, в примере так и написано.

Что-то вроде такого в ярлыке должно быть:
"C:\Program Files\tor-win64\Tor\tor.exe" -f "..\Data_Lyrebird\Tor\configuration.txt"

Вот вам иконочка ещё: Tor.ico.xz (50.0 KB)

Спасибо за ответ. Ещё один вопросик:
если в конфиге torrc не указана строка GeoIPv6File или указан правильный путь до файла geoip6 то запуск tor.exe останавливается после пункта Opened Socks и так висит. Но если указать неправильный путь до файла geoip6 в строке GeoIPv6File после сообщения [warn] Failed to open GeoIP file всё успешно работает. В связи с этим вопрос, как отключить в конфиге ipv6?

В примере OutboundBindAddress адрес IPv4, этого достаточно, чтобы тор и мосты не лазили по IPv6 (по крайней мере, у себя не разу не видел IPv6 подключений). Этот параметр может быть объявлен несколько раз для перечисления возможных адресов для биндинга (в том числе и IPv6). Есть ещё опция OutboundBindAddressPT только для транспортных плагинов.

Как ультимативное решение — разрешить в брандмауэре защитника Windows для транспорта подключение только по TCP к 0.0.0.0/0 (либо запретить 2000::/3).

Или вы спрашиваете, как сделать подключения на выходной ноде только через IPv4? Тогда используйте ClientUseIPv6 0 и AddressDisableIPv6 1.

Попробовал запускать с этими параметрами, но увы tor виснет так же на строке “Opened Socks listener connection (ready) on 127.0.0.1:9050”. И пока что выход это прописывать неверный путь в конфиге для GeoIPv6File

Вроде стал понимать проблему, пробуйте запустить тор прокси на виртуальной машине с вашим конфигом, если заработает — то это какая-то проблема с вашей ОС, в которой, возможно, поломан IPv6.
Должно быть в логах что-то вроде такого:

[notice] Opening Socks listener on [::1]:9050
[notice] Opened Socks listener connection (ready) on [::1]:9050
[notice] Opening DNS listener on [::1]:9053
[notice] Opened DNS listener connection (ready) on [::1]:9053

Актуальная версия.

Посмотрел код функции geoip_load_file, да, сначала он открывает файл tor_fopen_cloexec, затем пишет в лог Parsing GEOIP %s file %s., затем парсит. Похоже у вас зависает на fopen, можно попробовать удалить файл и заново его распаковать из архива, попробовать открыть, попробовать сократить длину пути каталога, попробовать использовать только латиницу в пути.

Попробовал на виртуалке Win 7 и Win 10 версии 13.5.3 и 14.0a5. С путями к исполняемым файлам вроде всё ок. И такой же залип на “Opened Socks listener connection (ready) on 127.0.0.1:9050”

Windows 7 вроде уже не должно работать начиная с какой-то версии.

Так почитайте первое сообщение и третье, где написано, что нужно убрать Log notice.

На win 7 до сих пор запускается )))
Действительно, стоило закомментить строчку Log notice как GeoIPv6File успешно распарсился и tor запустился. Спасибо!
(Просто как то не уловил связь между логгированием и залипанием при открытии geoip6)

Потому что с Log notice лог идёт в файл. Но не совсем сразу, а на некотором этапе. Без Log notice лог будет в терминале. В обоих случаях тор работает.

А это вы первичный автор конфигурации или тоже её откуда-то взяли? В любом случае в отличие от того тролля, meeeeeh, полагаю вас хоть в кой-то степени профессионалом, а не диванным держателем двухста obfs 4.

Я с ней работал. Из неё взяты SafeLogging 0, HardwareAccel 1, AutomapHostsOnResolve 1, ну и UseBridges 1. Пользу остального не совсем понял. Очень много работал применительно именно к Ютубу, как в общем-то в своей теме и сказал. Отсюда хорватские выходные ноды, ибо с множеством других кантринодов при просмотре Ютуба возникают ошибки. Что я собственно и на ntc когда-то вроде обсуждал. Поэтому я смотрел пользу параметров для стабилизации Ютуба. По итогу разницу чувствовал только от замены выходных нодов.

ExcludeExitNodes {US},{RU},{BY} - не совсем имеет смысл, зачем исключать только {US} из западных стран? Чем {US} хуже чем например {DE}? По какой-то причине казахские ноды также на Ютуб давали те же геоблокировки, что и россиянам с белорусами. AvoidDiskWrites 1 убрал, ибо программа и так совсем немного весит. NewCircuitPeriod 300 тоже убрал, ибо не увидел на тот момент разницы с различными значениями с ним и без него. Оптимизировал конфиг для предельно конкретных вещей и на тот момент это был просмотр Ютуба. Я вам могу показать результаты и разницу, если получу стопроцентную воспроизводимость.

Возможно Ютуб стабильнее всего работает именно на хорватских выходных ибо они, как и сказал meeeeeh (после того как ему указали по лбу их существование), все в одной подсети находятся, и Ютуб не считает подозрительным такой трафик, а возможно дело всё же в их сравнительной непопулярности (до того как я повлиял на их использование россиянами для обхода замедления).

Я открыл исходники тора, перечитал параметры в файле документации

Что-то натяпляпил, что показалось важным, что-то видел у других, уже не помню (начал пользоваться на постоянку с 2013-ого года).

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

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

Уже больше года урлы *.youtube.com начал пускать в обход тора через другую проксю по причине невыносимости ежедневного разгадывания светофоров, мне это было проще сделать, чем регулярно добавлять в исключение забаненые выходные ноды.

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