Нужно больше TOR!

TOR - the Onion Router

Вроде бы с настройкой tor/privoxy разобрались.

Теперь будем гнать весь траффик принудительно через данную связку. Настройка на Linux, в деле iptables и shell.

Зачем ? Чтобы уже об этом не думать.

Предположим, мы успешно установили tor и privoxy из предыдущей заметки. Теперь чтобы не думать о включении/выключении прокси, мы будем гонять весь траффик через tor или privoxy/tor.

Итак, для начала добавим записи в /etc/tor/torrc:

VirtualAddrNetworkIPv4 10.192.0.0/10 AutomapHostsOnResolve 1 TransPort 9040 DNSPort 53

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

Теперь мы будем писать скрипт, который настроит iptables так, чтобы опять-таки весь траффик будет ходить через TOR.

#!/bin/sh # Тут список подсетей, в которых TOR использовать НЕ надо. Сюда можно добавить собственный VPN NON_TOR="192.168.1.0/24" # добавляем новые подсети через пробел. # TOR UID TOR_UID="115" #в Debian/Ubuntu создается собственный пользователь для tor # Tor's TransPort TRANS_PORT="9040" iptables -F iptables -t nat -F # эта и предыдущая строка чистить iptables #внимание! следующая строка принудительно гоняет весь http-траффик через privoxy. её можно закомментировать, например, если рекламорез не нужен. iptables -t nat -A OUTPUT -p tcp --dport 80 -j REDIRECT --to-port 8118 #остальное заворачивает траффик и dns-запросы на TOR, за исключением тех подсетей, которые указаны в переменной non-tor. iptables -t nat -A OUTPUT -m owner --uid-owner $TOR_UID -j RETURN iptables -t nat -A OUTPUT -p udp --dport 53 -j REDIRECT --to-ports 53 for NET in $NON_TOR 127.0.0.0/9 127.128.0.0/10; do iptables -t nat -A OUTPUT -d $NET -j RETURN done iptables -t nat -A OUTPUT -p tcp --syn -j REDIRECT --to-ports $TRANS_PORT iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT for NET in $NON_TOR 127.0.0.0/8; do iptables -A OUTPUT -d $NET -j ACCEPT done iptables -A OUTPUT -m owner --uid-owner $TOR_UID -j ACCEPT iptables -A OUTPUT -j REJECT

Сохранем скрипт под именем prxvy.sh в /usr/local/bin и не забываем сделать файл исполняемым. После его запуска (от root) траффик будет идти уже через TOR. Для отключения нужно выполнить следующие команды:

iptables -F iptables -t nat -F

Их тоже можно записать в скрипт, ну или расширить текущий, чтобы он принмал параметры on и off.

Ну и дополнение для самых серьезных параноиков - по ссылке дополнительные настройки iptables, которые предотвращают утечку пакетов. Вроде всё. В другой раз поговорим о настройке wireless middle box - точки доступа, которая "пускает в интернет" исключительно через tor, и ей глубоко все равно, на какой ОС вы работаете, подойдет даже китайский телефон с WiFi.

На корм коту

Магазин открыт!

ещё