VS Code SSH 远程连接服务器及坑点解决

指针从不空 2024-07-01 16:37:14 阅读 87

背景

Linux服务器重装了一下,IP没有变化,结果VS Code再重连的时候就各种问题,导致把整个流程全部走了一遍,留个经验帖以备查看

SSH

首先确保Windows安装了ssh,通过cmd下ssh命令查看是否安装了。

在这里插入图片描述

没安装,跳转安装Windows下的ssh

对应的,也需要Linux安装ssh,本文是Ubuntu系统,使用以下命令安装:

sudo apt update

sudo apt install openssh-server

启动ssh服务,并验证是否开启:

sudo systemctl start ssh

sudo systemctl status ssh

在这里插入图片描述

密钥

在Windows上打开命令行窗口(win+r输入cmd),然后输入: ssh-keygen,接着一路按回车键即可。

在这里插入图片描述

在.ssh目录下生成了公钥私钥

在这里插入图片描述

把公钥配置到Linux服务器,连接Linux服务器,然后cd到家目录或者root根目录(用哪个用户登录就去哪个目录),然后cd到.ssh文件夹(没有就创建一个),接着创建authorized_keys文件。

mkdir .ssh(没有该目录,创建)

vim authorized_keys

将windows中公钥信息复制到该文件中,保存关闭。切记不要把ssh-rsa复制进去,只复制下面的内容。

在这里插入图片描述

VS Code

默认已经下载好Remote-SSH插件,然后找到VS Code左下角设置-扩展-Remote-SSH,将config文件路径填进去(就是上面Windows中.ssh文件夹中的config文件)。

在这里插入图片描述

然后按F1,输入:ssh,连接主机

在这里插入图片描述

接着输入:ssh root@192.168.xxx.xxx,后面是linux服务器的ip地址,root是用户名,然后进行连接。

打开VS Code,然后按F1,然后输入ssh,打开配置文件

在这里插入图片描述

在这里插入图片描述

之后就会出现远程连接的标识,直接连接即可。

在这里插入图片描述

坑点

重装系统IP不变,Host key verification failed. 过程试图写入的管道不存在。

原IP地址的linux服务器成功用SSH连接过,后来因某些原因,Linux服务器重装了,但IP依旧保留不变。原因是VS Code读了旧缓存,但是你的系统已经是新的了。

部分报错如下:

> Someone could be eavesdropping on you right now (man-in-the-middle attack)!

> It is also possible that a host key has just been changed.

> The fingerprint for the ED25519 key sent by the remote host is

> SHA256:z6+hBVhvhl5CJHb7duA8ku3nq3ZiRrhWv89SIEgjDwY.

> Please contact your system administrator.

> Add correct host key in C:\\Users\\dell/.ssh/known_hosts to get rid of this message.

> Offending ECDSA key in C:\\Users\\dell/.ssh/known_hosts:2

> Host key for 10.xxx.xxx.xxx has changed and you have requested strict checking.

> Host key verification failed.

> 过程试图写入的管道不存在。

可以看到C:\Users\dell/.ssh/known_hosts中确实将目标linux服务器列为known_host,进入到特定文件中,如下如所示的known_hosts文件和known_hosts.old,找到该ip对应的行,将其删除,再进行连接尝试。

在这里插入图片描述

Resolver error: Error: 无法安装 VS Code 服务器 . No space left on device

部分报错如下:

[20:03:55.990] > scp: /home/test/.vscode-server/vscode-cli-611f9bfce64f25108829dd295f54a6894e87339d.tar.gz: No space left on device

> vscode-cli-611f9bfce64f25108829dd295f54a6894e87339d.tar.gz 100% 8752KB 22.5MB/s 00:00

> vscode-cli-611f9bfce64f25108829dd295f54a6894e87339d.tar.gz.done 0% 0 0.0KB/s --:-- ETAscp: /home/test/.vscode-server/vscode-cli-611f9bfce64f25108829dd295f54a6894e87339d.tar.gz.done: No space left on device

单纯的服务器磁盘不足 ,使用以下命令看空间,增大磁盘容量。很明显,/dev/sda5空间都炸了,需要扩展根目录空间。

test@ubuntu:~/Desktop$ df -h

Filesystem Size Used Avail Use% Mounted on

udev 3.9G 0 3.9G 0% /dev

tmpfs 791M 2.0M 789M 1% /run

/dev/sda5 20G 19G 0 100% /

tmpfs 3.9G 0 3.9G 0% /dev/shm

tmpfs 5.0M 4.0K 5.0M 1% /run/lock

tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup

/dev/loop0 64M 64M 0 100% /snap/core20/2264

/dev/loop1 128K 128K 0 100% /snap/bare/5

/dev/loop3 313M 313M 0 100% /snap/code/161

/dev/loop2 312M 312M 0 100% /snap/code/159

/dev/loop4 64M 64M 0 100% /snap/core20/2318

/dev/loop5 75M 75M 0 100% /snap/core22/1380

/dev/loop7 350M 350M 0 100% /snap/gnome-3-38-2004/143

/dev/loop6 506M 506M 0 100% /snap/gnome-42-2204/176

/dev/loop11 39M 39M 0 100% /snap/snapd/21759

/dev/loop8 347M 347M 0 100% /snap/gnome-3-38-2004/119

/dev/loop10 46M 46M 0 100% /snap/snap-store/638

/dev/loop9 92M 92M 0 100% /snap/gtk-common-themes/1535

/dev/loop12 13M 13M 0 100% /snap/snap-store/1113

/dev/loop13 40M 40M 0 100% /snap/snapd/21184

/dev/sda1 511M 4.0K 511M 1% /boot/efi

tmpfs 791M 28K 791M 1% /run/user/1000



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。