本文介绍在mobaXterm上免密登录的过程,并且在vscode中也免密登录服务器。
1. mobaXterm免密登录服务器
需要首先说明的是,mobaXterm里有一个记住密码的功能。如果你只是不想手动输入密码,大多数情况下使用这一功能即可。
这里介绍的情况是,远程主机不支持密码登录(为了安全考虑吧,之前服务器就是被攻击了,所以老师取消了密码登录),所以我们需要生成公钥和私钥,来使用密钥免密登录。
如果有小笨蛋不懂什么是公钥和私钥,这里有一个简单的解释:
公钥是用来加密的,私钥是用来解密的。可以把公钥上传到服务器上,私钥留在你自己的本地的电脑里。只有拥有私钥才能登录上服务器。
关于在mobaXterm上生成公钥和私钥的步骤,请参考此篇文章,非常详细
2. Vscode中使用ppk密钥进行远程连接
在上面的步骤里,我们生成的密钥后缀是.ppk类型的。这里需要说明一下两种密钥类型:
-
PuTTY类型 :
PPK 是 PuTTY 私钥文件的格式。
-
OpenSSH类型 :
id_rsa 是 OpenSSH 私钥的默认格式,id_rsa.pub是OpenSSH格式的SSH公钥。
我们前面用Putty和MobaXterm生成的私钥,在windows上的vscode里远程连接服务器是不行的,需要进行格式转换,转为OpenSSH格式的密钥。
官网下载一个Putty,然后打开puttygen.exe
点击Load,把之前的mk.ppk文件上传上去。
然后点击save private key, 选择yes, 保存的名称为id_rsa,文件类型选择all
在vscode中连接远程服务器
安装Remote SSH拓展,安装好之后点击一旁的远程资源管理器
在ssh上点击加号,输入ssh 你的用户名@服务器地址
ssh username@10.20.79.12,回车,选择默认的配置文件位置,然后打开config文件,在里面可以填写更多信息(端口号、用户名等等)在identityfile里输入我们刚才生成的id_rsa文件
config配置文件可以填写多个服务器,填写好之后重启一下vscode,就可以看见你的服务器了,点击,连接成功!