[Ubuntu]Tailscaleで安全なVPN環境を構築

コマンド

Ubuntuサーバーを外部から安全に操作したい、あるいは自宅のデバイス同士をプライベートなネットワークで繋ぎたい場合に最適なのがTailscaleです。複雑なファイアウォールの設定なしで、数分でメッシュVPNを構築できます。

Step 1: リポジトリの準備とインストール

Tailscaleは公式のリポジトリを提供しているため、1行のコマンドで安全にインストールスクリプトを実行できます。

まず、以下のコマンドをターミナルで実行して、リポジトリの追加とインストールを自動で行います。

curl -fsSL https://tailscale.com/install.sh | sh

Note: スクリプトの中身を確認してから実行したい慎重派の方は、公式ドキュメントに従って手動でGPGキーとリポジトリを追加することも可能です。

Step 2: Tailscaleの有効化と認証

インストールが完了した直後は、まだネットワークに参加していません。以下のコマンドで接続を開始します。

sudo tailscale up

コマンドを実行すると、以下のようなメッセージが表示されます。

  1. 認証用URLが表示されるので、それをブラウザで開きます。
  2. Tailscaleのアカウント(Google, GitHub, Microsoftなど)でログインします。
  3. ブラウザ上で「Connect」ボタンを押せば、UbuntuがTailscaleネットワークに追加されます。

Step 3: IPアドレスの確認

正常に接続できたら、Tailscale内での専用IPアドレスを確認してみましょう。

tailscale ip -4

ここで表示される 100.x.y.z 形式のIPアドレスが、Tailscaleネットワーク内でのあなたのサーバーの住所になります。

Step 4: 便利な管理コマンド

運用でよく使うコマンドも覚えておくと便利です。

  • 接続状況の確認:
    tailscale status
    現在オンラインの他デバイス一覧が表示されます。
  • 一時的に切断する:
    sudo tailscale down
  • 詳細設定の確認:
    htailscale netcheck UDPの疎通確認や、どのリレーサーバー(DERP)を経由しているかを確認できます。

Step 5: (応用) Exit Nodeの設定

もしこのUbuntuサーバーを「踏み台」にして、外出先のフリーWi-Fiなどから安全にインターネットを閲覧したい場合は、Exit Nodeとして設定することも可能です。

  1. パケット転送を許可する
    /etc/sysctl.conf を編集し、net.ipv4.ip_forward = 1 のコメントアウトを外して適用します。
    反映するには
    sudo sysctl -p
  2. Exit Nodeとして起動
    sudo tailscale up --advertise-exit-node
  3. 管理画面で承認
    TailscaleのWeb管理画面(Admin Console)から、該当のデバイスの「Edit route settings」を開き、「Exit node」にチェックを入れます。

まとめ

UbuntuへのTailscale導入は非常にシンプルです。

  1. インストールスクリプト実行
  2. tailscale up で認証
  3. 管理画面でデバイスを確認

これだけで、グローバルIPやポート開放を気にすることなく、世界中どこからでもSSH接続ができるようになります。

コメント

タイトルとURLをコピーしました