🧅

Raspberry Pi 4にTor relayノードを立てる ~インターネット自由戦士道~

2020/12/21に公開

インターネット自由戦士声明

「思考警察に頭の中を盗聴されているぞ! 早くアルミホイルをかぶれ!」

みたいな世界に生きているわけではないですが、個人情報が資本的な価値を持つこの時代では、ネットで自分のプライバシーを守る術は必須になってきました。

そんなインターネットのプライバシー保護の代名詞と言えばTor Hidden Serviceですが、covid-19による被害で、社員の三分の一を解雇するという苦渋の決断をしました。

https://blog.torproject.org/covid19-impact-tor

こういった危機にこそ、我々インターネット自由戦士が立ち上がらなければならないのです。

そう、Torのrelayノードをたてるのです。

Torノードの現状

Torのrelayノード数がトップのドイツと日本のrelayノード数を比較してみましょう。
https://metrics.torproject.org/rs.html#

見て通り差は圧倒的で、ドイツのノード数は日本の17倍以上です。

このように日本のTorへの貢献度はまだまだ伸び代があるので、これからのプライバシー重視のインターネットに置いていかれないためにも、Torの国内ノードをどんどん増やしていきましょう!

そして、今回はRaspberry Pi 4にrelayノードを立てたいと思います。

Raspbianのセットアップ

インストール

公式サイトからRaspbianのzipファイルをダウンロードします。
https://www.raspberrypi.org/software/operating-systems/

今回は最小のアプリしか使わないので、Raspberry Pi OS with desktopをtorrentでダウンロードしましょう。

microSDを自分のPCに入れて、Etcherを使ってダウンロードしたRaspbianのイメージを書き込みます。
https://www.balena.io/etcher/

ssh設定

書き込みが完了したらsshの設定を行います。

# ボリューム先ににsshファイルを作成
$ touch /Volumes/boot/ssh

# config.txtにdtoverlay=dwc2を追加
$ echo "dtoverlay=dwc2" >> /Volumes/boot/config.txt

# rootwaitの後ろにmodules-load=dwc2,g_etherと追記
$ vi /Volumes/boot/cmdline.txt

sshログイン

microSDをRaspberry Piにセットして、有線でMacと繋いでssh接続します。

# デフォルトのパスワードは raspberry
$ ssh pi@raspberrypi.local

Torのセットアップ

インストール

sshしたRaspbery piの中でTorをインストールします。

$ sudo apt update
$ sudo apt upgrade
$ sudo apt install tor

設定

あとはTorの公式ガイドに従ってtorrcを編集します。
https://gitlab.torproject.org/legacy/trac/-/wikis/TorRelayGuide

$ sudo vi /etc/tor/torrc

今回はこんな感じにしました。

Nickname XXXXXXXXX
ContactInfo XXXXXXXXX@pm.me
ORPort 443
DirPort 80
RelayBandwidthRate 1500 KBytes
RelayBandwidthBurst 2500 KBytes
ExitPolicy reject *:* # no exits allowed
ExitRelay 0
RunAsDaemon 1

編集後にTorを再起動。

$ sudo systemctl restart tor@default

チェック

稼働状況はsystemctlで見れます。

$ sudo systemctl status tor@default

より詳細にnodeの情報を見たい場合は、Tor専用のコンソールツールnyx(旧arm)を使うといいです。

$ sudo apt install nyx
$ nyx

3時間ほど経てば、Tor公式のRelaySearchから自分のノードを確認できます。

About 3 hours after you started your relay it should appear on Relay Search (https://metrics.torproject.org/rs.html). You can search for your relay using your nickname or IP address.

※実際は3時間どころか数日単位で待たされることもあります。

締め

Exitノードは何かと危険に巻き込まれる可能性があるので、今回はrelayのみにしましたが、これからノードの運用に慣れてきたら、そのうち立てたいとは思っています。

インターネットに自由あれ!

Discussion