1. ソフトウェアの自動更新を有効にする

リレーを安全に保つために最も大事なことの1つは、セキュリティアップデートを適切なタイミングで、理想的には忘れないように自動的にインストールすることです。 指示に沿って、お使いのオペレーティングシステムでソフトウェアの自動更新を有効にしてください。

2. Tor のインストール

# pkg_add tor

3. 難読化ツールのインストール

# pkg_add obfs4proxy

3.1 Lyrebird

obfs4proxy はメンテナンスされていないため、Tor Project が管理するフォークである Lyrebird をソースからビルドすることをお勧めします。

go パッケージはビルド依存関係です。

# pkg_add go

リポジトリをクローンし、そのディレクトリーに cd で移動します。

$ git clone https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/lyrebird.git
$ cd ./lyrebird

必要に応じて、最新のバージョンタグ (例: lyrebird-X.X.X) をチェックアウトします。

$ git checkout VERSION_TAG

実行ファイルをビルドし、PATH 上の場所にインストールします。

$ make build
# cp ./lyrebird /usr/local/bin/lyrebird

4. Tor 構成ファイル (通常は /etc/tor/torrc ) を編集し、内容を以下のように置き換えます。

RunAsDaemon 1
BridgeRelay 1

# 「TODO1」を任意の Tor ポートに置き換えてください。このポートは外部から接続可能でなければなりません。
# ポート 9001 は一般的に Tor と関連しており、検閲当局がこのポートを探して
# インターネットをスキャンしている可能性があるため、避けてください。
ORPort TODO1

ServerTransportPlugin obfs4 exec /usr/local/bin/obfs4proxy
# または Lyrebird を使用している場合:
#  ServerTransportPlugin obfs4 exec /usr/local/bin/lyrebird

# 「TODO2」を任意の obfs4 ポートに置き換えてください。
# このポートは外部から接続可能であり、ORPort に指定したポートとは異なる必要があります。
# ポート 9001 は一般的に Tor と関連しており、検閲当局がこのポートを探して
# インターネットをスキャンしている可能性があるため、避けてください。
ServerTransportListenAddr obfs4 0.0.0.0:TODO2

# Tor と obfs4 間のローカル通信ポート。 常に「auto」に設定してください。
# 「Ext」は「外部」ではなく「拡張」を意味します。特定のポート番号を設定したり、
# 0.0.0.0 をリッスンしたりしないでください。
ExtORPort auto

# <address@email.com> をあなたのメールアドレスに置き換えてください。
# これにより、あなたのブリッジに問題が生じた際にご連絡することができます。これはオプションですが、強く推奨します。
ContactInfo <address@email.com>

# ブリッジにお好きな Nickname をつけてください。 これはオプションです。
Nickname PickANickname
DataDirectory /var/tor
User          _tor

ORPortServerTransportListenAddrContactInfo 、および Nickname の各オプションを忘れずに変更してください。

  • Tor の OR ポートと obfs4 ポートの両方が接続可能でなければならないことにご注意ください。あなたのブリッジがファイアウォールや NAT の背後にある場合、両方のポートを開けるようにしてください。obfs4 ポートがインターネットから接続可能かどうか、こちらのツールでご確認いただけます。

5. openfiles-maxmaxfiles の変更

デフォルトでは、OpenBSD は、プロセスのオープンファイルの最大数にかなり低い制限を設けています。Tor のデーモンのように、他のすべてのリレー (現在、およそ 7000 リレー) に接続を開くようなものでは、これらの制限を引き上げる必要があります。

以下の記述を /etc/login.conf に追加してください。

tor:\
    :openfiles-max=13500:\
    :tc=daemon:

次に、_tor ユーザーのログインクラスを以下のように変更します:

# usermod -L tor _tor

また、OpenBSD は、カーネルレベルのファイル記述子の制限を sysctl 変数 kern.maxfiles に格納しています。

これをデフォルトの 7030 から 16000 に増やします。

# echo "kern.maxfiles=16000" >> /etc/sysctl.conf
# sysctl kern.maxfiles=16000

6. Tor を開始

# rcctl enable tor
# rcctl start tor

7. ログの確認 (通常は syslog 内)

ブリッジが正常に稼働している場合、以下のような記述があるはずです。

[notice] Your Tor server's identity key fingerprint is '<NICKNAME> <FINGERPRINT>'
[notice] Your Tor bridge's hashed identity key fingerprint is '<NICKNAME> <HASHED FINGERPRINT>'
[notice] Registered server transport 'obfs4' at '[::]:46396'
[notice] Tor has successfully opened a circuit. Looks like client functionality is working.
[notice] Bootstrapped 100%: Done
[notice] Now checking whether ORPort <redacted>:3818 is reachable... (this may take up to 20 minutes -- look for log messages indicating success)
[notice] Self-testing indicates your ORPort is reachable from the outside. Excellent. Publishing server descriptor.

8. 備考

ブリッジの設定に際して問題がある場合は、ヘルプセクションをご覧ください。 ブリッジが正常に動作したら、インストール後の確認事項をご覧ください。