文章

VSCode远程SSH连接方法

安装Remote-SSH


在商店搜索Remote-SSH,并安装

如需要连接windows自带的wsl虚拟机,可以使用Remote-WSL插件

remote-ssh

修改配置文件


  1. 打开远程资源管理器标签
  2. 选择设置图标
  3. 编辑ssh config文件

open-config

config-file

使用私钥登录


使用ssh-keygen生成公私钥对:

  • 私钥id_rsa放置在Windows(SSH客户端)的用户.ssh目录下
  • 公钥id_rsa.pub放置在ssh服务器的.ssh目录下,Linux下需重命名为authorized_keys

完成后可直接登录,无需输入密码

SSH频繁断开问题


连接成功后会发现SSH频繁断开,且速度很慢

原因

Windows自带openSSH版本较老,与Linux中的版本不兼容

使用ssh -V查看版本:

openssh-version

解决方法

使用git中自带的openSSH

编辑环境变量,将C:\Program Files\Git\usr\bin添加至Path环境变量,并置于上层

system-env

重新查看版本号,如显示版本为新版,则设置成功

1
2
C:\Users\kai>ssh -V
OpenSSH_8.3p1, OpenSSL 1.1.1g  21 Apr 2020

关闭所有VSCode窗口后,重新打开,可以发现SSH使用流畅,不会有掉线现象

使用代理连接


可以使用socks5或http代理连接Remote SSH,从而绕开防火墙限制

打开配置文件,为要添加代理的配置添加一行ProxyCommand

1
2
3
4
5
6
7
Host myhost
    HostName 192.168.1.1
    Port 22
    User dev
    IdentityFile "C:\Users\admin\Documents\dev_ecdsa"
    TCPKeepAlive yes
    ProxyCommand "C:\Program Files\Git\mingw64\bin\connect.exe" -S 127.0.0.1:10808 %h %p

这里使用了Git自带的mingw64工具箱中的connect工具,-S表示socks代理,当然也可以使用自己特定的代理工具

参考


本文由作者按照 CC BY 4.0 进行授权

© Kai. 保留部分权利。

浙ICP备20006745号-2,本站由 Jekyll 生成,采用 Chirpy 主题。