VSCodeからSSH接続をする方法

VSCodeからSSH接続

VSCodeからリモートホストへSSH接続が出来るようになると色々と捗ります。

VSCodeからリモートホストへSSH接続を行うためには、VSCodeの拡張機能である「Remote Development」をインストールする必要がありますので、そのインストール方法やSSH接続用の設定について記述していきます。

ちなみに「Remote Development」拡張機能には下記の機能が含まれています。

  • Remote – SSH
  • Remote – SSH:Editing Configuration Files
  • Remote – WSL
  • Remote – Containers

インストール

VScodeを起動し、画面上部のメニューから「表示」-「拡張機能」と選択します。

拡張機能のマーケットプレースで「Remote Development」を検索し、表示された「Remote Development」欄に表示されている「インストール」ボタンをクリックしてインストールを行います。

インストールが完了すると、下記項目が「インストール済み」と表示されます。

  • 「Remote – WSL」
  • 「Remote – Containers」
  • 「Remote – SSH」
  • 「Remote – SSH:Editing Configuration Files」

また、「Remote Development」の説明画面にも「アンインストール」と表示されて、インストール済みであることが確認できます。

SSH接続設定

「Remote Development」のインストールが完了すると左側のメニューに「リモート エクスプローラー」アイコンが表示されるのでクリックし、「リモート エクスプローラー」のメニューから「SSH Targets」を選択し、歯車アイコンをクリックします。

「Select SSH configuration file to update」メニューが表示されるので、SSH接続用の設定を行うファイル指定します。

編集する設定ファイルは、表示されている下記のどちらかを選べば良いです。

  • C:\Users\ユーザ名\.ssh\config
  • C:\ProgramData\ssh\ssh_config

今回は「C:\Users\ユーザ名\.ssh\config」を選択しました。

設定ファイル作成

「config」画面が開かれるので、下記の書式でSSH接続用の設定を作成していきます。

Host ホスト名(接続先表示用)
    HostName 接続先IPアドレスorホスト名
    User ログインユーザ
    Port 22(接続用ポート番号を変更している場合はその番号を設定)
    IdentityFile 秘密鍵(SSH接続に鍵認証方式を使用している場合に設定)

設定を編集し終わりましたら「Ctrl」+「s」または、画面上部のメニューから「ファイル」-「保存」を選択して保存してください。

保存が完了すると「SSH TARGETS」の部分に、設定ファイルの「Host」に設定したホスト名が表示されます。

複数の接続先を設定する場合は、一行開けて接続先の設定を追記してください。

リモートホストへの接続

接続先の選択

SSHでリモートホストへ接続するには、「SSH TARGETS」に表示されている接続先のリモートホストをクリックするか、マウスカーソルをあわせるとことで右側に表示される接続用ウインドウを開くためのアイコンをクリックすることで、接続用の新しいウィンドウが表示されてSSH接続が開始されます。

右クリックからでも接続できます

接続するリモートホストを右クリックすることで、「Connect to Host in Current Window」(現在のウィンドでホストに接続)と「Connect to Host in New Window」(新しいウィンドウでホストに接続)の好きな方を選んで接続することもできます。

初回接続時について

リモート接続先に初めて接続する際には、接続先ホストOSの種類を聞かれるので、該当するものを選択します。

続いてこちらも初回のみですが、接続するホストの「fingerpirnt」を追加するかの確認が行われるので「Continue」を選択します。

また、初回接続時にはリモートホスト側にVSCode接続用のデータをインストールするため、接続までに若干時間が掛かります。

パスワードの入力

SSH接続を行う際、下記の場合パスワード(パスフレーズ)の入力が必要になります。

  • 鍵認証方式で接続す時に使用する秘密鍵にパスフレーズが設定されている場合
  • パスワード認証で接続する場合

秘密鍵にパスフレーズが設定されている場合

鍵認証方式でリモートホストにSSH接続する際、秘密鍵にパスフレーズが設定されていると「Enter passphrase for ssh key」と表示されて、パスフレーズを入力する画面が表示されます。

その場合は、秘密鍵に設定してあるパスフレーズを入力する必要があります。

秘密鍵にパスフレーズが設定されていな場合は、このパスフレーズ入力の工程は表示されません。

パスワード認証で接続する場合

SSHの接続をパスワード認証で行っている場合は「Enter password for ユーザ名@ホスト名またはIPアドレス」と表示されるので、ログインするユーザのパスワードを入力する必要があります。

接続の確認

リモートホストに接続すると、右下のアイコンに接続したホストが表示されます。

ターミナルの表示

SSHで接続されたことが確認できましたら、画面上部のメニューから「ターミナル」-「新しいターミナル」または「Ctrl」+「Shift」+「@」で新しいターミナルを表示させます。

これでSSHで接続されたリモートホストのターミナルが表示されるようになります。

SSH接続の切断

SSHの接続を切断する場合は画面右下のSSH接続状態を示している部分をクリックし、表示されるメニューから「リモート接続を終了する」を選択することで、SSH接続を切断することが出来ます。

鍵認証方式SSHについて

接続先SSHサーバでの鍵認証方式の設定方法や、鍵の作成方法については下記ページで説明しているので参考にしてみてください。

SSH鍵認証について sshの接続には、通常のユーザ名とパスワードによる認証方式「パスワード認証」以外にも、公開鍵、秘密鍵と呼ばれ...

シェアする