VSCodeからSSH接続をする方法

VSCodeからSSH接続

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

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

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

  • 「Remote Development」
  • 「Remote - SSH」
  • 「Remote Explorer」
  • 「Remote - SSH:Editing Configuration Files」
  • 「WSL」

インストール

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

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

インストールが完了すると、下記の拡張機能がインストール済みとなり「歯車アイコン」が表示されます。

  • 「Remote Development」
  • 「Remote - SSH」
  • 「Remote Explorer」
  • 「Remote - SSH:Editing Configuration Files」
  • 「WSL」

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

SSH接続設定

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

リモート(トンネル/SSH)のメニューが表示されるので、SSHの横にある「歯車アイコン」をクリックします。

「更新するSSH構成ファイルを選択する」メニューが表示されるので、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接続に鍵認証方式を使用している場合に設定)

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

下記は設定ファイルの作成例です。

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

Host ubuntu01 
    HostName 192.168.1.1
    User tamohiko
    Port 22
    IdentityFile C:\Users\ユーザ名\.ssh\id_ed25519_01

Host ubuntu02 
    HostName 192.168.1.2
    User tamohiko
    Port 22
    IdentityFile C:\Users\ユーザ名\.ssh\id_ed25519_02

設定の反映

設定ファイルの作成が終わったら、リモート(トンネル/SSH)部分にカーソルを持っていくと更新アイコンが表示されるので、クリックして作成した設定ファイルの情報を反映させてください。

設定の保存と反映が終わったあとに「SSH」部分をクリックすると、設定ファイルの「Host」に設定したホスト名が表示されます。

リモートホストへの接続

接続先の選択

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

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

接続するリモートホストを右クリックすることで、「現在のウィンドウで接続」と「新しいウィンドウで接続」の選択項目が表示されるので好きな方を選んで接続することもできます。

初回接続時について

リモート接続先に初めて接続する際に、VSCodeが自動的に接続先ホストOSの種類を判別できない場合、手動でホストOSの種類を選択してあげてください。

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

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

パスワードの入力

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

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

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

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

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

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

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

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

接続の確認

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

ターミナルの表示

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

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

SSH接続の切断

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

鍵認証方式SSHについて

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

https://www.server-memo.net/server-setting/ssh/ssh-key.html

コメント

タイトルとURLをコピーしました