我们在windows下使用虚拟机中的linux的时候,会不习惯linux的一些操作,vscode作为一个强大的代码编辑器(可能是比较好的文本编辑器)。让我们对linux重回windows的情怀。下面我们来看怎么使用vscode远程连接虚拟机中的linux


1、linux配置网络

我使用的linux版本是centos 7,其他的版本基本相同,可能命令上会存在差异。

linux如何配置网络应该大家都会,不会的可以查看下面这个博客

linux网络配置

2、虚拟机linux的ssh服务的配置

我们的vscode与虚拟机的linux是通过ssh进行连接的。在linux下首先进入root,获取root权限

1、进入root,我们需要安装openssh-server,输入以下命令

[root@localhost ~]$ yum list installed | grep openssh-server

在这里插入图片描述
2、进入/etc/ssh目录编辑sshd_config文件

[root@localhost ~]$ cd /etc/ssh
[root@localhost ssh]$ vim sshd_config

3、按i键编辑文件,找到下面几段语句,去掉前面的#注释,修改完之后保存退出。

监听端口和监听地址
在这里插入图片描述
开启远程登陆
在这里插入图片描述
开启使用用户名密码来作为连接验证
在这里插入图片描述
4、开启 sshd 服务

[root@localhost ~]$ sudo service sshd start

检查 sshd 服务是否已经开启,

[root@localhost ~]$ ps -e | grep sshd

可以输入下面命令将sshd添加自启动

[root@localhost ~]$ systemctl enable sshd.service

5、查看linux的ip地址

[root@localhost ~]$ ifconfig

在这里插入图片描述
此时的ip地址为192.168.86.10

6、查看windows的VMnet8 的 ip地址

C:\Users\SweiJ> ipconfig

在这里插入图片描述
此时的ip为192.168.86.1

7、在windows 中ping linux的地址

C:\Users\SweiJ> ping 192.168.86.10

在这里插入图片描述
8、如果ping 不通,打开网络配置,选择网络适配器 VMnet8 的 TCP/IPv4 的属性

设置ip为你虚拟机的ip的同一网段,我的linux地址为192.168.86.10 所以ip设置为192.168.86.1

在这里插入图片描述

3、配置vscode

没有下载的点击 vscode 进行安装

1、打开vscode搜索扩展 Remote - SSH 安装

2、ssh-keygen安装

① 在windows cmd中输入ssh-keygen命令一路回车,会在C:\Users\SweiJ路径下生成一个.ssh的文件夹,里面存放id_rsa 和 id_rsa.hub文件

C:\Users\SweiJ> ssh-keygen

② 在linux中我们也需要有相同的操作,同样在当前目录生成一个.ssh的文件夹,里面存放id_rsa 和 id_rsa.hub文件,这时我们在.ssh文件夹下创建一个authorized_keys文件,编辑该文件。同样可以使用命令

[root@localhost swei]# ssh-keygen
[root@localhost swei]# cd .ssh
[root@localhost swei]# touch authorized_keys
[root@localhost swei]# vim authorized_keys

还记得我们在windows生成的.ssh文件夹下的id_rsa.pub文件吗?
使用记事本打开id_rsa.pub复制里面的内容到linux的authorized_keys文件,然后保存退出。

3、配置

打开vscode按F1,搜索ssh,找到并点击Remote-SSH: Settints,进入设置,在Remote.SSH: Show Login Terminal打钩。
在这里插入图片描述
完成之后再按F1搜索ssh,找到并点击Remote-SSH: Connect to Host...,进入下面操作,点击Configure SSH Hosts...

在这里插入图片描述
点击刚生成的的.ssh文件夹
在这里插入图片描述
进入config文件的编辑界面,修改完保存

host 随意命名
Hostname 是linux主机的ip地址
Port 端口号一开始默认22
IdentityFile id_rsa文件的路径

Host Swei
    HostName 192.168.86.10
    User swei
    Port 22
    IdentityFile "C:\Users\SweiJ\.ssh\id_rsa"

4、连接

点击连接linux
在这里插入图片描述
最后就可以愉快的操作了!!

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐