文章目录
- 1. 问题描述
- 2. 解决方案
- 3. 原理
1. 问题描述
当我们使用vscode的ssh连接远程服务器后,过一段时间后,总是要求登录服务器的密码。
这就导致一个麻烦就是:
无论是在公司还是在学校,密码往往不是自己设置的,所以记忆起来就比较麻烦。因此在自己电脑上设置无密码登录还是很有必要的,能够节省时间!
以前做过这方面的实践,这次重新使用vscode,重走了一遍流程,故记录在此!
2. 解决方案
Step1: 本地生成公钥和密钥
如图,首先检查图中路径下是否存在 id_rsa和 id_rsa.pub文件
如果有,则忽略本步骤!
如果没有,则打开本地电脑的终端,输入命令:
ssh-keygen
并按照下面图中提示,按 enter 或者 y
这样就生成了公钥和密钥,可以在本地路径 C:\Users\用户名.ssh 检查!
Step2: 将本地公钥路径放到vscode配置文件中
按上图顺序依次点击,则可以调出配置文件:
然后在文件上面添加上图代码,即:将密钥路径配置好!
Step3: 将本地公钥配置到服务器的.ssh目录中的
(1)打开本地电脑中的 id_rsa.pub文件,复制里面的全部内容。
(2)将复制的内容拷贝到 服务器中的.ssh目录下的authorized_keys文件中(如果没有这个文件,则自行创建);
(服务器中的.ssh目录一般在自己的用户空间下,如下图所示: 它是隐藏目录,可以使用 ls -a 查看)
Step3: 关闭并重启vcode
步骤至此,完结,撒花!
3. 原理
这个原理其实就是由于在服务器中配置了本地电脑的公钥和密钥,它在连接时,就会优先校验配置的公钥和密钥是否匹配,而非之前的那种密码连接方式!
全文完结,撒花!