WindowsのPC内のVS CodeからSSH設定と秘密鍵を使い、接続先サーバーへつながる構成

サーバーへのSSH接続には、これまでTera Termを使っていました。
VS Codeでも接続できるのであれば、使うツールをVS Codeにまとめたいと考え、レンタルサーバーへのSSH接続に使ったことがあります。

ただ、接続の設定や操作は、時間がたつと忘れてしまいそうです。
そこで、設定ファイルの場所と接続先の選び方を、次回も確認できるようにまとめることにしました。
この記事では、WindowsのVS Codeで既存のSSH設定を確認し、Remote – SSHで接続する手順を紹介します。

Remote – SSHは、SSH接続先のファイルをVS Codeで開いて作業するための拡張機能です。
対象は、Microsoftの「Remote – SSH」をインストールして有効にし、接続先のSSH設定と認証用の鍵を用意済みの方です。
鍵の新規作成や、サーバー側でSSHを有効にする手順は扱いません。
環境と手順は2026年10月時点のものです。

まずSSHの設定ファイルを開く

設定の場所を忘れたときは、エクスプローラーで探すより、VS Codeのコマンドパレットから開くと見つけやすくなります。
接続先のサーバーにログインしなくても、ローカルの設定は確認できます。

  1. Windows側のVS Codeを開きます。
  2. Ctrl + Shift + Pでコマンドパレットを開きます。
  3. Remote-SSH: Open SSH Configuration File...を検索して選びます。
  4. 表示された候補から、SSH設定ファイルを開きます。 選ぶファイルが分からない場合は、下の説明で保存場所を確認してください。

Windowsのユーザーフォルダーに置いている場合、パスは次の形になります。
Windowsユーザー名は自分のユーザー名に読み替えてください。

C:\Users\Windowsユーザー名\.ssh\config

別のファイルを指定していることもあります。
候補から判断できない場合は、Ctrl + ,で設定を開き、remote.SSH.configFileを検索します。
パスが指定されていれば、それがVS Codeで使用する設定ファイルです。

指定がない場合は、まず候補にある自分のWindowsユーザーフォルダーの.ssh\configを開き、使いたい接続先のHostが書かれているか確認します。
例えばHost my-serverがあれば、そのファイルにmy-serverという接続名が登録されています。
該当する設定が見つからない場合は、この段階で新しい設定を作らず、以前使っていた設定ファイルの保存場所を確認してください。

コマンド自体が見つからない場合は、拡張機能の画面でMicrosoftの「Remote – SSH」がインストールされ、有効になっているかを確認してください。

接続名と、実際のサーバー情報を見分ける

SSH設定は、接続先ごとにHostでまとめられています。
次は説明用の例で、ホスト名・ユーザー名・鍵の名前は実際の設定とは異なります。

Host my-server
    HostName server.example.com
    User server-user
    Port 10022
    IdentityFile ~/.ssh/server.key
項目 この例での意味
Host 接続先を選ぶときの名前。例ではmy-server
HostName 実際に接続するサーバーのホスト名
User サーバーにログインするユーザー名
Port SSHの接続ポート。契約先の指定に合わせる
IdentityFile 認証に使う秘密鍵ファイルの場所

この例では、VS Codeの接続メニューでmy-serverを選ぶと、表の接続情報が使われます。
IdentityFileには鍵の保存先を書き、秘密鍵の内容を貼り付けるわけではありません。

この記事では、Windows側のVS Codeから接続するため、Windows側に保存したSSH設定と鍵を使います。
設定例の~は、SSHを実行するユーザーのホームフォルダーを表します。
Windowsの標準的な保存場所では、~/.ssh/server.keyはC:\Users\Windowsユーザー名\.ssh\server.keyに当たります。

保存した接続先をVS Codeで開く

接続名が分かれば、次回はコマンドパレットから選んで接続できます。

  1. Ctrl + Shift + Pを押します。
  2. Remote-SSH: Connect to Host...を選びます。
  3. 設定に書かれている接続名を選びます。 上の例ならmy-serverです。
  4. 接続先のOSを尋ねられた場合は、実際のOSを選びます。
  5. VS Code左下のステータスバーに、SSH: my-serverのように接続先が表示されることを確認します。 my-serverの部分は選んだ接続名です。
  6. 接続先のファイルを開く場合は、「ファイル」メニューのフォルダーを開く項目から、サーバー上の目的のフォルダーを選びます。

初回のホスト鍵確認が表示された場合は、サーバー管理者や契約先が案内する情報と照合します。
鍵のパスフレーズを設定している場合は、入力を求められることがあります。

接続先でファイルの編集などの機能を使うために、Remote – SSHはサーバー側に補助プログラムを用意します。
これがVS Code Serverです。
初回の準備にはダウンロードが伴うため、SSHでログインできても、この準備の段階で止まる場合があります。
接続が完了しない場合は、次の手順で設定とログを確認します。

接続できないときは、設定とログを確認する

接続に失敗したら、まずHostName・User・Portが接続先の案内と一致しているか、IdentityFileの場所に鍵があるかを見直します。

WindowsのPowerShellから接続を切り分ける場合は、同じ接続名を使えます。

ssh my-server

VS Codeで別の設定ファイルを指定している場合は、PowerShell側でも-Fでそのファイルを指定します。

ssh -F "C:\Users\Windowsユーザー名\.ssh\config" my-server

これは実際にサーバーへ接続するコマンドです。
ログインできたらexitで終了できます。

ターミナルでは接続できるのにVS Codeで失敗する場合は、VS Codeの「表示」→「出力」を開き、一覧から「Remote – SSH」を選んでログを確認します。
認証に関するエラーか、VS Code Serverの準備中のエラーかなど、ログに示された処理とエラー内容を手掛かりに原因を調べます。

まとめ

WindowsのVS Codeでは、SSH設定ファイルを開いてHostの接続名を確認し、Remote-SSH: Connect to Host...から選ぶことで、保存済みの接続先へ接続できます。
接続後は、左下に目的の接続先が表示されているか確かめます。

設定の場所が分からないときはremote.SSH.configFile、接続できないときは接続情報・鍵の保存場所と「Remote – SSH」のログが確認の手掛かりになります。

手順の詳細は、VS Code公式のRemote – SSHガイドと接続トラブルの確認方法を参照してください。