Windows11でのRemote-SSH接続が不安定なイライラにさようなら。Cursor・Windsurf・VS Code共通の設定で解決
「また接続が切れた...」
Windows11でのRemote-SSH開発、そのイライラにさようなら。Cursor・Windsurf・VS Code共通で使える3つの設定で、接続問題を根本から解決します。
環境・前提条件
- Windows 11 + Cursor / Windsurf / VS Code
- Remote-SSH 機能を使用(各IDEの対応する機能)
- SSH接続先サーバーへの接続情報
Remote-SSHとは?
Remote-SSHは、ローカルのエディタからリモートサーバー上のファイルを直接編集できる機能です。サーバー上で開発しながら、手元のIDEの快適さを維持できます。
メリット:
- ローカルと同じ快適な操作感
- サーバーの高性能リソースを活用
- チーム開発での環境統一
仕組み: IDEがSSH経由でサーバーに接続し、ファイル編集・実行を代行します。
イライラを解決する3つの設定
以下の設定を各IDEの settings.json
に追加することで、Windows特有の接続問題から解放されます。
{
// 1. 接続方式をターミナルモードに変更(Windows安定化の鍵)
"remote.SSH.useLocalServer": false,
// 2. ログイン画面をターミナルで表示(トラブル原因が見える)
"remote.SSH.showLoginTerminal": true,
// 3. 接続先OSを事前指定(毎回の確認ダイアログを排除)
"remote.SSH.remotePlatform": {
"your-server": "linux" // ← 実際のサーバー名に置き換える
}
}
settings.json の場所(Windows)
各IDEで設定ファイルの場所が異なります:
-
VS Code:
C:\Users\<ユーザー名>\AppData\Roaming\Code\User\settings.json
-
Cursor:
C:\Users\<ユーザー名>\AppData\Roaming\Cursor\User\settings.json
-
Windsurf:
C:\Users\<ユーザー名>\AppData\Roaming\Windsurf\User\settings.json
📝 settings.jsonファイルの編集方法
GUI経由での編集(推奨):
- 各IDEで
Ctrl+,
を押して設定画面を開く - 右上の⚙️アイコン「設定(JSON)を開く」をクリック
- 既存の設定の末尾(最後の
}
の前)に新しい設定を追加 - カンマで区切ることを忘れずに
- 保存後、IDEを完全に再起動
ファイルが存在しない場合: 初回は空の{}
から始まり、設定を追加すると自動作成されます。
重要: 必ずJSON形式を守ること(カンマ・カッコ・クォート)
なぜこの設定でイライラが解消されるのか?
useLocalServer: false
でWindows問題を回避
Windowsでは内部プロセス共有モードで接続が不安定になるバグがあります。ターミナルモードに切り替えることで、安定した接続を確保できます。
showLoginTerminal: true
でトラブル原因を可視化
接続失敗時のエラーメッセージがターミナルに表示されるため、なぜ切れたのかがすぐ分かります。もう「原因不明の接続エラー」でイライラすることはありません。
remotePlatform
で確認ダイアログを排除
接続先OS(linux
/windows
)を事前指定することで、毎回のOS選択ダイアログを省略。複数サーバーがある場合は:
"remote.SSH.remotePlatform": {
"your-web-server": "linux", // ← 実際のサーバー名に置き換える
"your-db-server": "linux", // ← 実際のサーバー名に置き換える
"your-windows-server": "windows" // ← 実際のサーバー名に置き換える
}
注意:
your-web-server
などは例です。実際のSSH設定ファイル(Windows:C:\Users\<ユーザー名>\.ssh\config
)のHost名に置き換えてください。
IDE別の特徴と注意点
Cursor での Remote-SSH
- 独自の Anysphere Remote-SSH 拡張機能を使用
- 重要: Microsoft製Remote-SSH拡張機能は完全に使用不可
- 改良された再接続ロジック: 従来の頻繁な切断問題を解決
-
拡張機能ID:
@id:anysphere.remote-ssh
で検索・インストール - 企業環境: HTTP_PROXY・HTTPS_PROXY完全対応
Windsurf(Windsurf - Next)での Remote-SSH
- 独自SSH実装が組み込み済み(Microsoft製ライセンス回避)
- **AI機能「Cascade」**がリモート環境でも動作
- 制限事項: Linux x64アーキテクチャのリモートホストのみサポート
- 未対応: SSH + Development Container機能(将来対応予定)
- 既知の問題: Cascade接続時に「Toggle Open Cascade」ボタンを複数回クリックが必要な場合あり
VS Code での Remote-SSH
- Microsoft純正 Remote-SSH 拡張機能を使用
- 最も標準的で安定したリモート開発環境
よくあるトラブルと解決法
症状 | 原因 | 解決方法 |
---|---|---|
接続が頻繁に切れる | ローカルサーバーモード |
useLocalServer: false に設定 |
エラー画面が出ない | GUI表示の問題 |
showLoginTerminal: true に設定 |
毎回OS選択を求められる | プラットフォーム未設定 |
remotePlatform を設定 |
設定したのに効かない | GUI設定とJSONの競合 | settings.json を直接編集 |
設定が反映されない場合のチェックリスト
- 各IDE を完全に再起動してください
-
GUI設定画面は使わず、必ず
settings.json
を直接編集 - JSON記法エラーがないか確認(カンマ忘れ・カッコ閉じ忘れなど)
- ファイルパスが正しいか確認(IDEごとに異なります)
さようなら、接続トラブルによるイライラ
この3つの設定により、「また切れた...」というストレスから解放されます。Windows + Remote-SSH の組み合わせが、快適で生産的な開発環境に変わります。
設定後も問題が続く場合は、SSH接続自体の設定(鍵認証・ネットワーク環境など)を確認してみてください。
今すぐ設定して、快適なリモート開発を始めましょう!
用語の説明
ローカルサーバーモード(useLocalServer: true):
- IDE内部でSSH接続を管理する方式
- Windows環境では不安定になりやすい
ターミナルモード(useLocalServer: false):
- 従来のSSHコマンドライン方式
- より安定した接続を提供
remotePlatform:
- 接続先OSの種類を指定(linux/windows/macOS)
- 自動判定の失敗を防ぐ
showLoginTerminal:
- SSH接続時のログを表示
- エラー原因の特定に有効
📝 執筆・校正について
この記事は筆者が自身の経験をもとに執筆し、Gemini Pro 2.5を使用して校正・文章改善を行いました。技術的な内容はすべて筆者の実体験に基づいており、AIは文章の読みやすさと構成の改善にのみ使用しています。
Discussion