スマホに以下のアプリをインストールしておくとスマホからローカルPCに接続して開発ができる。
🧭 全体構成(まず理解)
●iPhone
├ Tailscale(VPN接続)
└ Termius(SSH接続)
↓
インターネット(暗号化)
↓
●Mac
├ Tailscale(受信)
└ SSHサーバー
🟦 STEP 1:Mac に Tailscale を入れる
🔹 ① ダウンロード
Tailscale 公式サイトからMac版をダウンロード



🔹 ② ログイン
- Google / Apple / Microsoft のいずれかでログイン
- 同じアカウントをiPhoneでも使う
🔹 ③ 接続確認
メニューバーに
✔ Connected と表示されればOK
🟩 STEP 2:Mac の SSH を有効化
🔹 ① システム設定
システム設定 → 一般 → 共有
「リモートログイン」をON



🔹 ② 確認
ターミナルで:
sudo systemsetup -getremotelogin
→ Remote Login: On ならOK
🟨 STEP 3:iPhone に Tailscale を入れる
App Store から:
Tailscale をインストール



4
🔹 ログイン
Macと同じアカウント
→ Connected 表示になればOK
🟥 STEP 4:Mac 側で SSH鍵を作る(重要)
Macで:
ssh-keygen -t ed25519 -C "your-email"
Enter連打OK
※パスフレーズは必ず設定
生成場所:
~/.ssh/id_ed25519
🟪 STEP 5:iPhone に Termius を入れる
App Store から:
Termius をインストール



4
🟫 STEP 6:Termius 設定
🔹 ① Host追加
- Host:MacのTailscale IP
(例:100.x.x.x) - Username:Macのユーザー名
- Auth:Key
🔹 ② 鍵登録
Macで公開鍵を表示:
cat ~/.ssh/id_ed25519.pub
これをMacの
nano ~/.ssh/authorized_keys
に貼り付ける
🟩 STEP 7:接続テスト
iPhone → Termius → Connect
成功すれば
Macのターミナルが表示されます 🎉
🛡️ 安全設定(必須)
✔ Mac 側
sudo nano /etc/ssh/sshd_config
変更:
PasswordAuthentication no
→ パスワードログイン禁止
✔ Tailscale 側
管理画面で:
- 不要デバイス削除
- MFA有効
- ACL設定
🚀 完成後に出来ること
iPhoneから:
tmux attach
claude
flutter build
👉 外出先開発可能
🎯 あ
ssh username@Mac
と同じ意味です。
■ 例
Macのユーザー名が
mothusi
なら
Termius
Username = mothusi
にします。
■ ユーザー名が違う場合
例えば
Termius
Username = admin
と設定した場合
Mac側に adminユーザーが存在しないと
接続時に
Permission denied
または
User admin not allowed
というエラーになります。
■ 正しいユーザー名の確認方法(Mac)
Macでターミナルを開いて
whoami
結果例
mothusi
これが SSH Username です。
■ もう一つの確認方法
Mac
システム設定
↓
一般
↓
共有
↓
リモートログイン
ここに
ユーザ名でログイン
と表示されます。
■ よくあるミス
Macの表示名
Mothusi
と
ユーザー名
mothusi
は 別物です。
SSHは
👉 ユーザー名(短い名前)
を使います。
■ SSHログインの仕組み
実際はこのコマンドと同じです
ssh mothusi@100.x.x.x
ここで
mothusi
が Username です。
■ まとめ
| 設定 | 内容 |
|---|---|
| Username | Macのユーザー名 |
| 違う場合 | ログイン失敗 |
| 確認方法 | whoami |
■ 次の重要ポイント
この後の設定で 一番つまずくのはここです👇
Host(IPアドレス)
ここは TailscaleのIPを入れる必要があります。
もしよければ
Macでこのコマンドを実行してください
tailscale ip -4
出てきた 100.xxx.xxx.xxx を教えていただければ
Termius設定を完全な形で案内できます。
念の為にこのユーザー名の確認方法を教えてください。
もちろんです 👍
Mac の SSH用ユーザー名(Username) を確認する方法は、次の方法が確実です。
一番簡単な方法から説明します。
方法①(最も簡単・おすすめ)
Macで ターミナル を開いて、次のコマンドを入力します。
whoami
例:
mothusi
この 表示された文字が SSH の Username です。
つまり Termius では
Username = mothusi
になります。
方法②(Finderで確認)
- Finder を開く
- 左側の「ホーム」をクリック
表示されるフォルダ名がユーザー名です。
例
/Users/mothusi
この場合
mothusi
がユーザー名です。
方法③(システム設定)
- システム設定
- 一般
- 共有
- リモートログイン
ここに
ssh mothusi@MacのIP
のような表示があります。
この
mothusi
がユーザー名です。
注意(ここが重要)
Macには 2種類の名前 があります。
| 名前 | SSHで使う? |
|---|---|
| 表示名(フルネーム) | ❌使わない |
| アカウント名(短い名前) | ✅使う |
例
| 表示名 | SSH Username |
|---|---|
| Mothusi | mothusi |
SSHでは 小文字のアカウント名 を使います。
確認後の設定(Termius)
Termiusの設定
Host: 100.xxx.xxx.xxx ← Tailscale IP
Username: mothusi ← 今確認した名前
Port: 22
もしよければ次に
Macで SSH が有効になっているか確認する方法
(これをやらないと接続できない)
も説明できます。
同じく「Auth:Key」の項目がありません。パスワードは何を入力しますか?MacPCのログインパスワードですか?
はい、状況としては正常です 👍
「Auth: Key」が見えない場合は、まずパスワードログインで接続できます。
結論から言うと👇
👉 入力するパスワードは Mac のログインパスワードです。
■ Termius の設定(まずは簡単な方法)
Host設定は次のようにします。
Host : 100.xxx.xxx.xxx ← Tailscale IP
Port : 22
Username : Macのユーザー名
Password : Macログインパスワード
例
Host : 100.101.23.45
Username : mothusi
Password : Macのログインパスワード
■ なぜMacのパスワードなのか
SSHは基本的に
ssh username@IPアドレス
でログインします。
つまり
ssh mothusi@100.xxx.xxx.xxx
この時に求められるパスワードは
👉 Macのユーザーパスワード
です。
■ Auth: Key が出ない理由
Termiusでは
- Hostを作る
- 接続する
と 初回はパスワードログインになります。
その後
Keys
を追加すると
Auth → Key
が選択できます。
■ 今の段階でおすすめ
まず パスワード接続で成功させることです。
成功すると
iPhoneから
Macターミナル
が表示されます。
■ 接続成功するとこうなります
Last login: ...
mothusi@MacBook ~ %
これが出れば成功です。
■ 接続できない場合の原因
よくあるのはこの3つです。
1️⃣ Macで リモートログインがONになっていない
システム設定
↓
一般
↓
共有
↓
リモートログイン
ONにする
2️⃣ Usernameが違う
確認
whoami
3️⃣ Tailscaleが接続されていない
確認
tailscale status
■ セキュリティ(後でやる)
本当は
SSH鍵ログイン
が安全です。
ただし
まず
パスワード接続
で動作確認するのが正しい手順です。
■ 次のステップ(接続成功後)
接続できたら
tmux
claude
まで進めます。
もしよければ
次の画面(TermiusのHost設定)を見せていただければ
間違いがないかチェックできます 👍
「PasswordAuthentication no」の頭の#は付与したままで問題ないですか?
いい質問です。ここは 非常に重要なポイントです。
結論👇
👉 # は外してください。
■ なぜか
SSH設定ファイルでは
# から始まる行 = コメント(無効)
つまり
#PasswordAuthentication no
は 設定が無効です。
SSHはこの行を 無視します。
■ 正しい設定
PasswordAuthentication no
こうします。
■ 例(よくある状態)
修正前
#PasswordAuthentication yes
修正後
PasswordAuthentication no
■ 編集手順(安全な方法)
Macで
sudo nano /etc/ssh/sshd_config
探します
PasswordAuthentication
もし
#PasswordAuthentication yes
なら
次に変更
PasswordAuthentication no
■ 保存方法
nanoでは
control + O
enter
control + X
■ その後(重要)
SSHを再起動します
sudo launchctl stop com.openssh.sshd
sudo launchctl start com.openssh.sshd
または
sudo systemsetup -f -setremotelogin off
sudo systemsetup -f -setremotelogin on
■ ただし重要(先に確認)
⚠ Termiusの接続が成功してから変更してください
理由
PasswordAuthentication no
にすると
👉 パスワードログインが完全禁止
になります。
つまり
SSH鍵ログインしかできない
状態になります。
■ 安全な順序(おすすめ)
① iPhone → Termius → パスワード接続成功
② SSH鍵を設定
③ その後に
PasswordAuthentication no
■ まとめ
| 状態 | OK? |
|---|---|
#PasswordAuthentication no | ❌ 無効 |
PasswordAuthentication no | ✅ 有効 |
■ もしよければ
あなたの環境だと ここから先が一番面白いところです。
実は
Tailscale + SSH + tmux + Claude
にすると
👉 iPhoneからAI開発環境にアクセス
できます。
希望があれば
**次の設定(tmux + Claude Code remote)**も説明できます 👍
Termiusの設定の最後で、「全てのアクセスを許容するか?」「xxxのみ許容するか」のようなダイアログが出たのですが、確認できないまま次の画面に進みました。セキュリティの問題があるようなら見直しt来のですが、どこで設定すればいいですか?
おそらくそれは Mac側の「リモートログイン(SSH)」のアクセス許可設定です。
Termiusの設定というより、macOSのSSHアクセス権限のダイアログが出た可能性が高いです。
後から macOS設定画面で簡単に確認・変更できます 👍
確認・変更する場所(Mac)
1️⃣ システム設定 を開く
2️⃣ 一般
3️⃣ 共有
4️⃣ リモートログイン
ここに SSH のアクセス設定があります。
表示される2つの選択肢
通常は次のどちらかになっています。
① すべてのユーザー
Allow access for: All users
意味
- Macに存在する全ユーザーがSSHログイン可能
② 次のユーザーのみ
Allow access for: Only these users
意味
- 指定したユーザーだけSSHログイン可能
セキュリティ的におすすめ
👉 「次のユーザーのみ」
そして
あなたのユーザー名(例: mothusi)
だけ登録します。
設定方法
「次のユーザーのみ」にして
+
を押す → 自分のユーザーを追加
安全度の比較
| 設定 | 安全性 |
|---|---|
| All users | △ |
| Only these users | ◎ |
ただし今回の環境では
あなたの構成は
iPhone
↓
Tailscale VPN
↓
Mac SSH
なので
外部から直接SSHは来ません。
つまり
- すでにVPNで保護されています
- リスクはかなり低いです
念のため確認するコマンド
Macターミナルで
sudo systemsetup -getremotelogin
結果
Remote Login: On
ならSSH有効です。
次に確認したいこと(接続成功に重要)
もしよければ Macでこのコマンドを実行して下さい。
tailscale ip -4
表示される
100.xxx.xxx.xxx
このIPが Termiusで接続するIPです。
もし接続がまだなら
「Tailscale + Termius接続の最終チェック(3分)」
も説明できます。
ここまで来ていれば あと少しでiPhoneからMac操作できます。
Iphoneからの接続を切断する方法を教えてください。地内に、接続できるのはターミナル操作だけで、他のアプリなどは不可ですね?
いいところまで設定できていますね 👍
質問を ①接続の切断方法 と ②iPhoneから何ができるか に分けて説明します。
① iPhone → Mac の接続を切断する方法
方法1(Termius側で切断)※一番簡単
Termiusの画面で
- 接続中のターミナル画面を開く
- 右上の ×(close) または Disconnect
- セッションが終了
これで SSH接続が切断されます。
方法2(ターミナルコマンド)
SSHセッション内で
exit
または
logout
これでも接続が終了します。
方法3(iPhone側でアプリ終了)
iPhoneの
Termiusアプリを閉じる
これでも接続は切れます。
② Mac側から強制切断する方法
Macターミナルで
接続確認
who
例
mothusi ttys000
切断
pkill -KILL -t ttys000
③ Tailscale接続を切る方法
SSHではなく VPN接続自体を切る場合
iPhoneの
Tailscaleアプリ
Connected → OFF
これで Macにアクセスできなくなります。
④ iPhoneから何ができるか
結論:
👉 基本はターミナル操作のみです。
つまり
できること
・ファイル操作
・git
・flutter build
・claude code
・tmux
・サーバー管理
できないこと
・Macの画面操作
・GUIアプリ操作
・Finder操作
・ブラウザ操作
⑤ ただし例外
CLIで起動できるものは可能です。
例えば
open -a Safari
で Mac側のSafariを起動できます。
ただし 画面はiPhoneには表示されません。
⑥ GUI操作したい場合
その場合は SSHではなく
- Chrome Remote Desktop
- Microsoft Remote Desktop
- VNC
などを使います。
ただし
セキュリティ
速度
安定性
の面で SSHの方が圧倒的に安全です。
⑦ 今の構成(あなたの環境)
あなたは今
iPhone
├ Tailscale
└ Termius
↓
Mac
├ SSH
└ tmux / claude
という かなり安全なリモート環境になっています。
もしよければ次に
ここまで出来ているなら
開発者がよくやる次のステップがあります。
実は
tmux + claude + iPhone
にすると
👉 iPhoneからAI開発環境を操作
できます。
必要なら
その設定(10分)も説明できます。
Tailscale、termiusの設定が終わりましたが、アクセス確認もできましたが、MacBookを閉じた状態では利用できません。対策絵お教えてください。
原因はシンプルで、MacBookのフタを閉じるとMacがスリープ状態になるためです。
スリープになると
- SSHサーバー停止
- Tailscale停止
- ネットワーク切断
になるため iPhoneから接続できなくなります。
これは正常な動作です。
対策は3つあります👇
方法① Macをスリープさせない(おすすめ)
Macの設定で 画面を閉じてもスリープしないようにする 方法です。
Macで
システム設定 → バッテリー
設定:
ディスプレイをオフでもスリープしない
さらに
電源アダプタ接続時
↓
コンピュータのスリープ:しない
にします。
方法② Amphetamineアプリを使う(開発者の定番)
無料アプリ
Amphetamine
これを使うと
フタを閉じてもスリープしない
設定ができます。
メリット
- ワンクリックでON/OFF
- スリープ防止
- 開発者の定番
App Storeで検索
Amphetamine
方法③ クラムシェルモード(上級)
Macを
- 電源接続
- 外部モニター接続
- キーボード接続
にすると
フタ閉じたまま動作
できます。
ただしこれは 自宅据え置き向けです。
開発用途ならおすすめ
あなたの構成は
iPhone
↓
Tailscale
↓
SSH
↓
Mac
なので
Amphetamine + 電源接続
が一番安定します。
さらに便利な設定(おすすめ)
Macで
tmux
を使うと
iPhone接続が切れても
作業継続
できます。
例
tmux new -s dev
まとめ
MacBookを閉じると接続できない理由
スリープ
対策
1️⃣ スリープ無効
2️⃣ Amphetamine(おすすめ)
3️⃣ クラムシェルモード
もしよければですが、
あなたの環境(Claude Code + Tailscale + SSH)なら
もう一歩で「外出先からAI開発環境」になります。
次にやると便利なのは
- tmux自動起動
- Claude Code remote操作
です。
希望あれば 最強構成(5分設定) を説明します 👍
最強構成を教えて下さい。
ここまで設定できているなら、かなり良いところまで来ています 👍
あなたの目的(iPhoneからMacの開発環境を使う)に最適な 「安定・安全・便利」な構成をまとめます。
最強構成(結論)
iPhone
├ Tailscale(VPN)
├ Termius(SSH)
│
│ SSH
▼
Mac
├ Tailscale
├ SSH
├ tmux(セッション管理)
└ Claude Code / 開発環境
これで
- 外出先でも開発
- 接続切れても作業継続
- セキュア
になります。
① tm
■ 全体の流れ(どこで詰まるか)
iPhone
↓
Tailscale(VPN)
↓
MacのTailscale
↓
SSH(22番ポート)
↓
tmux / shell
👉 このどこで止まっているかを見る
■ ① Tailscale接続確認(iPhone側)
まずここ
確認
Tailscale を開く
- Connected になっているか
- Macがリストに出ているか
NGパターン
- Not Connected → ❌
- Macが表示されない → ❌
対処
- OFF → ON
- アプリ再起動
- 再ログイン
■ 使えなかったケース
- クラムチェルモードにしてるけど、電源繋がっていない
- スリープ状態
→ caffeinateのコマンドでセッション継続
対策
- 困った際のコマンド
caffeinate -d -i -m -s & # ローカルPCとのセッションを継続
security unlock-keychain ~/Library/Keychains/login.keychain-db. # Claudeのログインを求められた際の一時的対応
