Весь трафик в Tor!
http://t.me/Torchik_RuЭто восстание из могилы очень древней статьи для Linux.
Порой, бывают ситуации когда нам нужна безоговорочная анонимность постоянно. Винда тут никак не вяжется. Значит идем на строну света и ставим чистый Debian(лучше конечно Arch, но я упростил статью, чтоб все могли сделать).
Установка и настройка TOR
Для настройки используем конфиг /etc/tor/torrc. Открываем/создаём и пишем туда такое:
VirtualAddrNetworkIPv4 10.192.0.0/10
AutomapHostsOnResolve 1
TransPort 9040
DNSPort 53
# для жителей СНГ рекомендую исключить Exit-ноды следующих стран
ExcludeExitNodes {RU},{UA},{BY}
Настройка DNS
Использовать DNS от Google или любые другие - плохая идея. Они Вас сразу деанонимизируют. Будем юзать свой локальный DNS средствами Tor. Для этого выполняем такую команду:
удалим, т.к. иногда это сим-линк
Поскольку всякие NetworkManager очень любят перезаписывать этот файл - лучше его вообще залочить на запись:
(для анлока юзайте -i вместо +i)
Настройка Iptables и проверка работоспособности
Создаём скрипт
#!/bin/sh
### установка переменных
#назначения, которые не должны идти через тор
_non_tor="192.168.1.0/24 192.168.0.0/24"
#UID с которым стартует Тор
_tor_uid="XYZ" # XYZ меняем на UID пользователя TOR (!)
#Траспортировочный порт Тора
_trans_port="9040"
### чистим iptables
iptables -F
iptables -t nat -F
### устанавливаем iptables *nat
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
#Позволяем доступ в обход Тора в $_non_tor
for _clearnet in $_non_tor 127.0.0.0/9 127.128.0.0/10; do
iptables -t nat -A OUTPUT -d $_clearnet -j RETURN
done
#редиректим все остальное в Тор
iptables -t nat -A OUTPUT -p tcp --syn -j REDIRECT --to-ports $_trans_port
### устанавлиеваем iptables-фильтр
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
#Позволяем клирнет доступ хостам $_non_tor
for _clearnet in $_non_tor 127.0.0.0/8; do
iptables -A OUTPUT -d $_clearnet -j ACCEPT
done
#Позволяем только вывод Тора
iptables -A OUTPUT -m owner --uid-owner $_tor_uid -j ACCEPT
iptables -A OUTPUT -j REJECT
Переменную_tor_uid меняем на uid пользователя под которым работает tor. Определить это значение можно так:
Первая цифра, то есть 135 - uid, меняем в скрипте _tor_uid="135"
Запуск:
Проверяем работу. Включаем Tor:
Пробуем зайти на https://check.torproject.org/. Должны увидеть надпись "Congratulations. This browser is configured to use Tor".
Теперь останавливаем TOR:
И повторно пробуем зайти на сайт, либо запускаем любую другую программу (например, IM-клиент), интернет не должен работать, т.к. выключен TOR. Если всё верно, то прописываем правила iptables в автозагрузку:
Открываем файл /etc/rc.local и перед exit 0 вставляем:
Добавляем запуск TOR в автозагрузку:
Чтобы отключить перенаправление надо написать такой скриптик:
#!/bin/sh
echo "Stopping firewall and allowing everyone..."
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
Советую все проводить на виртуалке, чтобы не напартачить.