Help us understand the problem. What is going on with this article?

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

More than 1 year has passed since last update.

概要

  • 家のラズパイに外から接続したい
  • グローバル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 が欲しい場合

https://www.torproject.org/docs/debian.html.en

を参考に 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
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  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
ユーザーは見つかりませんでした