🐷

自宅の Raspberry Pi を外部インターネットからアクセスできるようにする [Tailscale]

に公開

自宅の Raspberry Pi に外から安全にアクセス!Tailscale で簡単 VPN 構築

1. はじめに

「自宅の Raspberry Pi で動かしているサービスを、外出先からちょっと確認したい」「実家に置いたラズパイをメンテナンスしたい」と思ったことはありませんか?

通常、外部から自宅のネットワークにアクセスするには、ポート開放や DDNS(ダイナミック DNS)といった、少し複雑なネットワーク設定が必要でした。これらの設定は、セキュリティリスクを伴うこともあり、初心者にはハードルが高いものです。

この記事では、そんな悩みを解決する「Tailscale」という VPN サービスを紹介します。Tailscale を使えば、難しいルーター設定を一切行うことなく、まるで同じ LAN 内にいるかのように、外出先の PC やスマートフォンから自宅の Raspberry Pi へ安全に SSH 接続できるようになります。

2. この記事で実現すること

  • ポート開放不要のリモートアクセス: ルーターのポート開放設定なしで、外部のネットワークから自宅の Raspberry Pi に SSH 接続できるようになります。
  • セキュアな通信: Tailscale が通信を暗号化してくれるため、公衆 Wi-Fi などでも安全に接続できます。
  • シンプルな管理: 複数のデバイス(PC、スマホ、ラズパイ)を自分だけのプライベートネットワークに簡単に追加・管理できます。

3. 必要なもの

  • Raspberry Pi 本体: OS(Raspberry Pi OS など)がインストールされ、インターネットに接続されている状態のもの。
  • 外部からアクセスするためのデバイス: 外出先で使うノート PC(Windows, macOS, Linux)やスマートフォン(iOS, Android)。
  • Tailscale アカウント: 無料プランで十分です。Google, Microsoft, GitHub などのアカウントで簡単に作成できます。

4. セットアップ手順

ここからは、実際に手を動かして設定を進めていきましょう。

4.1. Tailscale アカウントの作成

  1. まず、Tailscale の公式サイトにアクセスし、「Sign up」ボタンをクリックします。
  2. Google, Microsoft, GitHub など、普段お使いのアカウントを選択してサインアップします。パスワードを新しく覚える必要がないので便利です。
  3. サインアップが完了すると、管理画面(Admin console)が表示されます。この時点ではまだデバイスが登録されていないので、空の状態です。

4.2. Raspberry Pi に Tailscale をインストール

次に、主役である Raspberry Pi に Tailscale をインストールします。

  1. Tailscale の管理画面にアクセスします。

  2. 右上 AddDevice > Linux Server を選択します。

  3. tags のチェックを外し、一番下までスクロールします

  4. Generate install script をクリックします。

  5. 表示されたコマンドをコピーして、ラズパイのターミナルに貼り付けます

    curl -fsSL https://tailscale.com/install.sh | sh && sudo tailscale up --auth-key=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    
  6. インストールが終わったら、次のコマンドで Tailscale を起動します。

    sudo tailscale up --ssh
    
  7. Tailscale の管理画面にアクセスして、Raspberry Pi のデバイスが追加されていることを確認します。

4.3. 接続元デバイスに Tailscale をインストール

最後に、外出先から Raspberry Pi にアクセスするために使う PC やスマートフォンにも Tailscale をインストールします。

  1. Tailscale のダウンロードページにアクセスします。
  2. お使いの OS(Windows, macOS, iOS, Android など)に合ったクライアントをダウンロードしてインストールします。
  3. インストール後、アプリを起動して、Raspberry Pi の時と同じ Tailscale アカウントでログインします。

これで準備は完了です!あなたの Tailscale ネットワークに、Raspberry Pi と接続元のデバイスが参加しました。

5. 外部から SSH 接続する

5.1. Raspberry Pi の Tailscale IP アドレスを確認する

Tailscale は、ネットワークに参加した各デバイスに100.x.x.xから始まる特別な IP アドレスを割り当てます。

この IP アドレスは、Tailscale の管理画面で確認できます。先ほどデバイスを追加した管理画面を開き、Raspberry Pi の横に表示されている IP アドレスをコピーしてください。

5.2. SSH で接続する

接続元のデバイス(Tailscale をインストール済み)のターミナルから、以下のコマンドを実行します。piの部分は Raspberry Pi のユーザー名、100.x.x.xの部分は先ほどコピーした IP アドレスに置き換えてください。

ssh pi@100.x.x.x

パスワードを求められたら、Raspberry Pi のパスワードを入力します。
どうでしょう?まるで同じ LAN 内にいるかのように、あっさりと接続できたはずです。スマートフォンのテザリングやカフェの Wi-Fi など、どこからでもこの方法で接続できます。

Discussion