Linux|[Linux] 生成 PEM 密钥对实现服务器的免密登录

问题背景
为了保障服务器的安全, 最近公司的服务器改为使用密钥登录, vscode 已经设置的免密登录不受影响(设置参考这篇博客), 但是在设置 FinalShell 的密钥登录时遇到如下报错
Linux|[Linux] 生成 PEM 密钥对实现服务器的免密登录
文章图片

提示中已经给出解决方法, 就是需要使用 PEM 密钥对, 下面记录一下每步的操作
解决方法
1. 在远程服务器生成 PEM 密钥对

cd ~/.ssh ssh-keygen -m PEM -t rsa -C "注释"

生成时的密码可以设置为空, "注释"的内容可以根据自己的需要进行修改, 为了不影响之前的密钥文件, 这里将密钥文件名称设为 id_rsa_pem, 则然后会得到两个文件, id_rsa_pemid_rsa_pem.pub
2. 将公钥内容加入 authorized_keys 【Linux|[Linux] 生成 PEM 密钥对实现服务器的免密登录】如果服务器上已经存在 ~/.ssh/authorized_keys 文件, 将 id_rsa_pem.pub 中的内容拷贝到 ~/.ssh/authorized_keys 文件中即可. 如果不存在, 需要执行以下代码
cd ~/.ssh cat id_rsa_pem.pub >> authorized_keys chmod 600 authorized_keys

3. 将私钥拷贝到本地电脑 将服务器的 ~/.ssh/id_rsa_pem 文件拷到到本地电脑, 并将该文件的权限设为 600, 然后就可以使用该文件免密登录服务器了

    推荐阅读