Tor socks proxy linux

Tor socks proxy linux

The super easy way to setup a Tor SOCKS5 proxy server inside a Docker container without relay/exit feature.

Setup the proxy server at the first time

  • With parameter —restart=always the container will always start on daemon startup, which means it’ll automatically start after system reboot.
  • Use 127.0.0.1 to limit the connections from localhost, do not change it unless you know you’re going to expose it to a local network or to the Internet.
  • Change to first 9150 to any valid and free port you want, please note that port 9050 / 9150 may already taken if you are also running other Tor client, like TorBrowser.
  • Do not touch the second 9150 as it’s the port inside the docker container unless you’re going to change the port in Dockerfile.

If you want to expose Tor’s DNS port, also add -p 127.0.0.1:53:8853/udp in the command, see DNS over Tor for more details.

If you already setup the instance before (not the first time) but it’s in stopped state, you can just start it instead of creating a new one:

Make sure it’s running, it’ll take a short time to bootstrap

Configure your client to use it, target on 127.0.0.1 port 9150 (Or the other port you setup in step 1)

Take curl as an example, if you’d like to checkout what’s your IP address via Tor network, using one of the following IP checking services:

Take ssh and nc as an example, connect to a host via Tor:

Tor Project also have an API if you want to be sure if you’on Tor network: https://check.torproject.org/api/ip, the result would look like:

After using it, you can turn it off

Tor changes circuit automatically every 10 minutes by default, which usually bring you the new IP address, it’s affected by MaxCircuitDirtiness config, you can override it with your own torrc , or edit the config file and restart the container. See the official manual for more details.

To manually renew the IP that Tor gives you, simply restart your docker container to open a new circuit:

Just note that all the connections will be terminated and need to be reestablished.

If you publish the DNS port in the first step of Usage section, you can query DNS request over Tor

The DNSPort here is set to 8853 by default, but not the common 53 , because non-privileged port is preferred, and then libcap / CAP_NET_BIND_SERVICE capability won’t be needed, which is more Alpine Linux(Small. Simple. Secure.)

You can still expose the port to 53 for outside the container by the parameter -p 127.0.0.1:53:8853/udp . nslookup also supports to specify the port to 8853 by -port=8853 , e.g. nslookup -port=8853 ipinfo.tw 127.0.0.1

Читайте также:  Kali linux virtualbox windows

This port only handles A, AAAA, and PTR requests, see details on official manual

Set the DNS server to 127.0.0.1 (Or another IP you set), use macvk/dnsleaktest or go to one of the following DNS leaking test websites to verify the result:

For the Tor project sustainability, I strongly encourage you to help setup Tor bridge/exit nodes(script) and donate money to the Tor project (Not this proxy project) when you have the ability/capacity!

About

🐳 Tiny Docker( 🤏 10MB) image as 🧅 Tor SOCKS5 proxy 🛡

Источник

Заметки Дебианщика

debian, linux, php, mongo, oracle, bash

Установка прокси сервера Tor на Debian или Ubuntu

Итак, у нас есть тестовые Debian Buster, командная строка, права ROOT и острое желание установить и настроить Tor-прокси, но сделать это так чтобы не нужно было качать Tor-браузер.

В моём случае мне потребовалось восстановить доступ к Docker Hub, но сделать это так чтобы было максимально дёшево и быстро, для начала хочу сказать что не советую использовать Tor как среду передачи своих персональных данных, например для авторизации в социальных сетях из под своей личной учётной записи и так далее. Потому что сервер исходящего трафика через который вы будет общаться с интернетом может иметь специфичные настройки, которые упрощают для злоумышленника возможность украсть любые данные которые вы через этот оконечный сервер передаёте.

И так, с «почему нет» закончили, теперь давайте к «почему да», если приложение, которое вы хотите использовать через Tor, имеет высокую криптографическую стойкость (например какой-нибудь VPN туннель или «хитрый» мессенджер (Паша, верни стену!) с кучей слоёв шифрования), то тогда пожалуй опасаться вам нечего, так же Tor хорош тогда когда совершенно не важно украдут ли ваш трафик или нет, так как этот трафик получен с какого-нибудь публичного ресурса и поэтому и так для всех доступен, например Docker Hub или NPMjs.

Но довольно лирики, давайте делать вещи, для начала авторизуемся из под учётной записи root:

Затем добавим новый репозиторий в список источников пакетов:

Как видно мы создаём новый файл torproject.list в директории /etc/apt/sources.list.d содержащий в себе всего лишь две строки, в первой строке указан путь к репозиторию со скомпилированными версиями программ, во втором к исходным кодам этих программ (полезно для отладки или ещё каких других нужд).

Если нужны пакеты не для buster, то вы можете указать любой другой дистрибутив Debian или Ubuntu, например stretch или xenital, потому что deb.torproject.org — это гибридный репозиторий и подходит для любой debian-based операционки.

Далее обновим списки пакетов, для этого выполним:

Скорее всего мы увидим ошибку вида:

Чтобы её исправить добавим указанный в ошибке NO_PUBKEY 74A941BA219EC810 в список ключей APT.

Следующее обновление должно пройти без ошибок:

Теперь установим Tor-прокси:

После того как установка пакетов будет завершена вы можете подключиться к вашем серверу Tor из браузера или какой другой программы, по умолчанию Tor работает в режиме SOCKS5 прокси на петлевом интерфейсе localhost, порт номер 9050.

А на этом всё, напомню что в Discord есть сообщество программистов, в котором я принимаю активное участие, поэтому если у Вас возникнут вопросы, обращайтесь, не стесняйтесь, ну или в Twitter @EvilFreelancer например.

Источник

HackWare.ru

Этичный хакинг и тестирование на проникновение, информационная безопасность

Tor: от азов до продвинутого уровня (ч. 8): Служба Tor в Linux

Оглавление

Как установить Tor в Linux

Пакет Tor доступен в большинстве дистрибутивов Linux и может быть установлен из стандартных репозиториев.

Читайте также:  Для windows 64 bit разница

Установка Tor в Debian, Linux Mint, Ubuntu, Kali Linux и их производные:

Установка Tor в Arch Linux, BlackArch и их производные:

Для запуска Tor не требуется какая-либо настройка — у программы уже установлены значения по умолчанию для опций. Тем не менее вы можете поменять множество параметров работы Tor с помощью опций командной строки и директив в конфигурационном файле.

Как запустить службу Tor

Для запуска используйте команду:

Для проверки статуса:

Для добавления службы Tor в автозагрузку, чтобы она запускалась при каждом включении компьютера:

Для остановки службы Tor:

Для удаления из автозарузки:

Как запустить службу tor без перевода в фон

Показанные выше способы запуска tor превращают его в демона — то есть процесс, который работает в фоне и отсоединён от консоли.

Если вам нужно, чтобы служба Tor не уходила в фон, например, для отладки и чтобы её можно было бы закрыть комбинацией клавиш CTRL+c, то запустите службу Tor следующим образом в Debian и производных:

В Arch Linux, BlackArch и производных запуск выполняется так:

На самом деле, программе tor необязательны привилегии суперпользователя. Но для работы службы нужны файлы и директории (/var/lib/tor) права на которые закрыты для всех пользователей (даже для root) и которые принадлежат пользователю debian-tor или tor (имя пользователя зависит от дистрибутива). По этой причине используется sudo с опцией -u, после которой идёт имя пользователя, от имени которого выполняется команда.

Пример запуска tor без демонизации:

Строки, содержащие слово Bootstrapped показывают прогресс подключения к сети Tor. Когда всё готово для полноценного обмена информации с Интернетом через сеть Tor, будет выведено:

Файлы настроек Tor

Главным конфигурационным файлом службы Tor является /etc/tor/torrc. Этот файл содержит только комментарии, то есть по умолчанию не устанавливает никакие настройки. У службы Tor предусмотрены значения по умолчанию для всех настроек. По этой причине, файл не является обязательным — если он отсутствует, служба Tor всё равно запустится.

Если файл /etc/tor/torrc не найден, то будет сделана попытка найти файл $HOME/.torrc. Если такого файла тоже нет, то Tor просто продолжит загрузку.

Имеется ещё один конфигурационный файл с настройками по умолчанию: /etc/tor/torrc-defaults. Задумка в том, что он должен содержать дефолтные опции, которые могут быть перезаписаны файлами /etc/tor/torrc или $HOME/.torrc. Но на практике этот файл даже не поставляется с пакетом Tor.

Далее рассмотрим несколько опций связанных с конфигурационными файлами. Эти опции можно указать при запуске службы файлом tor.

—verify-config

Проверка конфигурационного файла Tor на правильность.

Запуск зависит от имени пользователя tor в системе:

-f ФАЙЛ

Указывает новый конфигурационный файл, содержащий дальнейшие конфигурационные опции Tor. Если указать (тире), то опции будут считываться из стандартного ввода. По умолчанию /etc/tor/torrc или, если этот файл не найден, тогда $HOME/.torrc).

—allow-missing-torrc

Не требовать, чтобы конфигурационный файл, указанный опцией -f, существовал, если можно получить доступ к дефолтному torrc).

—defaults-torrc ФАЙЛ

Указывает файл, в котором искать дефолтные значения для опций Tor. Содержимое этого файла перезаписываются обычными конфигурационными файлами и опциями из командной строки (по умолчанию /etc/tor/torrc-defaults).

—ignore-missing-torrc

Указывает, что Tor должен обрабатывать отсутствующий файл torrc так, как если бы он был пустым. Обычно Tor делает это из-за отсутствия дефолтных файлов torrc, но не для файлов, указанных в командной строке.

Настройка журналов Tor

Настройка логов Tor выполняется в конфигурационном файле с помощью директивы Log. Эта директива состоит из трёх компонентов:

Читайте также:  Резервное копирование hyper v средствами windows

УРОВЕНЬ_СЕРЬЁЗНОСТИ может быть: debug, info, notice, warn и err. Допустимо указывать диапазоны вида:

В качестве ИСТОЧНИК_ВЫВОДА могут быть:

  • stderr — стандартный вывод ошибок
  • stdout — стандартный вывод
  • syslog — системный жунрал (только для Unix)
  • file ИМЯ_ФАЙЛА — сохранение журнала в файл

Например, чтобы выводить сообщения уровня notice в стандартный вывод, нужно записать так:

Для вывода сообщений от уровня info до уровня err в файл tor.log нужно записать в конфигурационный файл следующую директиву:

Директиву Log можно указывать несколько раз.

Как запустить службу Tor с опциями

У Tor много опций, которые имеют значения по умолчанию. Эти значения могут быть изменены в конфигурационных файлах Tor о которых рассказано в следующем разделе.

При этом можно запустит службу в командной строке с указанием опций, используемых в конфигурационном файле, для этого используйте команду вида:

Поскольку в большинстве случаев нужно запускать службу от имени пользователя debian-tor или tor, то команды должны быть примерно такими (для Debian и производных):

В Arch Linux, BlackArch и производных запуск выполняется так:

Пример запуска службы Tor с опциями для замены их значений из конфигурационного файла:

Если ЗНАЧЕНИЕ для ОПЦИИ состоит из более чем одного слова, либо включает в себя специальные символы, то его необходимо поместить в кавычки, например:

О правилах переписывания или добавления значений опций смотрите в следующем разделе.

Как просмотреть логи Tor

Просмотреть логи Tor можно различными способами, один из вариантов:

Обратите внимание, что если у вас Debian или проихводный от этого дистрибутива, то в предыдущей и следующей нужно вместо tor указывать пользователя debian-tor, например:

Например, для вывода последних 100 записей:

Также можно просмотреть события Tor с помощью:

Как пользоваться службой Tor в Linux

После запуска службы Tor на вашем компьютере становится доступным прокси SOCKS. Если вы не знаете, что это такое, то рекомендуется ознакомиться со статьёй «Всё о прокси: виды, как пользоваться, как проверить качество прокси».

Данный прокси доступен на IP адресе и порте localhost:9050.

О том, как настроить прокси в Linux смотрите здесь.

Помните, что некоторые программы имеют свои собственные настройки прокси и могут игнорировать общесистемные установки:

Помните, что в качестве IP адреса нужно указывать localhost, а в качестве номера порта 9050.

Многие программы умеют работать с SOCKS4 и SOCKS5 напрямую:

Сравните с выводом:

Если программа поддерживает только HTTP/HTTPS прокси, но не умеет работать с SOCKS, то в качестве медиатора используйте программу Privoxy или ProxyChains-NG.

Решение проблем с Tor

Ошибка «Could not bind to 127.0.0.1:9050: Address already in use. Is Tor already running?»

Если вы столкнулись с ошибками «Could not bind to …: Address already in use.», например:

То это означает, что порты, которые пытается прослушивать Tor, уже заняты другим процессом, возможно, другим запущенным экземпляром Tor. Для исправления этой ситуации, остановите другой экземпляр службы tor или найдите программу, которая занимает этот порт, для этого смотрите 4 способа узнать, какие порты прослушиваются в Linux.

Ошибка «Directory /var/lib/tor cannot be read: Permission denied»

Возникает в том случае, когда у процесса tor недостаточно прав для доступа к папке /var/lib/tor. Нужно запустить процесс tor от имени соответствующего пользователя debian-tor или tor следующим образом:

Ошибка «/var/lib/tor is not owned by this user»

Если возникают такие ошибки:

То это означает, что вы запускаете Tor от пользователя root, а нужно запускать от имени пользователя debian-tor или tor следующим образом:

Источник

Оцените статью