自分専用のプライベートobfs4ブリッジを建てよう

そういえば日本語の情報が全然ないような気がするので書こうと思います。

日本語非対応ですが一応公式のドキュメントはあります。(プライベート用途向けではない?)

Tor Project | Bridge

はじめに

以下の条件のサーバーで建てます。

他のOSでも大きくは変わらないと思います。Tor Projectのリポジトリとtorのインストールに関しては以下を参照してください。

Why and how I can enable Tor Package Repository in Debian? | Tor Project | Support

また、あなたの条件は以下の通りです。

obfs4proxyを準備

まずはobfs4proxyをインストールします。

$ sudo apt install obfs4proxy

次にtorrcを編集します。

$ sudo vi /etc/tor/torrc

torrcに以下の設定を追加します

BridgeRelay 1
ORPort 9001
PublishServerDescriptor 0
BridgeDistribution none
ServerTransportPlugin obfs4 exec /usr/bin/obfs4proxy
ServerTransportListenAddr obfs4 0.0.0.0:443
ExtORPort auto
Nickname ExampleRelay
ContactInfo example@example.com

次に以下のコマンドでobfs4が特権ポートにバインドすることを許可します。

$ sudo setcap cap_net_bind_service=+ep /usr/bin/obfs4proxy

systemdサービスの設定ファイル2つを編集します。

$ sudo systemctl edit tor@.service tor@default.service

エディタが開かれるのでそれぞれ以下を書き込んで保存します。

[Service]
NoNewPrivileges=no

最後にtorを再起動します。

$ sudo systemctl restart tor.service

これでobfs4ブリッジが動作しているはずです。

ブリッジラインを取得してブリッジに接続する

まずは以下のコマンドでテンプレートを取得します。

$ sudo cat /var/lib/tor/pt_state/obfs4_bridgeline.txt

すると以下のようなテンプレートが出力されます。

Bridge obfs4 <IP ADDRESS>:<PORT> <FINGERPRINT> cert=XxXxXxXxXxXxXxXx iat-mode=0

完成したブリッジラインはTor BrowserやTailsに入力して使用できます。Tor Browserではアドレスバーの左から、TailsではOnion Circuitsを開いて、自分のobfs4ブリッジを経由していることを確認できます。

ブリッジを使用してTorネットワークに接続できたら完了です。お疲れ様でした。