vscode通过ssh扩展连接Linux虚拟机或阿里云服务器


记录一下使用vscode通过ssh扩展连接Linux虚拟机或阿里云服务器,避免重复造轮子。
首先在Linux系统中安装openssh-server以及net-tools

sudo apt install openssh-server
sudo apt install net-tools

连接Linux虚拟机

  打开vscode,点击左边的扩展(Extensions)选项,刚开始安装界面都是英文的,可以先安装一个中文版本的插件,搜索Chinese安装中文插件,然后搜索安装Remote Development插件,安装完成后,左边图标多了一个远程资源管理器,点开远程资源管理器,在远程资源管理器后面选择“SSH Targets”。然后点击配置,点开第一个xxx.ssh\config
在这里插入图片描述

Host后面的是主机的名称(可任意)。
HostName后面的是Linux系统的IP地址。
User后面的是Linux系统的用户名。
上述信息配置完成之后保存,点击Connect to Host in New Window。然后按照提示完成连接。
在这里插入图片描述

设置自动连接

  连接成功后,每次打开一个新的文件夹都需要输入密码,很麻烦,可以设置自动连接,打开新文件夹不需要输入密码。
  1、打开Windows的cmd窗口,输入ssh-keygen -t rsa,然后一直回车,生成本机的公钥和私钥文件(生成的公钥和私钥文件在用户目录下的.ssh文件夹中)。
  2、在Linux系统下也生成公钥和私钥,打开Linux终端,输入ssh-keygen -t rsa,一直回车,生成成功后cd .ssh/
  3、在.ssh目录下创建一个名称为authorized_keys的文件。

vim authorized_keys

  打开Windows下的公钥文件(id_rsa.pub),将里面的内容复制进authorized_keys中。保存并退出即可自动连接啦,连接阿里云服务器同理。

附:Windows 下 VSCode 使用 SSH 连接报 Bad owner or permissions on C:\Users\Administrator/.ssh/config 错误问题解决
插件TabOut:该插件可以用Tab键自动跳出括号。
Bracket Pair Colorizer2:这是一个找到括号另一半的插件,配对的括号会被标记成相同的颜色,并且当选中一个括号以后,会出现一条线帮我们找到它对应的另一半括号。
Partial Diff:用于文件比较,选中一代码,右键Select Text for Compare,选中另一部分代码,右键Compare Text with Previous Selection即可。
Settings Sync:可以同步vscode的配置

2023.3.7新增问题

  因为阿里云服务器是之前配的,后来在阿里云重置了系统,但是重置了系统之后就连接不上了。
  研究了很久发现应该是之前配的.ssh文件夹中的know_hosts文件中记录了之前服务器的信息,连接默认使用之前的信息,所以重置了系统之后就连不上。
在这里插入图片描述
解决方法:
  将know_hosts文件中关于上个服务器的信息删掉(红框中前面即是我的服务器公网IP,后面的应该就是之前的系统的信息)
  当然将整个.ssh文件夹删掉重新配置应该也可以,但是我之前生成的秘钥不止是和阿里云的服务器关联了,还和GitHub等以及其他的关联了,所以把整个文件夹删掉再重新配置那其他的关联的应该也会失效。
在这里插入图片描述

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐