torのリレーnodeセットアップ

Network & Infrastructure

概要

  • Tor browser 6.0がリリースされましたね。
    • Torはひと言で言えば、Torは「経路が暗号化された多段Socks Proxy」但し、最後のエンドポイントから目的地への通信は平文。
    • Open proxyは悪意のあるproxyの場合、ダダ漏れだし、スピードも遅い。それに対し、Torのnodeは速いし経路上は暗号化されている。
    • 概念図は以下のようになります。
      tor description
  • Torを使った不正アクセスをプロテクションするために軽く実験してみました。
  • 専用ブラウザでTorネットワーク経由で確認君を見るとこんな感じ。
    tor browser

セットアップ

公式サイトのセットアップ手順はDebianが前提で書かれています。
このページではMac OS Xでのセットアップ方法を書きます。

% brew install tor

デフォルトの設定ファイルをダウンロードして、Relayを許可するための設定を行います。

% wget https://svn.torproject.org/svn/tor/branches/tor-0_0_9-patches/src/config/torrc.sample.in
% sudo mv torrc.sample.in /usr/local/tor/etc/torrc
% sudo vi /usr/local/tor/etc/torrc

重要な設定項目はこの辺りです。
設定ファイルに説明が丁寧に書いてあるので読めばある程度わかると思います。

Exit nodeとして使われたくないので、ExitPolicyはrejectにしてあります。Exit nodeとして動かすと、Banされたりするので、rejectしています。

Nickname matsubokkuri
ContactInfo @matsubokkuri
ORPort 9001
ORBindAddress 192.168.1.7:9001
ExitPolicy reject *:*

テンポラリーディレクトリを作成する。(作らなければエラーが出る)

% sudo mkdir -p /usr/local/tor/var/tor

サーバをスタートして、ログを確認します。

% sudo brew services start tor
% sudo tail -f /usr/local/var/log/tor.log

以下のようなメッセージが表示されて、Torネットワークのnodeから当該ポートにアクセスが可能かが確認されます。
確認がOKなら、ログに表示されます。

Jun 02 11:30:02.000 [notice] Bootstrapped 80%: Connecting to the Tor network
Jun 02 11:30:02.000 [notice] Guessed our IP address as 222.230.110.122 (source: 193.23.244.244).
Jun 02 11:30:03.000 [notice] Bootstrapped 85%: Finishing handshake with first hop
Jun 02 11:30:05.000 [notice] Bootstrapped 90%: Establishing a Tor circuit
Jun 02 11:30:07.000 [notice] Tor has successfully opened a circuit. Looks like client functionality is working.
Jun 02 11:30:07.000 [notice] Bootstrapped 100%: Done
Jun 02 11:30:07.000 [notice] Now checking whether ORPort 222.230.110.122:9001 is reachable... (this may take up to 20 minutes -- look for log messages indicating success)

Jun 02 11:39:19.000 [notice] Self-testing indicates your ORPort is reachable from the outside. Excellent. Publishing server descriptor.
Jun 02 11:39:34.000 [notice] Performing bandwidth self-test...done.

感想

  • TorのExit nodeを立ち上げたとしても、* リスクしかないから立ち上げる必要無い * ので、やめるべき。Relay nodeを立ち上げることでTorネットワークを応援するのが良いと思います。
  • Tor自体はクラッカーではない普通のユーザとして使う分には便利なネットワークです。
  • クラッカーからすればTorって便利な仕組み。クラッカーを排除する仕組みをTor自体に入れた方が良いかなーと個人的には思います。でも、そもそものTorの匿名性が損なわれるけど。難しいですね。
  • 悪意のあるexit nodeが居たら、目的地がHTTPSであっても全部漏れるだろうから、センシティブな情報はTorに流してはいけない。

追記

しばらく運用していると、以下のような感じでログに書かれている。
大体4日で200MBぐらいのトラフィックを処理している様子。

Jun 08 05:03:54.000 [notice] Heartbeat: Tor's uptime is 3 days 18:00 hours, with 3 circuits open. I've sent 136.31 MB and received 189.31 MB.
Jun 08 05:03:54.000 [notice] Circuit handshake stats since last time: 46/46 TAP, 13/13 NTor.
Jun 08 05:03:54.000 [notice] Since startup, we have initiated 0 v1 connections, 0 v2 connections, 0 v3 connections, and 1378 v4 connections; and received 237 v1 connections, 73 v2 connections, 0 v3 connections, and 4790 v4 connections.
Jun 08 11:03:54.000 [notice] Heartbeat: Tor's uptime is 4 days 0:00 hours, with 1 circuits open. I've sent 143.97 MB and received 198.43 MB.
Jun 08 11:03:54.000 [notice] Circuit handshake stats since last time: 42/42 TAP, 1/1 NTor.
Jun 08 11:03:54.000 [notice] Since startup, we have initiated 0 v1 connections, 0 v2 connections, 0 v3 connections, and 1452 v4 connections; and received 249 v1 connections, 95 v2 connections, 0 v3 connections, and 5103 v4 connections.

Tor nodeを運用していると、HULUとかNetflixにIPアドレスをbanされます。。。

コメント

  1. matsubokkuri より:

    relay nodeを運用していたら、huluからブロックされた。。。
    relay nodeの運用だけでもリスクあるんですな。

  2. matsubokkuri より:

    torの中継ノード運営はリスク高すぎ。
    https://linux.srad.jp/story/17/04/20/0625258/