Как маршрутизировать весь интернет-трафик через Tor (луковый роутер)?

14

Не могли бы вы объяснить, как маршрутизировать весь интернет-трафик через тор? Я использую Ubuntu, я действительно не знаю, как это сделать. На самом деле я использую Tor только для твиттера, и я боюсь утечки DNS. Поэтому мне нужно все маршрутизировать через тор.

user178493
источник
Возможный дубликат Как установить Tor?
Дэвид Фёрстер

Ответы:

15

Вы ищете это: TransparentProxy .

Местное перенаправление через Tor

Добавьте к своему torrc:

VirtualAddrNetwork 10.192.0.0/10
AutomapHostsOnResolve 1
TransPort 9040
DNSPort 53

Таким образом вы настраиваете DNS-сервер на Ubuntu через порт 53 и Прозрачный прокси: 127.0.0.1:9040.

Затем добавьте в ваш /etc/resolv.conf

nameserver 127.0.0.1

Таким образом, вы предотвращаете любую утечку DNS из вашей системы.

Поэтому настройте ваш брандмауэр так, чтобы любое соединение проходило через TransPort, кроме пользователя Tor:

#!/bin/sh

# destinations you don't want routed through Tor
NON_TOR="192.168.1.0/24 192.168.0.0/24"

# the UID Tor runs as
TOR_UID="109"

# Tor's TransPort
TRANS_PORT="9040"

iptables -F
iptables -t nat -F

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

Продолжайте читать официальную вики, есть своего рода атака на этот метод и решение: IsolatingProxy .

невинно мир
источник