06 リモート運用のベストプラクティス — 事前にやっておく・知っておく
繋ぐ・操作する・引き継ぐは前章まで。本章は 「安定し続ける・事故に強い」 ための運用知識です。いざという時に慌てないよう、最初に一読しておくのがおすすめ。
1. スマホ紛失時に即座に無効化する(revoke 手順)
SSH鍵は パスフレーズなし(-N "")で作っているため、スマホ紛失=即PC侵入リスクになります。紛失に気づいた瞬間に以下の2本斧で遮断します。
手順A:PC側で該当鍵を削除
PC側のWSLターミナルで ~/.ssh/authorized_keys を開き、紛失したスマホの鍵の1行を削除します。
# 登録済み鍵の一覧を確認(コメント付きで表示)
cat ~/.ssh/authorized_keys
該当行(紛失スマホの公開鍵)を1行削除して保存。即座にその鍵ではログインできなくなります。
⚠️ 現在の課題: 本ガイドの手順で作った鍵のコメントは u0_aXX@localhost(Termuxの内部ユーザー名)になり、どの物理スマホか判別できません。複数スマホを登録していると紛失時に特定に手間取ります。次の 予防策 で識別コメントを付けておくのが安全です。
手順B:Tailscale 側でデバイス削除
Tailscale管理画面( https://login.tailscale.com/admin/machines )を開き、紛失したスマホのデバイスの「⋯」→ Remove。VPNネットワークからも除外します。
予防策:鍵に識別コメントを付ける
鍵作成時に -C でデバイス名を付けておくと、紛失時に一目で特定できます。
# スマホのTermuxで(例: razr-50s という端末名)
ssh-keygen -t ed25519 -N "" -C "razr-50s" -f ~/.ssh/id_ed25519
💡 スマホ本体のロックも必須: Termuxを起動できれば誰でもSSHできます。スマホのPIN/生体認証ロックは必ず掛けてください。
2. PC再起動後も自動で復旧させる
Windows Update や突発的な再起動があると、Tailscale / WSL / sshd の3プロセスとtmuxセッションが全部消えます。外出先で「繋ごうとしたら再起動後で何も動いていない」を防ぐ設定です。
2-1. sshd を自動起動させる(systemd)
本環境は /etc/wsl.conf で systemd が有効(systemd=true)なので、一度だけ有効化すれば永続します:
# PC側WSLで(要ユーザー確認・sudo実行前)
sudo systemctl enable ssh
sudo systemctl start ssh
⚠️ sudo実行前はユーザー確認ルール。実行は自己責任で。
2-2. Tailscale(Windows側)を自動起動
Windows側の設定 → アプリ → スタートアップ で Tailscale が有効か確認。通常はインストール時点で有効ですが、念のため確認します。
2-3. WSL自体を起動しておく
Windowsログイン後に一度でもWSLターミナルを開けば sshd が立ち上がります。「蓋を閉じてもスリープしない」設定(01章 Step 1)と組み合わせて、PCはログイン済みのまま置いておくのが運用の前提になります。
💡 再起動後の確認: 復旧できているかは 03 PC側ヘルスチェック の ss -tlnp | grep :22 で sshd LISTEN を確認すればOK。
3. Termux で tmux の Ctrl+B を打つには
スマホのソフトキーボードには Ctrlキーがありません。02章の全手順(Ctrl+B → D 等)は Termux の修飾キー割り当てで代用します。
Termuxの修飾キー対応表
| PCでの入力 | Termuxでの入力 |
|---|---|
Ctrl + B |
音量下 + B |
Ctrl + C |
音量下 + C |
Alt + ? |
音量上 + ? |
Esc |
音量上 + e |
Tab |
音量上 + t |
つまり tmuxのデタッチ(Ctrl+B → D)は「音量下+B → 離す → D」 で行います。
拡張キーボードバーを出す(推奨)
Termuxは画面上部に 拡張キーボードバー(Ctrl/Alt/Esc/Tab/方向キー等の特殊キー)を表示できます。
- 音量上 + Q を押す → バーの表示/非表示切り替え
- バーの
CTRLをタップしてからBを押せば Ctrl+B 相当
💡 物理キーボードをBluetooth接続すれば、PCと同じように普通に Ctrl+B が打てます。長時間作業なら有力な選択肢です。
4. モバイル回線で接続が切れないようにする(KeepAlive)
移動中の電波切替や一時的な通信断で、SSH接続が頻発切断するのを防ぎます。
スマホ側(Termux)の設定
Termuxの ~/.ssh/config を作成・編集:
mkdir -p ~/.ssh && cat >> ~/.ssh/config <<'EOF'
Host 100.115.156.98
ServerAliveInterval 60
ServerAliveCountMax 3
EOF
chmod 600 ~/.ssh/config
60秒ごとにkeepaliveパケットを送り、3回連続で応答がない時だけ切断判定します。NATタイムアウトやモバイル回線の一時断で切れにくくなります。
💡 PC側(/etc/ssh/sshd_config の ClientAliveInterval 60)でも同様に設定できますが、スマホ側だけで十分です。PC側は全クライアントに影響するため、まずはスマホ側で試しましょう。
5. IP変動を気にしない運用(MagicDNS)
概要で「Tailscale IPは変動する場合がある」と注記しましたが、MagicDNS を使えばデバイス名で接続できIP変動を気にしません。
設定手順
- Tailscale管理画面( https://login.tailscale.com/admin/dns )で MagicDNS を有効化(通常はデフォルト有効)
- デバイス一覧で自PCの デバイス名 を確認(例:
win-e2iavn1esmh、分かりやすい名前に変更も可能) - 以降はIPでなくデバイス名で接続:
ssh yn4416@win-e2iavn1esmh
⚠️ Termux側でMagicDNSの名前解決が効くかは環境依存です。繋がらない場合は従来通りIP(100.115.156.98)を使用してください。IPは各デバイスのTailscaleアプリで確認できます。
まとめ — 事前にやっておくチェックリスト
| やること | 章节 |
|---|---|
鍵に識別コメントを付ける(-C "端末名") |
本章 1 |
sshd 自動起動を有効化(systemctl enable ssh) |
本章 2 |
| Tailscale の自動起動を確認 | 本章 2 |
Termuxで 音量上+Q から拡張キーボードバーを出す |
本章 3 |
Termuxの ~/.ssh/config に KeepAlive 設定 |
本章 4 |
| MagicDNS 有効化+デバイス名接続 | 本章 5 |
関連
- 00 概要 — 前提条件・デバイス一覧
- 01 初回セットアップ — 蓋閉じスリープ防止(再起動運用の前提)
- 02 毎回の手順 — TermuxのCtrl+B対応は本章 3 を参照
- 03 PC側ヘルスチェック — 再起動後のsshd LISTEN確認
- 04 トラブル対応 — よくあるエラーと対処法