【自動更新できる】Tailscaleの設定|ポート開放不要でSynology NASにリモート接続する方法

YokiYoki
YokiYoki

NURO光で10Gにしたら、DDNSを利用したリバースプロキシが使えなくなり、Jellyfinのリモートアクセスができなくなりました。ポート開放ができなくなったことが原因です。

そこで「Tailscale」を導入してみました。設定は思っていたよりも簡単で、ポート開放をすることなくSynology NASへリモート接続できるようになりました。

さらに、Tailscaleは自動アップデートでき、HTTPS接続に使用するTLS証明書も自動更新できます。手動で更新する手間が省けるので、長く使う場合にも便利です。

Tailscaleは、接続するクライアントデバイスにもTailscaleアプリをインストールする必要があります。これをデメリットとして挙げることもできますが、私はどのデバイスがTailscaleに接続されているのかを視覚的に確認できるので、むしろ分かりやすくて便利だと感じています。

この記事は「Tailscale」のYoutube解説動画を参考に記事を書きました。Youtubeの動画を見ながら設定すると分かりやすいと思います。日本語音声切替できます。

NURO光はMAP-E方式に徐々にシフトしていくようです。

Tailscaleのインストールとアカウント作成

SynologyNASの場合

パッケージセンターから「Tailscale」をインストールする。

Tailscaleの公式サイト からアカウントを作成します。

ブラウザの翻訳機能で日本語にすると分かりやすいと思います。

ホームページ右上の「ログイン」をクリックすると、サインイン画面が表示されます。Google、Microsoft、Appleなどの認証プロバイダを利用してサインインできます。

私はGoogleでサインインしました。

ログインすると「ログイン」→「Admin console;管理コンソール」に記載が変わります。管理コンソールをクリックすると管理画面になります。

SynologyNASに戻り、Tailscaleアプリを開くと認証を求められます。するとTailscaleの接続ページに移動するので、そのまま接続します。

Tailscale管理画面では「Machines;機械」にSynologyNASが追加されています。これで完了です。

※Youtube解説動画ではすでにWindowsをデバイス登録しているので、Synologyに接続できると説明しています。SynologyNASのDSMで使用しているパソコンのOS、WindowsあるいはMacOSの登録が必要です。NASの登録だけでは接続できません。

Windows・iPhone・androidの場合

Tailscale管理画面の右上にある「デバイスを追加する」→「クライアントデバイス」へ進みます。

Windowsの場合は、「リンクをコピー」をクリックします。リンクを開くとダウンロード画面が表示されるので、Windows版をダウンロードします。

インストール後、Tailscaleのアカウント作成時に使用した認証プロバイダ(Googleなど)でログインすると、デバイスが追加されます。

iPhone・Androidの場合は、「リンクをコピー」の上に表示されているQRコードを読み取ります。ダウンロード画面が表示されるので、アプリをインストールします。

インストール後、Windowsと同じように認証プロバイダ(Googleなど)でログインすると、デバイスが追加されます。

FireTVデバイスの場合

Fire TVのAppstoreで「Tailscale」を検索しましたが、アプリが見つかりませんでした。そこでAptoide TVから最新バージョンのインストールを試しましたが、エラーで失敗しました。

AIに相談したところ、旧バージョンならインストールできる可能性があると分かりました。そこで、Tailscaleの旧バージョン一覧から、私は2024年9月24日公開の「1.70.0(Android 8)」を選びました。

APKファイルをAndroidタブレット(またはWindows)にダウンロードし、ファイルマネージャー+でOneDriveに保存します。

Fire TV側の「ファイルマネージャー+」で「OneDrive」を開き、保存したAPKファイルをクリックするとダウンロードが始まります。

ダウンロード後、認証を求められたため、GoogleでログインするとTailscaleをFire TVデバイスに追加できました。

デバイス間のファイル移動はファイルマネージャー+が便利です。また、FireTVデバイスにファイルマネージャー+をインストールするにはAptoideTVを利用しました。

Tailscaleの自動アップデート設定

Synology DSMから「コントロールパネル」→「タスクスケジューラー」を開き、「予約タスク」→「ユーザー指定のスクリプト」を選択します。

以下のように設定します。

  • 名前:tailscale-update
  • ユーザー:root
  • 有効:チェック

「スケジュール」は週次・日曜日に設定します。曜日は重要ではないので、都合のよい曜日でかまいません。

「タスク設定」の「ユーザースクリプト」に、以下を入力します。

「OK」をクリックすると警告が表示されますが、そのまま進み、NASのサインインパスワードを入力します。

設定後、YouTubeの解説動画では、このタスクを一度上部の「実行」をクリックしてアップデートを確認しています。

DNS(Domain Name System)の設定・TLS証明書の発行

Tailscaleの管理画面上部にある「DNS」をクリックします。

DNS設定画面の下のほうにある「MagicDNS」と「HTTPS証明書」が有効になっていることを確認します。

画面上部には、Tailscaleから提供されたDNSアドレスが表示されています。「○○○.ts.net」のような形式で、利用できるアドレスが表示されます。

このDNSアドレスは自分で作成したり、文字列を変更したりすることはできません。Tailscaleから提供されたものを使用します。

DNSの登録とTLS証明書の自動更新設定

Synology DSMから「コントロールパネル」→「タスクスケジューラー」を開き、「予約タスク」→「ユーザー指定のスクリプト」を選択します。

以下のように設定します。

  • 名前:tailscale-cert
  • ユーザー:root
  • 有効:チェック

「スケジュール」は月次・最初・月曜日に設定します。曜日は重要ではないので、都合のよい曜日でかまいません。

「タスク設定」の「ユーザースクリプト」に、以下を入力します。

「OK」をクリックすると警告が表示されますが、そのまま進み、NASのサインインパスワードを入力します。

設定後、「tailscale-cert」タスクを選択し、上部の「実行」をクリックします。

DSMの「コントロールパネル」→「セキュリティ」→「証明書」を開き、「○○○.ts.net」の証明書が登録されていることを確認します。登録された証明書をデフォルトに設定します。

私はSynologyのDDNSも併用していましたが、TailscaleのDNSが動かなくなる不具合が発生しました。SynologyのDDNSを削除してTailscaleのDNSを再設定したところ、正常に動作しました。そのため、私はQuickConnect以外の証明書を削除しています。

この設定により、TailscaleのHTTPS接続に使用するTLS証明書を自動更新できます。

Tailscaleで割り当てられたアドレスを確認

Tailscaleの管理画面「Machines(機械)」の「Addresses(アドレス)」で、NASに割り当てられたアドレスを確認できます。

  • Tailscaleで割り当てられたNASのアドレス100.○○.○○.○○
  • Tailscaleから提供されたNASのDNSデバイス名.○○○.ts.net

このアドレスやDNSを使うことで、ポート開放をせずにNASへリモート接続できます。

Jellyfinにリモート接続する

Jellyfinは、Tailscaleで割り当てられたNASのアドレスを使って、

http://Tailscaleで割り当てられたNASのアドレス:8096

でリモート接続できます。

また、Tailscaleから提供されたDNSに対してSynology NASでリバースプロキシを設定(8096→8920)すると、

https://Tailscaleで提供されたNASのDNS:8920

でも接続できます。Tailscale自体が安全な接続を提供するため、Jellyfinのリモート接続にリバースプロキシは必須ではありません。

ただ、WindowsのブラウザでHTTP接続したときに「保護されていない通信」と表示されるのが気になったため、私はリバースプロキシを併用してHTTPS接続も試してみました。

HTTP・HTTPSのどちらでもリモート接続でき、どちらの場合もポート開放は必要ありません。

Synology NASにリモート接続する

Synology DSMは、

https://Tailscaleで提供されたNASのDNS:5001

でサインインできます。

また、モバイルアプリ(DS fileなど)は、Tailscaleから提供されたNASのDNSを入力してサインインし、リモート接続できます。

デバイスは電源を切るとTailscaleの接続(Tailnet)も切れます。接続確認は、各デバイスのTailscaleアプリで確認できます。デバイスが緑色ではなくグレーになっている場合は接続を有効にしないと接続できません。ご注意ください。

【追記】
まれにスケジュールタスクが実行されず、証明書が更新されないことがあります。その場合は、「タスクスケジューラ」→「tailscale-cert(タスク)」→「実行」を選択すると、手動で更新できます。DSMのアップデートなどが原因で一時的にタスクが実行されないこともあるため、定期的に更新日を確認しておくと安心です。

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