19
17

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

VSCode Remote SSH接続できない

Last updated at Posted at 2019-07-04

VSCodeでリモート開発やるぞ!

terminalからは繋がるのにVSCode Remoteでは...ssh繋がらない..orz

サーバーで開発するときにはvimで開発してるけど、

周りがVSCode使ってるし、Remote Development Kitでたからちょっとためしてみよう!
...sshつながらないじゃん

って人への対処方法2つまとめました。

症状

普段は踏み台サーバーを経由して、ssh接続で繋げて開発している。
けれど、VSCode RemoteにするとUnreachableというエラーが生じでてしまう。

原因1

サーバー側で待機しているsshdに対して、クライアント側のsshのopensslが古いと繋がりません。

具体的な情報は環境によるので記載しませんが、AWSやGCPのクラウド上で作業しているのならば、基本的にはクライアント側(MacやWindows)のopensslのバージョンでしょう。

解決方法

opensslのアップデート方法(brewがinstall済み前提)

sshでつなぐときに使用しているopensslのバージョン確認

ssh -V                                         
OpenSSH_7.9p1, LibreSSL 2.7.3

このバージョンがだいたい8系が入っていたら僕の周りの人は解決しました。

brew update
brew install openssl
brew update 
brew upgrade openssl

原因2

サーバー側で強制的にshellを切り替えていると失敗する問題。

例えばこういう人が当てはまると思います。入ってきたばかりで、root権限もsudoersにも慣れていない状態で、ログインシェルが固定されている。ログインシェルは、tcsh/bashだけど、アナログにzshに切り替えている人です。
多分こんなコードを設定ファイルに記載して切り替えているのではないでしょうか?

.bashrc
exec zsh
//もしくは
zsh

bashがログインシェルになっているけどzshに強制的に切り替えているパターンです。
エラーの内容は、 'install' command not found みたいに怒られます。

解決方法

素直にその記述を消して繋げてみましょう。

less $HOME/.bashrc
less $HOME/.bash_profile

をしてその記述をコメントアウトしてから再読み込みをかけましょう。

source ~/.bashrc

まとめ

vimで編集するときはsshで接続しているのに、VSCodeだと繋がらないという方は上記の2つの箇所を試してみてください。

こちらにtipsものっているので
https://code.visualstudio.com/docs/remote/troubleshooting#_enabling-alternate-ssh-authentication-methods

VSCode vimの設定も書いているのでぜひこちらもどうぞ。
https://qiita.com/y-mattun/items/45776b7e1942edb2f727

19
17
0

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
19
17

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?