Visual Studio Code - remote SSH

(2021.4.2 - 2022.8.13)

Visual Studio CodeでLinuxマシンのファイルを編集する方法。

インストール

Visual Studio Codeの左端のExtensionsアイコン(小正方形3+1個のアイコン)をクリックし,Search Extensions欄にremote sshと入れて,Remote SSHを検索して,インストールする。

設定

Visual Studio Codeの左端のRemote Explorerアイコン(ターミナル🖥アイコン)をクリックし,SSH TARGETS横の⚙をクリックして,SSH Configuration fileを選ぶ。このファイルに接続したいSSHホストを以下のように記述する。ホストは何個でも記述できる。

Host ニックネーム1

HostName ホスト名1

User ユーザ名1

IdentityFile 秘密鍵ファイル名1


Host ニックネーム2

HostName ホスト名2

User ユーザ名2

IdentityFile 秘密鍵ファイル名2


Host ニックネーム3

HostName ホスト名3

User ユーザ名3

IdentityFile 秘密鍵ファイル名3

ProxyCommand C:\Windows\System32\OpenSSH\ssh.exe -W %h:%p ニックネーム2

ここで,

  • ニックネームn:接続ホスト先ホストを表すニックネーム。kilin など。

  • ホスト名n:ホスト名。kilin.kitasato-u.ac.jp など。

  • 秘密鍵ファイル名n:ホスト名nに公開鍵認証でログインするための秘密鍵ファイルをフルパスで指定する。C:\Users\hiroshi\keys\id_rsa2 など。この行がないとパスワードログインになる。

  • ProxyCommand:例のように指定すると,ニックネーム2のホストを経由してログインする。ホスト名3に直接ログインできない場合などに使用する。

使い方

設定ファイルを保存すると,右の図のように,SSH TARGETの下にニックネームが羅列される。

  1. 接続したいホストにマウスカーソルを合わせ,

    • 右端に出るターミナル型アイコンをクリックする。新しいウインドウが開いてそのホストに接続される。

    • または,右クリックしてOpen on SSH Host in Current Windowを選択すると,現在のウインドウでそのホストに接続される。この場合,次回起動時に,接続状態が再構築される。

  2. はじめて接続するとホストのプラットフォーム(Linuxなど)を聞かれるので,適宜選択する。

  3. このウインドウはホストで動いているように振る舞う。例えば,[File]-[Open]すると,ホストのファイルを開くことができる。[File]-[Open Folder]ではホストのフォルダを開くことができる。

  4. [View]-[Terminal]でホストのターミナルを開くことができる。

  5. 接続時のディレクトリを選ぶことはできないようなので,ホームディレクトリによく使うディレクトリへのシンボリックリンクを張っておくとよい。

  6. 接続された状態では,VSCodeのエクスプローラーがSCPクライアントになる。つまり,ファイルをドラッグ&ドロップすると,ファイルのアップロード/ダウンロードできる。