local machine使用vscode远程开发remote server的方法

0、 问题提出

本地vmware装linux开发比较笨重,笔记本风扇会呼呼的转,如果再开个matlab/simulink,16G内存的笔记本基本会卡得不行。后面利用阿里云的优惠,购置了三年的云服务器,可以用vscode远程调试开发linux服务器。经过一段时间的尝试后,发现一个比较烦的问题,每次登陆远程服务器后更换开发目录,都要重新输入密码,而且要等待时间也比较长。经过多方查阅,发现可以通过配置公钥和私钥,免密切换远程服务器的目录,也即在远程服务器直接打开文件夹就行,不用再去输入密码了。但是看了多个文件后发现很多文章对配置关系都写得不清楚,尤其在几方关系、密钥的配置文件位置上。索性自己做个记录,以防遗忘。

1、local machine VS. vscode VS. remote server

利用vscode进行远程开发必然要牵涉到三方,一是local machine,二是vscode,三是remote server。其中

local machine:即本地计算机,系统可以是windows也可以是linux。目前本人使用win7 作为local machine,linux系统类似,后面解释。

vscode:起到中间连接local machine和remote server的中间层的作用,利用丰富的插件生态,方便远程开发。在local machine处有vscode client运行,在remote machine处有vscode server运行。

remote server:即远程服务器,系统一般是linux,里面跑各种应用。当前本人购置的阿里云服务器都是ubuntu系统。

local machine 是远程开发的发起者,为保证通信的有效,需要生成密钥,其中私钥存放在local machine处,公钥放在remote server处。当需要通信时,第三方vscode根据remote server提供的公钥,与远程通信的发起方local machine提供的私钥对比,发现是一对时,则允许两者通信。

先给出三者之间的关系简图,后面分别说明。
在这里插入图片描述

2、local machine 的配置

(1)本人的local machine是win7系统,生成密钥使用ssh-keygen命令,但是cmd无法运行该命令,但是git bash可以运行,因此要先安装git。
(2)使用git运行该命令,将生成私钥和公钥,运行过程会出现提示,按默认配置一路按enter即可。
(3)私钥:id_rsa,公钥:id_rsa.pub,存放路径对于本人win7而言,一般为C:\Users\XXX.ssh,其中XXX根据具体使用账户确定。

3、vscode的配置

(1)实际上这里的vscode相当于vscode client,配置也是配置这个。在remote server处有vscode server,是自动配置好的。
(2)ctrl+shift+p 搜索ssh config打开ssh配置文件,对于本人win7而言,路径是C:\User\XXX\ssh\config。
(3)配置文件为

Host   remote_server_alias_name
    HostName remote_server_IP
    User remote_server_name
    IdentityFile "C:\Users\XXX\.ssh\id_rsa"
    ServerAliveInterval  60

与remote server有关的是登陆remote server相关的部分

HostName remote_server_IP
User remote_server_name

与local machine有关的是存放私钥的部分

IdentityFile "C:\Users\XXX\.ssh\id_rsa"

为了保证与服务器连接,每60秒联系一次

ServerAliveInterval  60

4、remote server的配置

(1)将local machine中的公钥C:\Users\XXX.ssh\id_rsa.pub内容copy到remote server 的~/.ssh/authorized_keys中。
(2)目录下如无authorized_keys文件,则touch命令新建一个文件。
(3)\id_rsa.pub内容格式为ssh-rsa abcdefg= XXX@XXX-PC

5、开发示例

完成以上配置后,再次打开远程服务器开发不再需要输入密码建立连接。
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值