- INSTALLATION
- Command-line method
- Установка Tor
- Установка Tor
- Настройка
- Проверка
- Получение нового НИМа (смена конечной ноды Tor)
- Работа с onion-ресурсами
- Настройки браузеров для работы с onion-ресурсами
- Mozilla Firefox
- Chromium/Google Chrome
- Использование pac-файла для упрощения доступа к onion-ресурсам
- Обход блокировки Tor
- Обфускация трафика
- Использование мостов
- Использование Tor через IPv6
INSTALLATION
Note: On Ubuntu and some other distros if you try to launch start-tor-browser.desktop a text file might open up. In that case, you will have to change the default behavior and allow running .desktop files as executables. This setting can usually be found in your file manager.
Command-line method
- When the download is complete, extract the archive with the command tar -xf [TB archive] .
- From inside the Tor Browser directory, you can launch Tor Browser by running: ./start-tor-browser.desktop Note: If this command fails to run, you probably need to make the file executable. From within this directory run: chmod +x start-tor-browser.desktop
Some additional flags that can be used with start-tor-browser.desktop from the command-line:
Flag | Description |
---|---|
—register-app | To register Tor Browser as a desktop application. |
—verbose | To display Tor and Firefox output in the terminal. |
—log [file] | To record Tor and Firefox output in file (default: tor-browser.log). |
—detach | To detach from terminal and run Tor Browser in the background. |
—unregister-app | To unregister Tor Browser as a desktop application. |
Установка Tor
Tor — система, позволяющая устанавливать анонимное сетевое соединение, защищённое от прослушивания. Рассматривается как анонимная сеть, предоставляющая передачу данных в зашифрованном виде.
В статье будет рассмотрена работа через Tor с обычными браузерами, что не гарантирует анонимность. Если вы хотите большей безопасности, установите Tor согласно данной официальной инструкции.
Установка Tor
Устанавливаем необходимые пакеты.
sudo apt-get install tor tor-geoipdb privoxy
При необходимости получения последней версии Tor (к примеру, для обфускации трафика) нужно установить пакеты из официальных репозиториев согласно данной инструкции.
Настройка
Бэкап базовой и новая конфигурация для privoxy:
sudo mv /etc/privoxy/config /etc/privoxy/config.backup
sudo gedit /etc/privoxy/config
Вставляем следующее и сохраняем:
# Generally, this file goes in /etc/privoxy/config # # Tor listens as a SOCKS5 proxy here: forward-socks5 / 127.0.0.1:9050 . confdir /etc/privoxy logdir /var/log/privoxy # actionsfile standard # Internal purpose, recommended actionsfile default.action # Main actions file actionsfile user.action # User customizations filterfile default.filter # Don't log interesting things, only startup messages, warnings and errors logfile logfile #jarfile jarfile #debug 0 # show each GET/POST/CONNECT request debug 4096 # Startup banner and warnings debug 8192 # Errors - *we highly recommended enabling this* user-manual /usr/share/doc/privoxy/user-manual listen-address 127.0.0.1:8118 toggle 1 enable-remote-toggle 0 enable-edit-actions 0 enable-remote-http-toggle 0 buffer-limit 4096
sudo service privoxy restart
Использовать torbutton для свежих версий firefox не рекомендуется (torbutton предназначен для версий firefox, включаемых в состав tor browser bundle). Скачать torbutton можно по следующим ссылкам:
Для быстрого переключения в любом браузере можно использовать любое дополнение, предназначенное для переключения прокси (proxy switcher).
Хочу отметить, что для Google Chrome единственным работоспособным расширением оказалось Proxy SwitchySharp.
Проверка
В настройках прокси (перечень дополнений для переключения прокси дан в предыдущем разделе) указываем следующие параметры:
Данная конфигурация будет действовать при использовании настроек, указанных в статье.
Переключаем прокси в браузере.
Проверяем, видит ли нас Большой Брат:
При использовании иных программ (к примеру, Pidgin) в их настройках нужно установить прокси по протоколу socks 4a или 5.0 с указанными выше настройками.
Получение нового НИМа (смена конечной ноды Tor)
Зачастую Tor используется в качестве обычного прокси. Если вас не устроила текущая выходная нода, ее легко менять с помощью скрипта.
sudo apt install empty-expect telnet
Задаем пароль new_tor_password для доступа к Tor по telnet и получаем в ответ его хэш в виде строки 16:47015F09825889D86059FF44D9562496912AC67CD0EB93DAA25427F194:
tor --hash-password 'new_tor_password'
Затем дополняем конфиг Tor
ControlPort 9051 HashedControlPassword 16:47015F09825889D86059FF44D9562496912AC67CD0EB93DAA25427F194
Остается создать скрипт со следующим содержимым (обратите внимание, ваш пароль хранится в скрипте в открытом виде!):
#!/bin/sh # Автоматическая смена НИМа в TOR empty -f -i torin -o torout telnet 127.0.0.1 9051 empty -s -o torin "AUTHENTICATE \"new_tor_password\"\n" empty -s -o torin "signal NEWNYM\n" empty -s -o torin "quit\n"
дать ему права на выполнение и запускать при необходимости.
Работа с onion-ресурсами
Внутри сети Tor доступны ресурсы в псевдо-доменной зоне .onion. Список данных ресурсов можно увидеть здесь (возможно, для доступа к данной информации вам потребуется соединение через Tor, поскольку ваш провайдер может блокировать данный сайт).
Настройки браузеров для работы с onion-ресурсами
Mozilla Firefox
Заходим в about:config, ищем параметр network.proxy.socks_remote_dns и выставляем его значение в true .
Chromium/Google Chrome
Заходим в Настройки, выбираем «Показать дополнительные настройки» и в разделе «Личные данные» делаем пункт «Предсказывать сетевые действия для ускорения загрузки страниц» неактивным.
Использование pac-файла для упрощения доступа к onion-ресурсам
С помощью pac-файла можно настроить доступ к определенным доменным именам с помощью конкретных прокси (для доступа к onion-сайту вам не придется вручную переключать прокси). Пример конфигурации такого файла для совместного использования *.i2p и *.onion приведен ниже.
function FindProxyForURL(url, host) { if (dnsDomainIs(host, ".i2p")) { return "PROXY 127.0.0.1:4444"; } if (dnsDomainIs(host, ".onion")) { return "SOCKS5 127.0.0.1:9050"; } else { return "DIRECT"; } }
Обход блокировки Tor
В связи с последними изменениями в законодательстве Российской Федерации и Республики Беларусь возможно блокирование Tor провайдерами. Два основных метода — это блокирование известных IP-адресов узлов Tor (этому противодействует использование непубличных адресов — мостов) и глубокий анализ трафика (в связи с чем рекомендуется обфусцировать трафик). Также можно использовать Tor через IPv6.
Здесь нужно отметить, что Tor Bundle, скачиваемый с официального сайта, предоставляет более удобный механизм работы с обфускацией и мостами, чем представленный ниже в этом руководстве.
Обфускация трафика
Нам нужно обновить Tor до последней stable-версии из официального репозитория и установить утилиту для обфускации (проверяйте на официальном сайте torproject.org информацию о наиболее актуальных утилитах обфускации: чем новее утилита, тем сложнее расшифровать ваш трафик). Актуальной на момент конца 2016-го года является утилита obfs4proxy. Ищем нужный нам пакет в репозиториях Ubuntu:
Если его там не окажется, установим его из репозиториев Torproject:
sudo nano /etc/apt/sources.list
Добавляем в конец файла следующую строку:
deb http://deb.torproject.org/torproject.org obfs4proxy main
И обновляем информацию о репозиториях:
sudo apt-get install obfs4proxy
После этого заменяем содержимое файла /etc/tor/torrc следующим
SocksPort 9050 ORPort auto BridgeRelay 1 Exitpolicy reject *:* ExtORPort auto ## CHANGEME_1 -> provide a nickname for your bridge, can be anything you like #Nickname CHANGEME_1 ## CHANGEME_2 -> provide some email address so we can contact you if there's a problem #ContactInfo CHANGEME_2 ServerTransportPlugin obfs4 exec /usr/bin/obfs4proxy
Если при перезапуске Tor в логе
cat /var/log/tor/log|grep obfs4
Jul 17 20:01:37.000 [warn] Server managed proxy encountered a method error. (obfs4 Could not set up listener.)
, не пугайтесь — obfs4proxy не был перезапущен и удерживает требуемый порт, все будет работать.
Чтобы убедиться в правильности работы настроенного Tor, проверьте содержимое /var/log/tor/log на наличие следующих строк:
Nov 05 16:40:45.000 [notice] We now have enough directory information to build circuits. Nov 05 16:40:45.000 [notice] Bootstrapped 80%: Connecting to the Tor network. Nov 05 16:40:46.000 [notice] Bootstrapped 85%: Finishing handshake with first hop. Nov 05 16:40:46.000 [notice] Bootstrapped 90%: Establishing a Tor circuit. Nov 05 16:40:48.000 [notice] Tor has successfully opened a circuit. Looks like client functionality is working. Nov 05 16:40:48.000 [notice] Bootstrapped 100%: Done.
Использование мостов
Мосты мы будем использовать при настроенной обфускации трафика (смотри предыдущий пункт). Чтобы получить мосты, заходим сюда либо отправляем на адрес bridges@bridges.torproject.org письмо с темой get transport obfs4 и ждем в ответ список из трех адресов следующего вида:
obfs4 111.111.111.113:2222 FF7652873C326B0AF41587409E88C8612B8FE654 cert=fP23efkIrlPawTerdcUpN3Uatrh9jQcP0UpnPkfcfge5WiPP1mVffEfgesGgAgnBO97lOA iat-mode=0 obfs4 111.111.111.114:2222 FF7652873C326B0EFC1587409E88C8612B8FE654 cert=fP23efkIdfeawTerdcUpN3Uatrh9jQcP0UpnPkfcfge5WiPP1mVffEfgesGgAgnBO97lOA iat-mode=0 obfs4 111.111.111.115:2222 FF7652873C326B0AFDF658409E88C8612B8FE654 cert=fP23efkIrlPawTerdcUpN3Uatrh9jQcP0UpnPkfcfge5WiPP1mVffEeftWGgAgnBO97lOA iat-mode=0
После этого остается изменить файл /etc/tor/torrc следующим образом: добавить в начало данные адреса в следующем формате:
UseBridges 1 SocksPort 9050 Exitpolicy reject *:* ExtORPort auto ClientTransportPlugin obfs4 exec /usr/bin/obfs4proxy managed bridge obfs4 111.111.111.113:2222 FF7652873C326B0AF41587409E88C8612B8FE654 cert=fP23efkIrlPawTerdcUpN3Uatrh9jQcP0UpnPkfcfge5WiPP1mVffEfgesGgAgnBO97lOA iat-mode=0 bridge obfs4 111.111.111.114:2222 FF7652873C326B0EFC1587409E88C8612B8FE654 cert=fP23efkIdfeawTerdcUpN3Uatrh9jQcP0UpnPkfcfge5WiPP1mVffEfgesGgAgnBO97lOA iat-mode=0 bridge obfs4 111.111.111.115:2222 FF7652873C326B0AFDF658409E88C8612B8FE654 cert=fP23efkIrlPawTerdcUpN3Uatrh9jQcP0UpnPkfcfge5WiPP1mVffEeftWGgAgnBO97lOA iat-mode=0
Использование Tor через IPv6
Установим IPv4-IPv6 туннель Miredo:
$ ping6 ipv6.google.com PING ipv6.google.com(waw02s08-in-x0e.1e100.net) 56 data bytes 64 bytes from waw02s08-in-x0e.1e100.net: icmp_seq=1 ttl=56 time=352 ms 64 bytes from waw02s08-in-x0e.1e100.net: icmp_seq=2 ttl=56 time=111 ms 64 bytes from waw02s08-in-x0e.1e100.net: icmp_seq=3 ttl=56 time=123 ms 64 bytes from waw02s08-in-x0e.1e100.net: icmp_seq=4 ttl=56 time=113 ms 64 bytes from waw02s08-in-x0e.1e100.net: icmp_seq=5 ttl=56 time=150 ms ^C --- ipv6.google.com ping statistics --- 6 packets transmitted, 5 received, 16% packet loss, time 5007ms rtt min/avg/max/mdev = 111.319/170.281/352.361/92.092 ms
Теперь мы можем работать с IPv6. Остается небольшой шаг для настройки Tor. Если вы используете Tor Browser, вам нужно зайти в подкаталог /path/to/tor/tor-browser_en-US/Browser/TorBrowser/Data/Tor/ и отредактировать файл torrc. Смело удаляйте все содержимое конфига и вставляйте туда единственную строку:
Остальное содержимое конфига Tor при запуске дополнит самостоятельно. Произведенная нами настройка запретит Tor’у подключаться к IPv4-адресам, которые могут блокироваться вашим провайдером. Здесь стоит отметить, что что в будущем могут блокироваться и IPv6-адреса, но на данный момент ни в России, ни в Беларуси этого не происходит. Если вы под Linux используете установленный пакет Tor, приведите свой конфиг /etc/tor/torrc к примерно такому виду:
ClientUseIPv4 0 SocksPort 9050 Exitpolicy reject *:* ExitPolicy reject6 *:* ExtORPort auto ClientTransportPlugin obfs4 exec /usr/bin/obfs4proxy managed
Заметьте, при использовании IPv6 можно по-прежнему обфусцировать трафик.
Как будет работать Tor при наших настройках? Первой из трех узлов в цепи Tor станет поддерживающая IPv6 нода, доступ к которой не заблокирован. Выходной останется IPv4-нода.
- Сайт
- Об Ubuntu
- Скачать Ubuntu
- Семейство Ubuntu
- Новости
- Форум
- Помощь
- Правила
- Документация
- Пользовательская документация
- Официальная документация
- Семейство Ubuntu
- Материалы для загрузки
- Совместимость с оборудованием
- RSS лента
- Сообщество
- Наши проекты
- Местные сообщества
- Перевод Ubuntu
- Тестирование
- RSS лента
© 2018 Ubuntu-ru — Русскоязычное сообщество Ubuntu Linux.
© 2012 Canonical Ltd. Ubuntu и Canonical являются зарегистрированными торговыми знаками Canonical Ltd.