- Гайд Пропускаем трафик через Tor. (Parrot os — Kali Linux)
- Заворачиваем весь трафик ОС в Tor
- Компонент №1: Tor
- Компонент №2: Iptables
- Компонент №3: python + Desktop Evironment UI
- Компонент №4: systemd
- Пропускаем трафик через Tor и Privoxy
- Установка Tor и Privoxy
- Анонимизация всего траффика через VPN + TOR/I2P. Собираем миддлбокс с нуля
- Постановка задачи
- Дисклеймер
- Хостинг
- Установка пакетов
- Настройка VPN
- Настройка интернета
- Настройка TOR
- Настройка I2P
- Что дальше?
Гайд Пропускаем трафик через Tor. (Parrot os — Kali Linux)
Я думаю все задавались вопросом, как же остаться анонимным в такой системе как Kali Linux?
В данной теме я дам вам этот ответ.
Итак, есть собственно 2 способа настройки, оба и рассмотрим.
Tor + Proxychains.
Это один из самых известных методов!
Чтобы установить тор, нужно открыть терминал и написать данные команды :
apt-get install tor
socks4 127.0.0.1 9050
socks5 127.0.0.1 9050
Так же в начале документа необходимо активировать одну из опций.
- #dynamic_chain
- #strict_chain
- #random_chain
Необходимо одну из опций активировать, убрав впереди комментарий #.
Я использую способ — random_chain , можете тоже его активировать, другие 2 должны быть задокументированы. Либо можно использовать dynamic_chain
И сохраняем документ.
Теперь если всё настроено правильно вводим в консоли команды:
tor (активирует тор)
Proxychains «необходимая программа или скрипт который нужно запустить через тор»
Например: Proxychains firefox ( браузер должен открыться используя сети тор, обязательно проверяем).
Tor + Privoxy.
Хороший способ пропустить Kali linux весь трафик через tor.
Скрипт privoxy позволяет пропустить уже весь трафик через тор сети либо же ваши прокси, но по умолчанию он не установлен.
Установка и настройка.
Сначала устанавливаем TOR если он у вас не установлен, командами в консоли.
apt-get update
apt-get install tor
Далее необходимо установить Privoxy прописав в консоль.
Теперь настраиваем его.
Вбиваем в консоль.
В самом конце документа прописываем следующие 3 строчки.
forward-socks5 / localhost:9050 . forward-socks4 / localhost:9050 . forward-socks4a / localhost:9050 . |
Теперь необходимо настроить менеджер подключений.
Заходим в Настройки — Сеть — Сетевая прокси служба.
Выбираем метод ручной.
Вбиваем в Http и Https — localhost порт — 8118
В узел Socks — localhost порт — 9050 .
На этом настройки завершены.
Убедитесь что вид используемых прокси установлен вручную.
Осталось запустить сервисы следующими командами.
service tor start |
service privoxy start
Далее заходим например в браузер и заходим на сайт проверки IP чтобы убедиться что всё работает. Если всё хорошо, все скрипты в Kali linux будут подключаться через тор.
Почему может не работать TOR.
Долгое время я бился над проблемой что ТОР не работал на виртуальной машине.
Проблема оказалась в неправильно настроенном времени, поэтому если возникают трудности в запуске проверьте правильно ли у вас настроено время и часовой пояс.
Надеюсь что всем понравилась данная тема! (Я заебался все делать красиво на втором способе, так что извиняйте)
Источник
Заворачиваем весь трафик ОС в Tor
Все описанное в статье реализовано в виде инструмента Toroxy, доступного на GitHub
В последнее время анонимность в сети является предметом горячих споров. Ни для кого не секрет, что данные о посещениях Интернет-ресурсов с локального устройства могут собираться на разных уровнях с целью построения «модели» пользователя, которая позже против него же и может быть использована (или могла бы). Поэтому не удивительно, что все большее количество активных пользователей Интернета становятся уверены в необходимости механизмов проксирования и анонимизации. В связи с этим появляется все больше новых VPN-клиентов, но, как показывает практика, далеко не всем из них по-настоящему можно доверять: то не все работает из коробки, то анонимизируется только HTTP-трафик, то качество реализации хромает, а то и вовсе разработчики грешат сливанием данных о своих пользователях.
В этой статье мы попробуем собрать из ряда программных компонентов собственный инструмент с UI, который бы позволил полностью анонимизировать трафик локальной системы и не допустить утечек по «прослушиваемым» каналам ни на одном из этапов работы.
Главной нашей целью будет «сборка» надежной утилиты из готовых инструментов. Очевидно, что идея создания с нуля качественного инструмента за разумный срок чревата ошибками, а поэтому бытрее и надежнее будет выбрать готовые компоненты, а затем правильно их связать!
Что должен уметь инструмент?
- Перенаправлять весь трафик целевой системы на промежуточные узлы (желательно несколько) для надежной маскировки источника
- Отслеживать возможные нарушения анонимности, исправлять их и сообщать о них с помощью UI уведомлений
Выбранные компоненты для создания инструмента:
- tor
- iptables
- python3
- systemd
Перемешав все компоненты в оболочке под названием «Linux» мы определенно сможем получить что-то стоящее, что поможет достигнуть итоговой цели.
Компонент №1: Tor
Именно вокруг этого компонента будет построена вся остальная инфраструктура инструмента. Tor предоставляет механизм, который находится в составе любого VPN-клиента — механизм заворачивания трафика через промежуточные анонимные для внешнего наблюдателя узлы (в стандартной конфигурации таких узла 3).
По умолчанию клиент Tor из стандартных пакетных репозиториев после установки начинает слушать порт 9050, принимающий любого клиента, «умеющего» socks. Проблема заключается в том, что помимо socks-трафика в нашей системе может быть куча другого трафика от приложений, не работающих по этому протоколу. В связи с этим прежде всего в пределах локальной системы придется прорубить окно в сеть Tor для любого нового сетевого соединения. Делается это достаточно просто с помощью поднятия transparent proxy в конфигурации torrc:
Отдельного внимания заслуживает UDP трафик. Дело в том, что в основе принципа луковой маршрутизации лежит концепция «соединения» (stream), существующего, как известно, только в TCP. Отправив через Tor UDP-пакет, целевая система не сможет получить на него ответ, так как ответный пакет не найдет обратной дороги. Но несмотря на эту особенность, у нас остается возможность анонимизировать DNS запросы, которые, как известно осуществляются по UDP, а заодно и включить .onion резолв:
На этом доступ в Tor открыт в пределах loopback’а.
Компонент №2: Iptables
Так как наша задача заключается в сокрытии истинного источника трафика от внешнего наблюдателя в пределах всей системы, а окно в Tor уже открыто, осталось только завернуть весь трафик в это окно. Поможет нам в этом системный файрвол, находящийся в комплекте с ядром Linux:
На данном этапе мы получаем рабочую утилиту, надежно маскирующую весь исходящий трафик, однако это только половина работы.
Компонент №3: python + Desktop Evironment UI
Каждый раз производить ручную конфигурацию из консоли (даже если это будет запуск bash-скрипта) будет достаточно утомительно, поэтому самое время приступить к написанию небольшой утилиты, помогающей нам конкретно в следующем:
- Автоматическая установка конфигурации
- Смена своего identity в пределах Tor в любой момент
- Отслеживание целостности правил iptables и их перезапись при нарушении
- Отслеживание текущего identity (IP)
- Уведомление о двух предыдущих пунктах с помощью уведомлений графическогой оболочки
При первом запуске утилита самостоятельно скачает все необходимые компоненты, а при последующих запусках будет конфигурировать Tor в связке с iptables, как описано выше.
При желании смены своего внешнего IP адреса, будет происходить взаимодействие со служебным портом Tor — 9051, открытым в самом начале для автоматизации смены IP:
Отслеживание целостности можно реализовать достаточно банально (делаем же на коленке) с помощью периодического чтения структуры правил iptables и проверки их SHA256-суммы:
Также при обнаружении несостыковок с ожидаемой контрольной суммой можно сохранить дамп правил iptables в /tmp/broken-rules-%d-%m-%Y_%I-%M-%S.log для дальнейших разбирательств. Если окажется, что то будет инициирована перезапись таблицы правил iptables.
Наблюдение за текущим IP будет происходить с помощью постоянного обращения на какой-нибудь внешний ресурс, предоставляющий IP-клиента — например, ident.me .
Ну, и напоследок задействуем DE UI для сообщения о проблемах с правилами либо о смене IP. Каждое графическое окружение в каком-то роде уникально, особенно когда речь идет об использовании UI из процесса-демона, но все же на большинстве Linux’ов такой bash-код, вызываемый из Python будет успешно показывать уведомления:
Объединив все это в 200-строчном Python скрипте, получаем то, чего добивались. Вот, например, как будет выглядеть уведомление о том, что наш identity обновился:
А вот так будет выглядеть уведомление о том, что была нарушена целостность правил Iptables с указанием выгруженного дампа, содержащего нарушение:
Компонент №4: systemd
Ну и напоследок нам определенно хотелось бы произвести единоразовую настройку и не думать в дальнейшем о своей безопасности, а потому на помощь приходят автозапуск и сервисы. В Linux есть несколько стандартных подсистем управления демонами: systemd, sysV, init. В нашем случае выбор пал на systemd из-за гибкости его настройки.
Предположим, что написанный в предыдущем шаге python-скрипт называется «toroxy» и лежит в /usr/bin/ , тогда его автозапуск и последующий мониторинг с определенной гибкостью управления демоном будет таким:
Почти все готово для «промышленной» эксплуатации. Последний штрих, который хотелось бы внести в инструмент для дополнительной надежности — это автоматическая инициализация правил iptables при запуске системы (как известно, правила iptables при перезагрузке сбрасываются) с помощью iptables-persistent:
Источник
Пропускаем трафик через Tor и Privoxy
Добрый день всем, кто оказался на данном сайте. Я уже писал статьи об использовании сети Tor в этой и в этой статье. А сегодня хотелось бы привести пример связки Tor + Privoxy. Что нам это даст? А даст нам это еще один из вариантов некой анонимности и защищенности в интернете. И так, переходим в терминал, для начала давайте установим необходимые пакеты в нашу систему. Переходим в терминал:
Установка Tor и Privoxy
Для начала давайте установим пакеты tor и privoxy:
После успешной установки, нам нужно подправить конфигурационный файл privoxy. Давайте сделаем это:
Тут нам нужно вконце конфига вписать несколько строчек, псле чего сохраняем отредактированный файл и закрываем его:
Теперь запускаем службы tor и privoxy следующими командами:
Теперь пришла очередь настроить наш браузер на работу с tor и privoxy. Настройки буду показывать на примере браузера Firefox. Для этого вам нужно перейти в сетевые настройки браузера и вписать в соответствующие поля следующие строки:
После чего нажимаем кнопку “ok” и переходим на сайт “2ip.ru” для проверки наших настроек. Стоит оговориться, что скорость при такой конфигурации у вас упадет.
На этом все, как видите, данный метод довольно таки прост и не требует каких то глубоких познаний. Не используйте данную инструкцию в корыстных целях. Данный мануал приведет лишь с ознакомительной точки зрения.
Источник
Анонимизация всего траффика через VPN + TOR/I2P. Собираем миддлбокс с нуля
В этой статье будет рассказано, как пробросить весь трафик операционной системы через TOR так, чтобы о наличии TOR-а операционная система даже не подозревала.
Это поможет не думать о бесконечных настройках прокси и onion, перестать бояться на тему «а не сливает ли торрент клиент мой реальный IP адрес, так как не полностью поддерживает прокси?» и, наконец, быть застрахованным от законодательного запрета TOR-а в России.
Когда я говорю «TOR», я подразумеваю «TOR и I2P». По схожей методике сюда можно подключить любой даркнет.
Статья — «чисто конкретная». Теория уже неплохо изложена в статье Pandos ‘а habrahabr.ru/post/204266. В данном тексте будет дана детальная инструкция «как сделать, чтобы работало».
Постановка задачи
1. Мой компьютер должен по нажатию одной кнопки переходить в режим «весь трафик — не русский».
2. По нажатию второй кнопки он должен переходить в режим «весь траффик идет через TOR»
3. Третья кнопка — для I2P.
4. Входная TOR-нода должна находиться за рубежом.
5. Все это должно работать под linux, windows, android. Заранее: с OS X и iPhone тоже все в порядке, просто у меня их нету, так что протестить не смогу.
Дисклеймер
Использование tor over vpn не обязательно повышает анонимность. Подробнее: trac.torproject.org/projects/tor/wiki/doc/TorPlusVPN. В данной статье описывается средство, которое, тем не менее, нужно применять с умом.
Хостинг
Первым делом нам понадобится сравнительно дешевая VPS-ка, владельцы которой не против, чтобы там крутился TOR (и не русская, разумеется). Лично я использую DigitalOcean. В их ToS не специфицирован запрещенный трафик (хотя если будете качать пиратские торренты прямо с их IP — заблокируют на раз. Ну, собственно, нам для этого и нужен TOR. ). Стоит это 5$ в месяц.
Регистрироваться можно прямо тут: www.digitalocean.com/?refcode=82e536b1a24d (ссылка реферальная, вам $10, мне $25. Не хотите играть в это дело — уберите refcode).
Если Вы знаете лучшие или хотя бы не худшие варианты хостинга под такие цели — пишите в комменты, обновлю статью.
Я не буду описывать конкретную процедуру создания VPS-ки, так как это зависит от хостинга и просто. Давайте предположим, что вы в итоге можете выполнить команду,
и получить shell на VPS-ку. Я буду считать, что на VPS-ке крутится debian 7. По крайней мере, эта статья тестировалась на debian 7. На убунте тоже заработает, наверное.
Установка пакетов
Сначала немного приложений, которые облегчают нам жизнь. Не забудьте поставить ваш любимый редактор, mc если нужно и т.п.
I2P нету в репозитории debian, так что придется добавить новый источник.
Теперь поставим основные пакеты — TOR, VPN и I2P. Также нам пригодится DNS сервер. Я использую unbound.
Настройка VPN
Я буду держать все настройки VPN в /opt/vpn. Для начала следует сгенерировать сертификаты для сервера и клиента.
N.B. Мы будем запускать несколько серверов (один под tor, второй под обычный трафик) и использовать для них один и тот же сертификат. Это не обязательно. Вполне можно (и нужно) генерировать независимый сертификат или даже свою CA для каждого из openvpn серверов.
Теперь сгенерируем новую CA и необходимые сертификаты.
Изучите папку /opt/vpn/rsa/keys. Теперь там есть несколько пар ключ+сертификат.
ca.
server.
client.
Клиенту нужно отдать только ca.crt, client.crt и client.key, остальные файлы должны оставаться только на сервере.
Пора писать конфигурационный файл для сервера. Положите его в /etc/openvpn/00-standard.conf
Попробуйте запустить openVPN
Если не получилось — у вас баг: bugs.debian.org/cgi-bin/bugreport.cgi?bug=767836#43 Поправьте согласно инструкции и добейтесь успешного запуска сервера.
ОК, VPN работает. Самое время подключиться к нему. Для этого на клиенте напишем конфиг-файл:
Теперь попробуйте подключиться
После появления надписи «Initialization Sequence Completed» вы подключены и должны успешно пинговать 10.8.1.1. Интернет пропадет, это нормально.
Настройка интернета
Допустим, мы не хотим использовать TOR, а просто хотим себе не русский внешний IP. В этом случае при помощи вот этого скрипта:
вы достигнете желаемого. Перепишите это в /etc/rc.local.
Настройка TOR
Если вы прочитали и выполнили предыдущую часть — не забудьте очистить iptables
Теперь допустим, что вы таки хотите VPN через TOR (и предыдущий пункт не выполняли). Тогда:
допишите в конец /etc/tor/torrc следующее:
также изменим наш конфиг-файл сервера /etc/openvpn/00-standard.conf. Измените DNS с гугловского на локальный. Не забудьте перезапустить openvpn.
Наконец, следующая конструкция на bash перенаправит весь входящий трафик vpn через tor
Кстати, запомните эту конструкцию. Это универсальный способ перенаправить весь трафик с заданной сетевой карты через прозрачный прокси. I2P будем добавлять точно так же.
Готово. Подключитесь к VPN. Убедитесь, что у Вас TOR-овский IP-шник. Зайдите на какой-нибудь .onion сайт, чтобы проверить: dns тоже работает.
Настройка I2P
С I2P сложности. У них нет собственного DNS сервера, так что придется делать свой.
Откройте /etc/unbound/unbound.conf и допишите в конец:
После этого любой (!) домен будет раскрываться в заведомо несуществующий IP адрес 10.191.0.1. Осталось «ловить» такой трафик и перенаправлять на localhost:8118 — именно тут слушает I2P.
Кстати говоря, пока что не слушает. Выполните
и выставьте флаг, чтобы стартовал при загрузке.
Остановите tor. Запустите unbound.
Теперь настроим privoxy в связке в I2P. Допишите в конец /etc/privoxy/config
и рестартаните privoxy
Точно так же, как и в случае с TOR, смените DNS на локальный в конфигурации vpn-сервера:
Если вы уже пробовали редиректить TOR — не забудьте почистить iptables:
Осталось выполнить переадресацию:
Знакомо, правда? Единственное отличие — номер порта прокси.
Подключитесь к VPN. Вы в I2P. Откройте epsilon.i2p, убедитесь, что сеть работает.
Что дальше?
Дальше Вам пора сделать так, чтобы они не конфликтовали. Вместо одного сервера /etc/openvpn/00-standard сделать три: 00-standard для обычного трафика, 01-tor для tor-а, и 02-i2p для i2p. Назначьте им разные подсети (например, 10.8.2.* для tor и 10.8.3.* для i2p). После этого tor и unbound перестанут конфликтовать и вы сможете подключаться к любой из трех одновременно работающих сетей.
Кроме того, сейчас клиент не проверяет сертификат сервера. Это можно поправить.
А еще можно запилить виртуалку, для которой выкатить tun0, трафик которого идет через TOR, после чего виртуалка не будет знать даже про VPN. А в хосте этой виртуалки прописать роутинг так, чтобы без VPN не подключалось вообще.
А еще надо лимит скорости в I2P поставить. И логи у VPN не ротируются. И веб-морды нет.
А еще… а еще я все это обязательно опишу — в других статьях. Засим — спасибо за внимание!
Источник