onionドメインのサーバを建ててみたを参考に構築した。
Torのインストール
公式によるとDebian/Ubuntuパッケージはしばらくアップデートされていないため、利用しないほうがよいと記載されていた。
確かに最終更新日は、2018年3月と古かった。
root@tech:/home/ubuntu# cat /etc/lsb-release DISTRIB_ID=Ubuntu DISTRIB_RELEASE=18.04 DISTRIB_CODENAME=bionic DISTRIB_DESCRIPTION="Ubuntu 18.04.2 LTS" # apt changelog tor tor (0.3.2.10-1) unstable; urgency=medium * New upstream version. - Includes an important security fix for a remote crash attack against directory authorities. [TROVE-2018-001 and CVE-2018-0490] - Additionally, backports a fix for Tor#24700, which was originally fixed in 0.3.3.2-alpha but had its severity upgraded now as it can be remotely triggered and can crash relays. [TROVE-2018-002 and CVE-2018-0491] -- Peter Palfrader <weasel@debian.org> Sat, 03 Mar 2018 14:37:34 +0100 ...
公式の通りインストールした。
# echo 'deb https://deb.torproject.org/torproject.org bionic main' >> /etc/apt/sources.list.d/tor.list # echo 'deb-src https://deb.torproject.org/torproject.org bionic main' >> /etc/apt/sources.list.d/tor.list # curl https://deb.torproject.org/torproject.org/A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89.asc | gpg --import ... # gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | apt-key add - # apt update # apt install tor ... # tor --version Tor version 0.3.5.8.
Tor設定
# cp /etc/tor/torrc /etc/tor/torrc.default # vi /etc/tor/torrc ... # diff /etc/tor/torrc /etc/tor/torrc.default 71,72c71,72 < HiddenServiceDir /var/lib/tor/hidden_service/ < HiddenServicePort 80 127.0.0.1:80 --- > #HiddenServiceDir /var/lib/tor/hidden_service/ > #HiddenServicePort 80 127.0.0.1:80 # cat /var/lib/tor/hidden_service/hostname u5bsgenv7mshtwmh6jbroelnajmxz3dfov6dpiktwrtazjafmzhszpad.onion
HiddenServicePortについてはTorで公開するポートを設定すると理解した。
Nginx設定
# mkdir /var/www/onion root@tech:/home/ubuntu# echo "Hello Onion :)" | sudo tee /var/www/onion/index.html Hello Onion :) root@tech:/home/ubuntu# chown -R www-data:www-data /var/www/onion # vi /etc/nginx/sites-available/u5bsgenv7mshtwmh6jbroelnajmxz3dfov6dpiktwrtazjafmzhszpad.onion server { server_name u5bsgenv7mshtwmh6jbroelnajmxz3dfov6dpiktwrtazjafmzhszpad.onion; root /var/www/onion/; } # ln -s /etc/nginx/sites-available/u5bsgenv7mshtwmh6jbroelnajmxz3dfov6dpiktwrtazjafmzhszpad.onion /etc/nginx/sites-enabled/ # nginx -t nginx: [emerg] could not build server_names_hash, you should increase server_names_hash_bucket_size: 64 nginx: configuration file /etc/nginx/nginx.conf test failed # vi /etc/nginx/nginx.conf # 以下を追加する server_names_hash_bucket_size 128; # systemctl restart nginx
Tor Browserにてアクセスすると、サイトが表示された。
参考
https://qiita.com/charichuma_hack/items/ba3fc74f73f1929ef50b
https://hackmd.io/s/HyxJs1A9W
https://medium.com/gyoza-x/tor-hidden-service-%E3%81%A7%E3%82%A6%E3%82%A7%E3%83%96%E3%82%B5%E3%82%A4%E3%83%88%E3%82%92%E5%85%AC%E9%96%8B%E3%81%97%E3%81%A6%E3%81%BF%E3%82%8B-5eab0d968d10