企業ファイアウォールでTorをブロックする

多くのユーザーが、インストールに管理者権限を必要としない「ポータブルTorブラウザ」の利点を認識しているという事実により、考えられるすべてのケースでTorを使用する可能性を抑えることにしました。

すぐに、FreeBSD + pfの束について話すことを予約してください。





Torサービスの初期化スキームは簡単に不名誉になります。

クライアントが登録されているルートサーバーがいくつかあります。 同じクライアントは同じサーバーから同じクライアントのリストを同じサーバーからダウンロードし、このリストに従って、他のサービス情報と同様に、クライアントが通過できるかどうかの情報を受け取ります。



ルートサーバーにクライアントのリストを要求するための通常のURLは次のようになります。

http://128.31.0.34:9031/tor/status/all




サーバーが発行するファイルの内容は、およそ次のとおりです。

network-status-version 2

dir-source 128.31.0.34 128.31.0.34 9031

fingerprint FFCB46DB1339DA84674C70D7CB586434C4370441

contact 1024D/28988BF5 arma mit edu

published 2009-09-07 18:24:08

dir-options Names BadExits Versions

client-versions 0.2.0.34,0.2.0.35,0.2.1.19,0.2.2.1-alpha

server-versions 0.2.0.34,0.2.0.35,0.2.1.19,0.2.2.1-alpha

dir-signing-key

-----BEGIN RSA PUBLIC KEY-----

MIGJAoGBAMHa0ZC/jo2Q2DrwKYF/6ZbmZ27PFYG91u4gUzzmZ/VXLpZ8wNzEV3oW

nt+I61048fBiC1frT1/DZ351n2bLSk9zJbB6jyGZJn0380FPRX3+cXyXS0Gq8Ril

xkhMQf5XuNFUb8UmYPSOH4WErjvYjKvU+gfjbK/82Jo9SuHpYz+BAgMBAAE=

-----END RSA PUBLIC KEY-----

r Unnamed AFFku1nT3UiV4dsIC0ze+1KD738 YSYH74y8ohTu5Uhvk3Yl0WU8DqI 2009-09-07 11:44:12 94.50.173.6 443 9030

s Exit V2Dir Valid

opt v Tor 0.2.0.35

r tbreg AHKeOQzTsS4dKu6jY5dGrCtY3aE h+oWM86K3Z6yb2z4ZpPd++i7yZo 2009-09-07 02:10:50 202.109.188.97 9001 0

s Exit Valid

opt v Tor 0.2.1.2-alpha (r15383)

r abcdefg ALW6RdYFJ9/JA7MuCkcEUbE+L1I xkVjcAgH+zVB/dcg7NYBDXGWA1g 2009-09-07 17:19:54 84.179.91.68 443 0

s Exit Named Valid

opt v Tor 0.2.0.35











ページの最初の部分には、サーバーに関するサービス情報とリストが生成された時刻が含まれています。 以下は、顧客とその特徴を識別する行です。



文字「r」で始まる行と、もちろんクライアントのIPアドレスに興味があります。 他のすべては原則として特に重要ではありません。



wget + awk + ​​grep + sort + uniqを実行して、必要なIPアドレスのリストを取得します。

wget 128.31.0.34:9031/tor/status/all -q -O - | grep -E '^r' | awk '{print $7}' | sort | uniq > /etc/pf/tor.list











pf.confに数行を追加します



int_if="em0"

ext_if="em1"



table persist file "/etc/pf/tor.list"



block in log quick on { $int_if $ext_if } from any to <tor> label TOR_IN

block out log quick on { $int_if $ext_if } from <tor> to any label TOR_OUT











そして、変更されたpf構成をフィードします。



これで、pflogインターフェースのtcpdumpを使用して、Torの使用を試みた人を計算し、「ああ、いやいや」と言うことができます。 Torクライアントのリストを更新するためのスクリプトは、(会社によって前払いされたトラフィックに応じて)好きなだけ実行できます。 通常のクライアントファイルサイズは約1.5メガバイトです。 したがって、それを更新する頻度は、あなた次第です。 10分ごとにファイルをジャークします(トラフィックは無制限です)。



Perlソリューションの愛好家にはモジュールがあります

search.cpan.org/~ajdixon/Net-Tor-Servers-0.02/lib/Net/Tor/Servers.pm

これは、pftabled perlクライアントと組み合わせて、Torクライアントテーブルの同期および再読み取りスクリプトを呼び出すことなく、その場でpfテーブルを変更できます。



希望する人は、Torクライアントテーブルを他のファイアウォールにバインドできます。



(C) Aborche 2009








All Articles