18 October 2012

(Ubuntu) 匿名化プロキシ Tor を利用する

最近、匿名化プロキシやボットネットを利用して警察の操作を撹乱した事件 『<PC遠隔操作>真犯人検挙めど立たず 捜査不適切の声も』 がよく報道されている。

匿名化プロキシのTorを用いたという報道がチラッとされていたが、素人でも簡単に使えるのでUbuntu Linuxでの使い方をまとめておく。

インストールするのは、次の3つのパッケージ。Synapticかapt-getでインストールすればよい。


# apt-get install tor
# apt-get install polipo
# apt-get install vidalia

Firefoxから直接Torに接続するとタイムアウト等が発生するバグがかつてあったため、Polipo(一般的なプロキシ)を一旦中継してTorに繋ぐという方法が取られていたという経緯から、いまでもPolipoでワンクッションとっている例が多い。今回も、これを使っておく。
Vidaliaは、TorのGUIフロントエンドなので、必要なければインストールしなくてもよい。

■ クライアントPC内でのイメージ

Firefoxなどのクライアントソフト → Polipo (127.0.0.1:8123) → Tor (127.0.0.1:9050) → Internet

■ Torの設定

Torのソケットファイル /var/run/tor/ の所有者:グループがdebian-tor:debian-torであることを確認しておく。


# ls -la /var/run/ | grep tor
drwxr-s--- 2 debian-tor debian-tor 60 10月 18 22:57 tor

Torを使うユーザが、Torグループに属しているようにする。


# cat /etc/group

debian-tor:x:129:user1,user2

torrc の内容を念の為確認しておく。下記の設定以外は、全てコメントアウトされているはず…

/etc/tor/torrc

SocksPort 9050 # what port to open for local application connections
SocksListenAddress 127.0.0.1 # accept connections only from localhost

■ Polipoの設定

/etc/polipo/config

# Uncomment this if you want to use a parent SOCKS proxy:
socksParentProxy = "localhost:9050"

# Uncomment this if you want to disable the on-disk cache:
diskCacheRoot = ""

上流のTorのアドレスとポート番号の指定、キャッシュの無効化の設定をしている。

■ コマンドラインのみでの利用法


# /etc/init.d/tor start
# /etc/init.d/polipo start

Firefoxのプロキシ設定を、「 localhost:3128 」とすれば、匿名プロキシTorを経由してウエブページを閲覧することが出来る。

■ Vidaliaを利用する場合

20121018-vidalia-dlg.jpg
Vidaliaのメインダイアログ

インストール直後の状態では、このダイアログのStart/StopボタンではTorをコントロールできない。ダイアログの「リレーのセットアップ」を押して設定ダイアログを出す。


20121018-vidalia-config1.jpg
設定ダイアログで、Polipoの自動起動を設定する


20121018-vidalia-config2.jpg
設定ダイアログで、TorのコントロールをSocketからtcp connectionに変更する


■ 参考資料
Tor - Community Ubuntu Documentation
Why do we need Polipo or Privoxy with Tor? Which is better?