Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationEventAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
10
Help us understand the problem. What are the problem?

More than 3 years have passed since last update.

自宅のラズパイを Tor Onion Service にして外から SSH 接続する

概要

  • 家のラズパイに外から接続したい
  • グローバルIPを持っていないので接続できない
  • ラズパイの sshd を onion service にして世界中どこからでもアクセスできるようにする

はじめは SoftEther VPN on Azure しようとしたけどなんか繋がらなかったので Tor を使った。

server (raspbian stretch) の設定

sshd の設定方法は省略。
グローバルIPを晒すときも同じだがセキュリティには十分配慮すること。

例えば

  • SSHDはパスワードログインの無効化や公開鍵認証にする
  • uwf などでファイヤフォールを設定
  • unattended-upgrades などで自動アップデートする

など。

tor をインストール

sudo apt-get install tor

tor の onion service 設定で /etc/tor/torrc の 22 番を開けておく

/etc/tor/torrc
HiddenServiceDir /var/lib/tor/ssh_hidden_service/
HiddenServicePort 22 127.0.0.1:22

デーモンを再起動

sudo systemctl restart tor

Onion Service の hostname をメモっておく

sudo cat /var/lib/tor/ssh_hidden_service/hostname 

client (Ubuntu 18.04 Bionic Beaver) の設定

sudo apt-get install tor connect-proxy

プロクシを設定する。
プロクシのやり方は connect-proxy を使う以外にも色々あるようだ(下記リンク参照)

cat <<'EOF'>> ~/.ssh/config
Host *.onion
        ProxyCommand connect -R remote -5 -S 127.0.0.1:9050 %h %p
        ForwardX11 yes
EOF

接続(鍵設定は省略)

ssh user@hostname.onion

onion service の hostname は公の場には公開しないこと。

[おまけ] Termux (0.60) で Android から接続する

apt install tor torsocks openssh

termux には systemd がないので自分でデーモン起動する

tor&

接続(鍵設定は省略)

ssh user@hostname.onion

[おまけ] raspberry pi に最新版の Tor を入れて Onion Service v3 を使う

stretch に入ってる tor は 0.2x 系なので、最新の 0.3x が欲しい場合

を参考に 0.3 系のリポジトリを登録する必要があります。

cat <<'EOF' | sudo tee -a /etc/apt/sources.list
deb https://deb.torproject.org/torproject.org stretch main
#deb-src https://deb.torproject.org/torproject.org stretch main
deb https://deb.torproject.org/torproject.org tor-experimental-0.3.3.x-stretch main
#deb-src https://deb.torproject.org/torproject.org tor-experimental-0.3.3.x-stretch main
EOF

この tor-experimental-0.3.3.x-stretch は 2018 年 6 月現在のものです。上記 torproject のサイトでより新しいバージョンがないか確認してください。

sudo apt-get install dirmngr --install-recommends
gpg --keyserver keys.gnupg.net --recv A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89
gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-key add -
apt update
apt install tor deb.torproject.org-keyring

これで 0.3 系が使えるようになります。

tor 0.3x からは より秘匿性が高く安全な Onion Service v3 が使えるようになります。設定は下記 URL を参考にしてください。

感想

  • グローバル IP は不便
  • Onion Service 便利
  • Termux すごい

参考

raspberry pi セキュリティ設定

SSH and Tor

Tor and the Internet of Things

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
10
Help us understand the problem. What are the problem?