外出先から自宅WSL(Claude Code環境)に接続するための手作業ガイドです。
ノートPCにTailscaleがインストール済みなら、自宅PCと同じアカウントでサインインしてください。
自宅PCと異なるアカウントだとネットワークが別になり、接続できません。Googleアカウント・Microsoftアカウント等、自宅PCと同じ方法でサインインしてください。
サインイン後、ノートPCのターミナルで接続確認:
tailscale status
自宅PCの名前(VivoS14hira)が一覧に表示されればOKです。
ping確認:
ping 100.124.4.35
応答があれば次のステップへ進みます。
既に鍵がある場合はスキップできます。以下で確認:
# 既存の鍵を確認
ls ~/.ssh/id_ed25519.pub
「No such file」と表示されたら、鍵を新規作成します:
ssh-keygen -t ed25519 -C "laptop-to-home-wsl"
質問されたらすべてEnterでOK(デフォルトパスにパスフレーズなしで作成)。
ssh-keygen -t ed25519 -C "laptop-to-home-wsl"
同様にすべてEnterでOK。
~/.ssh/id_ed25519(絶対に外部に出さない)~/.ssh/id_ed25519.pub(サーバーに登録する)ノートPCで生成した公開鍵を自宅PCに送ります。初回のみパスワード入力が必要です。
ssh-copy-id -i ~/.ssh/id_ed25519.pub kawag@100.124.4.35
Windowsパスワードを聞かれるので入力してください。
ssh-copy-id がないため、手動で登録します:
# 1. まず公開鍵の内容を表示してコピー
type $env:USERPROFILE\.ssh\id_ed25519.pub
表示された1行(ssh-ed25519 AAAA...で始まる)をすべてコピーします。
# 2. 自宅PCにSSH接続(パスワード入力が必要)
ssh kawag@100.124.4.35
Windowsのログインパスワードを入力。WSLのシェルに入ります。
# 3. WSL内で公開鍵を登録
mkdir -p ~/.ssh
echo "ここに先ほどコピーした公開鍵を貼り付け" >> ~/.ssh/authorized_keys
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
Windows の OpenSSH は管理者ユーザーの場合、~/.ssh/authorized_keys ではなく C:\ProgramData\ssh\administrators_authorized_keys を参照することがあります。
もし Step 5 でパスワードなしログインできない場合は、自宅PCのPowerShell(管理者)で以下を実行してください:
# PowerShell(管理者)@自宅PC
$pubkey = "ここにノートPCの公開鍵を貼り付け"
Add-Content -Path "C:\ProgramData\ssh\administrators_authorized_keys" -Value $pubkey
icacls "C:\ProgramData\ssh\administrators_authorized_keys" /inheritance:r /grant "SYSTEM:(F)" /grant "Administrators:(F)"
# 4. 登録完了したら切断
exit
~/.ssh/config ファイルに以下を追記します。これにより ssh home-wsl だけで接続できるようになります。
# ファイルを作成/編集
nano ~/.ssh/config
以下の内容を追記(ファイル末尾に貼り付け):
Host home-wsl
HostName 100.124.4.35
User kawag
IdentityFile ~/.ssh/id_ed25519
ServerAliveInterval 60
ServerAliveCountMax 3
保存後、パーミッションを設定:
chmod 600 ~/.ssh/config
# メモ帳でconfigファイルを開く(なければ新規作成)
notepad $env:USERPROFILE\.ssh\config
以下の内容を追記して保存:
Host home-wsl
HostName 100.124.4.35
User kawag
IdentityFile ~/.ssh/id_ed25519
ServerAliveInterval 60
ServerAliveCountMax 3
| 項目 | 値 | 説明 |
|---|---|---|
| Host | home-wsl | 接続時のエイリアス名 |
| HostName | 100.124.4.35 | 自宅PCのTailscale IP |
| User | kawag | Windowsのユーザー名 |
| IdentityFile | ~/.ssh/id_ed25519 | 秘密鍵のパス |
| ServerAliveInterval | 60 | 60秒ごとにキープアライブ送信 |
| ServerAliveCountMax | 3 | 3回応答なしで切断 |
ssh home-wsl
パスワードなしで自宅WSLのターミナルが開けば成功です。
Welcome to Ubuntu 24.04.4 LTS
kawag@VivoS14hira:~$
接続できたら、Claude Codeの動作確認:
# tmuxセッション開始(切断しても作業が維持される)
tmux new-session -s claude-work
# Claude Code起動
claude
Tailscaleアプリを開き、自宅PCと同じアカウントでサインインします。
コピーした公開鍵を自宅PCに登録する必要があります。ノートPCから自宅PCにSSH接続して以下を実行:
# ノートPCから自宅PCにSSH接続
ssh home-wsl
# スマホの公開鍵を追記
echo "ssh-ed25519 AAAA...(スマホの公開鍵)" >> ~/.ssh/authorized_keys
または、自宅PCのPowerShell(管理者)で:
$pubkey = "ssh-ed25519 AAAA...(スマホの公開鍵)"
Add-Content -Path "C:\ProgramData\ssh\administrators_authorized_keys" -Value $pubkey
| 項目 | 入力値 |
|---|---|
| Alias(表示名) | home-wsl |
| Hostname | 100.124.4.35 |
| Port | 22 |
| Username | kawag |
| Key | 先ほど作成した home-wsl キーを選択 |
「Save」で保存。
接続できたら:
# 既存のtmuxセッションに接続(ノートPCの作業を引き継ぎ)
tmux attach-session -t claude-work
# セッションがなければ新規作成
tmux new-session -s claude-work
tmux のプレフィックスは Ctrl+a に設定済みです(スマホのキーボードで操作しやすい)。
| 操作 | キー |
|---|---|
| 新しいウィンドウ | Ctrl+a → c |
| 次のウィンドウ | Ctrl+a → n |
| セッション切断(維持) | Ctrl+a → d |
| スクロール | 画面を指でスクロール(mouse on設定済み) |
ssh home-wsl で接続tmux attach-session -t claude-workCtrl+a → d でtmux切断# セッション一覧
tmux ls
# セッションに接続
tmux attach-session -t claude-work
# 新規セッション作成
tmux new-session -s 作業名
# セッション削除
tmux kill-session -t セッション名
| 症状 | 原因 | 対処法 |
|---|---|---|
Could not resolve hostname home-wsl |
~/.ssh/config が未設定 | Phase 2 Step 4 を確認 |
Permission denied (publickey) |
公開鍵が未登録 or 登録先が違う | Phase 2 Step 3 を再実行。 Windowsの管理者ユーザーの場合は administrators_authorized_keys に登録 |
Connection refused |
SSHサービスが停止 | 自宅PCのPowerShellでStart-Service sshd |
Connection timed out |
TailscaleがOFF | 自宅PC・接続元の両方でTailscaleをON |
| SSHは繋がるがWSLが起動しない | WSLがシャットダウンされた | 自宅PCでwsl --shutdown後wsl で再起動 |
| tmuxセッションがない | WSLが再起動された | tmux new-session -s claude-work で新規作成 |
ssh home-wsl で接続できるclaude コマンドが動くlogin.tailscale.com)でデバイス認証を有効化し、不明なデバイスからの接続を防ぐid_ed25519)は絶対に他人に共有しない