welcome: please sign in

No pages like "CA/vbox-torification"!

Clear message
location: CA / vbox-torification

Торификация виртуальной машины

Чтобы торифицировать виртуалку, необходимо для начала выбрать подсеть, в которой будет жить гейтвей и виртуалки. В нашем случае это будет 10.0.0.0/24. Гейтвей будет 10.0.0.1. В /etc/torrc добавляем следующее:

AutomapHostsOnResolve 1
TransPort 10.0.0.1:9040
DNSPort 10.0.0.1:53

Для примера рассмотрим конфигурирование виртуалок на основе VirtualBox. В других системах виртуализации будут небольшие различия. В /etc/vbox/networks.conf разрешаем VirtualBox создание виртуальной сети в нашем диапазоне:

* 10.0.0.0/24

После чего VirtualBox следует перезапустить. В гуйне VirtualBox идём в File -> Tools -> Network Manager, где добавляем новую Host-only Network с нашим диапазоном, гейтвеем и DHCP-сервером раздающим адреса начиная с 2; интерфейс предложит название сети - vboxnet0 - его и оставим:

Эту Host-only Network выбираем как бекенд единственного сетевого интерфейса в настройках конкретной виртуалки.

Далее необходимо завернуть весь трафик приходящий в хост-систему по интерфейсу vboxnet0 в Tor (а точнее, все доступы к DNS и весь TCP-трафик) и запретить всё, что завернуть мы не можем. Делаем это посредством iptables: Заворот:

iptables -t nat -I POSTROUTING -s 10.0.0.0/24 -j MASQUERADE
iptables -t nat -A PREROUTING -i vboxnet0 -p udp --dport 53 -j REDIRECT --to-ports 53
iptables -t nat -A PREROUTING -i vboxnet0 -p tcp --syn -j REDIRECT --to-ports 9040

Фаервол:

iptables -A INPUT -i vboxnet0 -p udp --dport 53 -j ACCEPT
iptables -A INPUT -i vboxnet0 -p tcp -j ACCEPT
iptables -A INPUT -i vboxnet0 -j DROP
iptables -A FORWARD -i vboxnet0 -j DROP

Конфигурировать IPv6 лень, поэтому просто запретим его:

ip6tables -t raw -A PREROUTING -i vboxnet0 -j DROP

Всё это добро исполняем, а так же пихаем куда там в вашей системе модно для автозапуска; в Debian это /etc/rc.local

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

curl ifconfig.me

и сравниваем полученный IP-адрес с хостовым.