289
252

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Visual Studio Code で Remote SSH する。

Last updated at Posted at 2020-03-02

VS Code で Remote SSH

VS Code で Remote SSH する方法を記載しておきます。

はじめに

本家のチュートリアルは以下のサイトにあります。

要約

IMG_0106.JPG

やったこと

1. VS Code に Remote SSH の拡張機能をインストール

拡張機能のボタンをクリックし、Remoteと入力。表示された Remote-SSH をインストールする。
スクリーンショット 2020-03-02 12.45.33.png
すると、以下のようなマークが左下に「><」が表示されることを確認する。
スクリーンショット 2020-03-02 12.53.14.png

2. VS Code を利用しているマシンで SSH Key を作成

ssh-keygen を使って、公開鍵と秘密鍵のペアを作成する。
今回は" ssh-keygen -t rsa -b 2048 -f ~/.ssh/kazuma_konosuba"を実行し、公開鍵と秘密鍵を作成。
スクリーンショット 2020-03-02 19.27.00.png

3. 接続先サーバーの /home/user名/.ssh/authorized_keys に公開鍵の内容を入力

接続先に公開鍵を登録する。authorized_keys は権限変更しておく。
(権限変更しないと ssh 実行時にログインできない。log は /var/log/secure あたりに吐かれる)
スクリーンショット 2020-03-02 20.00.08.png

4. VS Code を利用しているマシンの ssh config に ssh 接続情報を追加

/Users/ユーザ名/.ssh/config に以下の内容を追加する。

config
# Host kazuma@aqua-konosuba
Host kazuma
  HostName 127.0.0.1
  User kazuma
  Port 2222
  UserKnownHostsFile /dev/null
  PreferredAuthentications publickey
  StrictHostKeyChecking no
  PasswordAuthentication no
  IdentityFile /Users/ユーザ名/.ssh/kazuma_konosuba
  IdentitiesOnly yes
  LogLevel FATAL

[追記]VS Code で ssh-add 秘密鍵へのパスをしないと接続できない

$ ssh-agent
$ ssh-add -l
The agent has no identities.
$ ssh-add -K /Users/ユーザ名/.ssh/kazuma_konosuba
$ ssh-add -l
2048 SHA256:XXXXXXXXXXXXXXXXX ユーザ名@VS Code 利用しているマシン名(RSA)

5. VS Code で SSH 接続する

  1. VS Code の左下の「><」をクリック
    スクリーンショット 2020-03-02 12.53.14.png
  2. Connect to Host. をクリック
    スクリーンショット 2020-03-02 20.11.16.png
  3. SSH接続情報に記載した Host 名をクリック
    スクリーンショット 2020-03-02 20.11.35.png
  4. 新しく VS Code のウィンドウが立ち上がる。左下に接続先のホスト名が表示される。
    スクリーンショット 2020-03-02 20.11.47.png
  5. あとはお好みでリモート先の VS Code で使う拡張機能をインストールする
    スクリーンショット 2020-03-02 20.12.13.png

おわりに

いくつかの罠があったので、はまったところと調査方法を箇条書きで。

  • config の hostname に @ がつくと VS Code の Remote-SSH は使えない。
    例えば kazuma@aqua-konosuba みたいな名前にしていると、VS Code ではうまくいかない。
    なお、ssh コマンドでは接続できる模様。
  • ssh で接続でうまくいかなかったときは、 ssh -vvv ホスト名 で接続しに行くと詳細な情報が表示される。
  • サーバー側では、/var/log/secure に ssh 接続に関する情報が表示される。
  • Vagrant で立ち上げたマシンが利用している port 番号は Vagrant port で確認できる。

以上です。

289
252
5

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
289
252

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?