ホーム サーバーにサービスを設定する場合、サーバーの IP アドレスに続いてサービスがマップされているポートを入力するだけで、すぐにアクセスできます。サーバーと同じネットワークに接続している限り、そのサービスにアクセスできます。
ただし、外出先で自宅の Wi-Fi に接続していない場合は、ホーム サーバーやそのサービスに直接アクセスすることはできません。通常のアドバイスは、ルーターまたはリバース プロキシでポート転送を設定することです。しかし、それらが唯一の選択肢ではありません。内部ネットワークの外にあるホーム サーバーとそのサービスにアクセスする非常に簡単な方法があります。
Tailscale とは何ですか、またどのように機能しますか
安全なプライベート ネットワークを提供します
最近、ドメイン名を設定し、リバース プロキシ Caddy を使用して、HTTPS 経由でさまざまなサブドメインのサービスにアクセスしています。たとえば、https://vault.domainname.com のような URL でアクセスできるセルフホスト型 Vaultwarden サーバーがあります。通常の Web サイトと同じように、世界中のどこにいても、どのネットワークでもアクセスできます。ただし、少しのセットアップと調整が必要です。
Tailscale を使用すると、複雑な構成を行わずに同様のことを行うことができます。 Tailscale にサインアップして、サーバーとクライアント デバイス (電話、ラップトップ、その他のデバイス) で実行すると、安全なプライベート ネットワークが作成されます。
このネットワークは「テールネット」と呼ばれます。プライベート テールネットに接続されているすべてのデバイスは相互に通信できます。 Tailscale は、テールネット上の各デバイスに IP アドレスを自動的に割り当てます。この IP アドレスには、同じネットワークに接続されている許可されたデバイスのみがアクセスできます。これらのデバイスは、世界中のどこにいても Wi-Fi、LAN、またはデータに接続でき、テールネット IP アドレスに到達できます。ポートをいじる必要はありません。
最も良い点は、Tailscale が「マジック DNS」を提供するため、これらの IP アドレスを覚えておく必要さえないことです。基本的に、http://100.xxx のような IP アドレスを入力する代わりに、https://dietpi.lemon-cow.ts.net のような覚えやすい名前を入力できます。 Magic DNS の例では HTTPS を使用していることに注意してください。これは、一部のセルフホステッド サービス (パスワード マネージャーなど) で必要となります。通常、設定は面倒ですが、Tailscale を使用すると、ボタンを 1 つクリックするだけで済みます。
Tailscale は私が初めて使用したソリューションで、長い間魔法のように機能しました。私がそれをやめた唯一の理由は、携帯電話で Tailscale アプリを維持したり切り替えたりするのが不便だと感じたからです。
テールスケールのセットアップ
起動して実行するには 2 つのコマンドだけが必要です
まず、サーバーに Tailscale をインストールします。そのプロセスを自動化する公式スクリプトがあります。実行しましょう。
curl -fsSL https://tailscale.com/install.sh | sh
スクリプトを実行する前に、インターネットから取得したスクリプトを検査することを常にお勧めします。
次に、Tailscale サービスを開始します。
sudo tailscale up
このスクリプトは、デフォルトで Tailscale を systemd サービスとしてインストールし、実行します。サーバーが別の init システムを使用している場合は、そのシステム用にバックグラウンド サービスを手動で設定する必要があります。
コンソールにリンクが表示されます。そのリンクをクリックして、Tailscale コンソールにサインアップまたはサインインします。これで、サーバーが認証され、接続されるはずです。
次のステップは、デバイスに Tailscale をインストールすることです。 Linux マシンの場合は、同じコマンドを使用して Tailscale サービスを起動して実行できます。 Windows または macOS では、Tailscale Web サイトから適切なインストーラーを入手できます。モバイル デバイスの場合は、App Store または Play ストアから Tailscale アプリをダウンロードできます。
サーバーに使用したのと同じ Tailscale アカウントにログインし、デバイスを認証する必要があります。このコマンドを使用して、現在テールネット上にあるすべてのデバイスを確認します。
tailscale status
前述したように、サーバーとそのサービスに簡単にアクセスするには、MagicDNS 機能を使用します。 Tailscale コンソールの[DNS]タブを開き、下にスクロールして[MagicDNS]および[HTTPS 証明書]ボタンを見つけます。両方が有効になっていることを確認してください。
サーバー上でこのコマンドを実行して、テールネットの HTTPS 証明書を有効にすることもできます。テールネット アドレスを独自のアドレスに置き換えます。
sudo tailscale cert dietpi.lemon-cow.ts.net
すべてのサーバーとデバイスが同じテールネット上に配置されると、Tailscale がそのデバイス上で実行されている限り、それらのデバイスのいずれかから実行中のサービスにアクセスできます。次にその方法を説明しましょう。
Tailscale を使用したセルフホスト型サービスへのアクセス
サーバー IP を Tailscale アドレスに置き換えるだけです
ホーム ネットワークの外にアクセスしたい Docker コンテナがあるとします。
Tailscale コンソールを再度開き、[DNS]タブに移動します。一意のテールネット名に注意してください。これは、lemon-cow.ts.net のように見えるかもしれません。次に、に行きます 機械 タブをクリックしてサーバー名を探します。テールネットでサーバーにアクセスするには両方が必要です。たとえば、私の名前は dietpi。したがって、サーバーを指す完全なアドレスは次のようになります。
http://dietpi.lemon-cow.ts.net
ポート 3001 で Docker コンテナがアクティブになっているとします。ホーム ネットワークでは、通常、サーバーの IP アドレスを入力し、続いてサーバーの IP アドレスを入力します。 :3001。こんな感じかもしれません。
http://192.x.x.x:3001
Tailscale を一意の MagicDNS で設定したので、そのサーバー IP を Tailscale アドレスに置き換え、ターゲット ポートを保持するだけで、ローカル ネットワーク上にいるかのように動作します。
http://dietpi.lemon-cow.ts.net:3001
マップされたポートに対しても同様に機能します。
- ブランド
-
ラズベリーパイ
- ストレージ
-
8GB
- CPU
-
コーテックス A7
- メモリ
-
8GB
Tailscale は設定して忘れるシステムです
Tailscale を使用すると、外出先でも自宅のラボやセルフホスト サービスに簡単にアクセスできます。これは、(ほとんどの場合) 動作するだけで、設定しただけで忘れるシステムです。セットアップさえも十分に簡単です。