Eida.cz - Vícero nezávislých Tor smyček

Vícero nezávislých Tor smyček

Eida

Při nejlepší vůli a čistém svědomí by neměl být nejmenší důvod rozjíždět na jednom stroji víc než jeden kanál připojený do Toru. Alespoň tedy pro soukromé a nedivotvorné účely. Přesto se ale najdou i situace, kdy by se mít více otevřených nezávislých smyček celkem hodilo.

V takových případech nepůjde o účelové chainování nebo pokusy zajistit lepší anonymitu provozu, ale spíš poskytnout mnohem volnější prostředí pro časově náročné operace. Typické Use-case - masivně paralelní dolování dat z ohromných webových kup sena pomocí wgetového pavouka/crawleru, která nejsou jinak dostupná přes nějaké to API a/nebo právě API a konfigurace cílových serverů znemožňuje přehazování sena vidlemi - procházet data co nejrychleji v neomezeném množství. 

Tor prakticky není potřeba ve výchozím stavu nijak konfigurovat, pro rychlá použití poskytuje wrapper torify pro torsocks, což prakticky nastaví dále zmíněnému programu SOCKS proxy skrzevá síť Tor, protože tor proces sám o sobě proxy není. Potíží ale může být, že se zatorovaná identita nemění dostatečně rychle, aby nabízela jen v jednom jediném kanálu dostatečnou entropii simulující chování obyčejné celosvětové sítě. V ten okamžik přichází na řadu snaha vypustit víc nezávislých tor procesů, každý pěkně na svém portu.

Konfigurace, alespoň v Debianu, leží v /etc/tor/torrc. To je nastavení hlavního démona. Aby jich mohlo běžet víc, je potřeba každému zvlášť vnutit samostatný konfigurační soubor, odvozený třeba kopií od toho hlavního, a změnit v něm naslouchací port a hlavně DataDirectory, kam se ukládají všechny klíče a podobně věci pro běh.

torrc.txt 163 bajtů
# torrc.1
SocksPort 9054
DataDirectory /var/lib/tor/1

# torrc.2
SocksPort 9055
DataDirectory /var/lib/tor/2

# torrc.3
SocksPort 9056
DataDirectory /var/lib/tor/3
Konfigurace torrc

Pokud to je hotové, je možné nové jednotlivé kanály vypustit do světa. Tor může a nemusí běžet jako root, ovšem pokud neběží, je potřeba taky konfiguračním souborům nastavit patřičná oprávění - 0644.

tor_run.txt 84 bajtů
$ tor -f /etc/tor/torrc.1 &
$ tor -f /etc/tor/torrc.2 &
$ tor -f /etc/tor/torrc.3 &
Spuštění toru

V tuhle chvíli běží na uvedených portech samostatné instance, ale není možné se k nim původním úplně snadným způsobem, tedy prostým použitím torify, dostat. Uvažme, že jednotlivé instance pro wget jsou pro přehlednost odpalovány shellovými skripty, kde jim je možné pohodlně měnit běhové prostředí. Běhové prostředí bude důležité pro nastavení torsocks, pro nějž je torify, jak už bylo řečeno, pouhým wrapperem. 

Tady je to poněkdu zapeklitější, protože konfigurace torsocks je, opět alespoň v Debianu, v jediném sobouru přímo v /etc, což není úplně hezké pro přehlednost. Ale není nic snazšího, než si prostřě vytvořit nový adresář /etc/torsocks a konfigurace si do něj nakopírovat.

init_torsocks.txt 209 bajtů
# cd /etc
# mkdir torsocks
# cp torsocks.conf torsocks/torsocks.1.conf
# cp torsocks.conf torsocks/torsocks.2.conf
# cp torsocks.conf torsocks/torsocks.3.conf
# chmod 0755 torsocks
# chmod 0644 torsocks/*.conf
Příprava konfigurace torsocks

V těchto nových souborech stačí provést jen odpovídající změny dříve nastavených portů.

# torsocks.1.conf
server_port = 9054

# torsocks.2.conf
server_port = 9055

# torsocks.3.conf
server_port = 9056
Konfigurace torsocks

Samotné odpálení potřebuje specifikovat cestu ke konfiguraci v TORSOCKS_CONF_FILE. Ta se přihodí každému odpalovači wgetu a rázem se může malovat.

wget_tor.txt 87 bajtů
#!/bin/bash
export TORSOCKS_CONF_FILE=/etc/torsocks/torsocks.1.conf
torsocks wget ... &
Konečné použití

Po dokončení operace, která může zabrat klidně i několik týdnů, se tor procesy mohou prostě nechat takhle spuštěny pro nějaké další budoucí použití, nebo je možné je jednoduše sestřelit. Záleží na situaci. Pomocí vytvořených konfigurací je už ale jednoduché připravit stroj na podobné použití v budoucnu znovu velmi rychle.

Nutno dodat, že spouštění více instancí a vícenásobné připojení do Toru může být potenciálně nebezpečné a ve finále může poskytnout horší bezpečnostní vlastnosti, proto není úplně vhodné tento postup využívat například pro dynamické proxy pro běžné prohlížení webu a podobné věci.

Tento článek přečetlo již 323 čtenářů (0 dnes).

Komentáře

Nový komentář