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

问题背景

为了保障服务器的安全, 最近公司的服务器改为使用密钥登录, vscode 已经设置的免密登录不受影响(设置参考这篇博客), 但是在设置 FinalShell 的密钥登录时遇到如下报错
[Linux] 生成 PEM 密钥对实现服务器的免密登录_第1张图片
提示中已经给出解决方法, 就是需要使用 PEM 密钥对, 下面记录一下每步的操作

解决方法

1. 在远程服务器生成 PEM 密钥对
cd ~/.ssh
ssh-keygen -m PEM -t rsa -C "注释"

生成时的密码可以设置为空, "注释"的内容可以根据自己的需要进行修改, 为了不影响之前的密钥文件, 这里将密钥文件名称设为 id_rsa_pem, 则然后会得到两个文件, id_rsa_pemid_rsa_pem.pub

2. 将公钥内容加入 authorized_keys

如果服务器上已经存在 ~/.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, 然后就可以使用该文件免密登录服务器了

你可能感兴趣的:(Linux,linux,pem,rsa)