本文长期连接,转发请先留言](https://blog.csdn.net/cattleDrinkRedWine/article/details/106059685)
一、缘由
折腾了一下,想使用remote development免密登陆,可是他娘的百度上到处都是这抄抄,那抄抄,还抄出来的东西不能用。这群狗日的东西。
好了,发泄完了,现在开始进入正题。
二、干
申明:
部分内容我已经安装好了。所以看截图需要留意。
1、安装remote development
打开vscode,这个不需要解释,直接安装就可以。打开vscode,点开扩展(ctrl+shirt+x)搜索remote,安装remote development,如图:
至此,已经将remote安装完毕,接下来配置remote
2、配置Remote
安装好的remote应该在左边有个小图表,如果没有,重启一下vscode。按快捷键ctrl+shift+p,鼠标点击Remote SSH Settings 如图:
打开了设置Remote,找到如图Remote.SSH Config File,填上一个txt文件路径,最好是放在vscode安装目录的某个地方,免得被误删,如图:
先不管他,继续向下滑动,找到如图所示的项目:
勾选这个Always reveal the ssh …的选项,如上图。保存关闭。设置。
继续按ctrl+shift+p,选择如下图所示Remote ssh connect to host:
选择C欧尼figureSSH Hosts…这个选项(注意我的是因为已经配置了)
然后会弹出如图所示,红框标记位置就是我们再设置中填写的txt,如图:
点开它。
在里面配置上对应的内容,如图:
Host cattleDrinkRedWine_Self_VM //这是我们待会看到的名字。
HostName 192.168.118.130 //这是ip,我的是我本机上的虚拟机上的linux系统。
User cattledrinkredwine //登陆这个linux系统的账号(注意没有密码)
配置好后保存。remote基本配置完毕。
如图:
右键,选择连接,会提示要你输入密码啥的,在终端这个地方(自动弹出来),你输入连接这个Linux机子的密码就可以连上,然后你去打开文件夹,打开的就是Linux上的目录,选择对应的工程就能打开工程。跟本地一样的。
3、关于免密
上面这种非免密的坏处就是没做个啥都要输入密码,不然不让你干。幸好有免密的方式,下面介绍免密做法,照样以图片为主。
打开cmd ,输入内容:
ssh-keygen -t rsa -b 4096
没有ssh的,自己百度吧,我很久就有了,不解释这个了。应该可以搞定的。
会要你输入一个文件名,我这里输入的是cattle,如上图。
输入密码,我建议这个地方不要输入密码,免得忘记,这个密码是用来连linux的。直接按enter回车键。
如图:
然后输入:
cd %USERPROFILE%\.ssh\
接下来输入:
start .
注意是start空格点,别忘记那个点。打开当前管理器。如图:
接下来,在cmd中输入内容:
scp %USERPROFILE%\.ssh\cattle.pub cattledrinkredwine@192.168.118.130:~/cattle.pub
也就是说把刚才生成的cattle.pub上传到linux服务器的~/cattle.pub位置,其实就是/home/用户名/cattle.pub,如果没有你就再试一遍,在linux中查一下位置,应该没错。
如图:
可以用lInux命令:
find / -name *.pub
这个命令是在Linux上用,别再windows的cmd中用。
接下来输入
ssh cattledrinkredwine@192.168.118.130
输入完密码后,cmd命令行参数就变成以$开头了,
接下来在cmd中依次输入:
mkdir -p ~/.ssh
chmod 700 ~/.ssh
cat ~/cattle.pub >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys
rm -f ~/cattle.pub
啥意思咧,就是说在linux上新建一个文件夹,给个权限,把刚刚通过命令scp上传到linux上的文件cat到目录authorized_keys,并且给权限,和删掉源文件。
这个完毕之后,你能看到一个文件,如图:
这样,linux这边就结束了,接下来继续配置vscode
如图:
在上面配置txt的地方配置一个属性:
IdentityFile 你刚才windows上生成cattle的地方,如图:
保存,然后你在区连接这个服务器,就可以了。不需要输入密码,就能连接了。
(不过需要输入整数密码,就是我刚才说要你们不填的那个密码的东西,没有就直接按enter就行。)
完毕。不懂留言问,外面的世界太乱了。