WFWorkFrameHub TipsCreator's practical column← Tips一覧に戻る
Language

WorkFrameHub / Tips / Tailscale

Tailnet Lockを有効にする手順
署名ノードと復旧用シークレットの準備まで

Tailscaleの安全対策を見直すなら、Tailnet Lockは確認しておきたい機能です。ただし「オンにすれば侵入後も安全」という仕組みではありません。この記事では、管理画面で初期化コマンドを作る方法と、有効化後に確認するポイントをまとめます。

公開日・最終更新日 2026年10月27日 / 公式情報確認日 2026年10月27日

1 作業前に準備する

対象プランはPersonalとEnterpriseです。操作にはOwner、Admin、IT adminのいずれかの権限が必要です。まず、管理コンソールと各端末が同じTailnetを使っていることを確認します。[1]

  • 信頼できる署名ノードを最低2台用意する。この記事の初期化には、CLIを使えるLinux・macOS・Windows端末を1台含める。
  • Androidは署名ノードにできない。iOSは署名に対応するが、初期化コマンドはPC等で実行する。
  • 全端末を最新のサポート対象版へ更新する。v1.46.1は機能の最低要件であり、「今この版なら安全」という推奨ではない。
  • Device approvalとの併用はできない。利用中なら、運用責任者と移行方針を決めるまで進めない。
  • パスワードマネージャなど、無効化用シークレットの安全な保存先を先に開いておく。

運用上のおすすめ:署名ノードを同時に失わない構成にし、サーバーのコンソールなどTailscale以外の管理経路も確保しておきます。通信が止まると困る時間帯は避けてください。これは公式の必須要件とは別の、作業時の備えです。

2 管理画面から初期化コマンドを作る

手順1 Device managementを開く

公式管理コンソールのDevice managementを開き、対象のTailnetと権限を確認してからEnable Tailnet Lockを選びます。すでに有効なら再初期化せず、次の「確認」へ進みます。

手順2 署名ノードを選ぶ

Add signing nodes → Add signing nodeから、今後の端末追加を承認する端末を最低2台選びます。初期化コマンドを実行する端末自身も、ここで選ぶ署名ノードに含めてください。「普段使うから」だけでなく、更新・端末ロック・紛失対策を維持できる端末かを確認します。

  1. 署名ノードを2台以上選ぶ
  2. 対象Tailnetと端末を確認
  3. 初期化する端末も含める
有効化前の確認フロー(独自作成の説明図。管理画面のスクリーンショットではありません) Tailscale Docs

手順3 復旧用シークレットの扱いを決める

Configure disablement optionsで、追加の無効化用シークレットをTailscaleサポートに提供するか判断します。提供は任意です。自分で保管する分とは別に、復旧支援と信頼範囲を考えて選びます。

手順4 選んだ署名ノードでコマンドを実行する

  1. Run command from signing nodeに表示されたコマンドをコピーする。
  2. 手順2で選んだ署名ノードのターミナルを開く。
  3. 対象Tailnetと実行端末を再確認し、コピーしたコマンドを実行する。
  4. 出力された無効化用シークレットを、準備した保存先に保存する。

コマンドはtailscale lock initで始まりますが、後ろの鍵やオプションは環境ごとに異なります。他人の記事やスクショの例をそのまま実行しないでください。

管理画面で生成する標準フローではシークレットが10個作られます。一方、CLIを手で組み立てる場合は--gen-disablementsで数が変わり、省略時の既定値は1個です。「必ず10個出る」とは覚えないでください。既存ノードは初期化時に署名されますが、その後の通信確認は省略しません。[2]

  1. 初期化時の出力を確認
  2. シークレットを安全に保存
  3. 保存先で読み戻す
復旧情報の保存フロー(独自作成の説明図。実際のシークレットは掲載していません) Tailscale Docs

3 有効化できたか確認する

CLIを使える端末で、次を実行します。これは状態確認のコマンドです。

tailscale lock status

ENABLEDの表示に加えて、そのノードがTailnet Lock下でアクセス可能かを確認します。重要な端末でも同じコマンドを実行し、信頼する署名鍵の一覧が一致するか確認してください。鍵の一覧は公開せず、手元で比較します。出力の各項目は公式CLIのstatus説明で確認できます。

  • 署名ノード2台で状態を確認した。
  • 普段使うサーバーや必要なサービスへ、いつもの方法で接続できた。
  • 無効化用シークレットの保存先と管理担当を把握した。
  • 既存のアクセスルールが意図どおりか別途確認した。

スマホの表示だけで全端末の状態を確認したことにはしません。iOSやmacOSの画面名はアプリ版によって変わるため、本記事ではCLIによる確認を基準にします。

4 新しい端末を追加するとき

通常の端末追加では、ログイン後に署名の承認が必要です。管理コンソールのMachinesでLocked outの端末を選び、Sign machineから対応するクライアントまたはCLIの方法へ進みます。表示された署名対象を端末名だけで判断せず、追加した本人と対象端末を照合してから、信頼する署名ノードで承認します。

CLIを使う場合は、画面で選んだCLI用の署名コマンドを署名ノード上で実行します。追加した端末側のtailscale lock statusと、必要な通信を確認して完了です。事前署名済みauth keyを使う運用では個別の手動署名を省ける例外があります。自動登録に使う鍵の管理は別途必要です。[1]

5 SSHと復旧は別のチェック項目

Tailnet LockでSSHの問題を直したことにしない

Tailscale SSHの実行権限や認証・アクセスルールは、端末の署名とは別の話です。「root権限で動く」という設計の説明と、特定バージョンに存在する脆弱性も区別します。出典が確認できないニュースを、今回の原因として断定しないでください。[3]

  • 公式Security bulletinsと更新状況を確認する。
  • ネットワークアクセスとSSHルールの両方で、接続元・接続先・ログインユーザーを必要な範囲に絞る。
  • 使っていないTailscale SSHは、代わりのログイン手段を確保した後に無効化を検討する。
tailscale set --ssh=false

これはサーバー設定を変更するコマンドです。今使っているTailscale SSH経由の管理を失う可能性を考え、リモート接続中に無計画に実行しないでください。OS側の通常のSSHサーバーとは別の設定です。

署名ノードの侵害やシークレット紛失時

署名ノードの鍵も端末内にあります。侵害された鍵は通常の端末整理とは分けて扱い、公式のRevoke a compromised signing nodeを参照してください。単に署名ノードを一覧から外す操作と、侵害鍵の失効は同じではありません。

シークレットを失い、サポートにも提供していない場合、通常の解除・復旧は非常に困難です。公式には端末ごとの緊急手段もありますが、本記事では安全機能を無効にするコマンドを気軽な回避策として案内しません。変更前に復旧方針を確認してください。

侵害が疑われる端末への対応は「削除か再インストールか」の二択ではありません。まず隔離とアクセス失効を検討し、調査、漏えいした認証情報の交換、必要なクリーン再構築を組み合わせます。これは一般的な運用上の整理で、個別の侵害調査の代わりにはなりません。

まずは状態と準備を確認しよう

今日すぐ有効化しなくても、現状、署名ノード候補、復旧用シークレットの保管先を確認するだけで、次の作業を判断しやすくなります。Tailnet Lockは守りの一部です。更新、最小権限、端末管理と組み合わせて運用してください。

公式資料

  1. Tailnet Lock:要件、有効化、新規端末、復旧と制限。
  2. tailscale lock CLI reference:init・status・失効操作の仕様。
  3. Tailscale SSH / SSH over Tailscale:SSH機能と通常SSHの区別。
  4. Security bulletins:作業時点の対象バージョンと修正版を確認。

関連記事

Tips一覧に戻る