User Tools

Site Tools


notes:common:tor

tor

Создаём виртуальную сетку с шлюзом через tor

  • Создаём виртуальную сеть в режиме NAT
  • Отключаем DHCP средствами среды виртуализации
  • Поднимаем чистую виртуалку с Debian на борту
  • Настраиваем статические ip-адреса, в качестве шлюза прописываем ip-адрес шлюза виртуальной сети, файл /etc/network/interfaces
allow-hotplug eth0
iface eth0 inet static
  address 192.168.227.3
  netmask 255.255.255.0
  gateway 192.168.227.2 # ip шлюза вирутальной сети
  • Устанавливаем пакеты (помимо любиымх zsh, vim) — tor, isc-dhcp-server, iptables-persistent
  • Настраиваем tor, в конец файла /etc/tor/torrc дописываем строки:
VirtualAddrNetwork 10.192.0.0/10
AutomapHostsOnResolve 1
TransPort 0.0.0.0:9040
DNSPort 0.0.0.0:53
StrictExitNodes 1
#ExitNodes {us}
ExcludeNodes {pl},{no}
  • Настраиваем iptables, в файл /etc/iptables/rules.v4
# iptables rules
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A OUTPUT -p icmp -j REJECT --reject-with icmp-port-unreachable
COMMIT

*nat
:PREROUTING ACCEPT [0:0]
:INPUT ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]

-A PREROUTING -p udp -m iprange --src-range 192.168.227.4-192.168.227.254 --dport 53 -j REDIRECT --to-port 53
-A PREROUTING -p tcp -m iprange --src-range 192.168.227.4-192.168.227.254 -j REDIRECT --to-ports 9040
-A PREROUTING -p udp -m iprange --src-range 192.168.227.4-192.168.227.254 -j REDIRECT --to-ports 9040

# необходимый uid можно выяснить так: getent passwd | grep Debian-tor
-A OUTPUT -d 10.192.0.0/10 -p tcp -j REDIRECT --to-ports 9040
-A OUTPUT -p udp -m owner ! --uid-owner 121 -m udp ! --dport 53 -j REDIRECT --to-ports 9040
-A OUTPUT -p tcp -m owner ! --uid-owner 121 -j REDIRECT --to-ports 9040

COMMIT
  • Настраиваем dhcp сервер — /etc/dhcp/dhcpd.conf
# comment default option domain-names, domain-name-servers
subnet 192.168.227.0 netmask 255.255.255.0 {
  range 192.168.227.5 192.168.227.200;
  option routers 192.168.227.3;
  option domain-name-servers 192.168.227.3;
}
  • Усё, все виртуалки делаются в пределах данной виртуальной сети и получают настройки от нашего DHCP сервера.
notes/common/tor.txt · Last modified: by 127.0.0.1