SSH 密钥登陆

上传公钥

ssh-keygen -t rsa    // 注意用户身份
rz 上传 id_rsa.pub   //xshell中登录,方可用rz
mv id_rsa.pub authorized_keys    //如果上传过的文件名已修改

生成密钥

可以在xShell中,或者服务器端生成,

服务器端使用ssh-keygen命令生成:
切换到要登陆的账号。运行下面的命令:
ssh-keygen -t rsa

该命令在用户的家目录下,生成一个隐藏的.ssh文件夹,其中存放的就是公钥和私钥; 私钥通过 sz 文件 的方式 发送到 客户端;

公钥内容保持在authorized_keys文件中;
touch authorized_keys
cat id_rsa.pub >> authorized_keys

或者直接将id_rsa.pub改名为authorized_keys:
mv id_rsa.pub authorized_keys

注意将authorized_keys文件权限设为 600 ,即只有本人可读写;
chmod 600 authorized_keys

将.ssh 文件权限设为700 chmod 700 .ssh

如果公钥已有,可以直接传入这个文件夹中,为减少权限设置故障,
建议用ssh—keygen命令生成.ssh文件夹,保证.ssh 的700 权限;

ssh配置文件中启用认证选项

要确保下面这两项目前面没有被#注释掉:


PubkeyAuthentication yes     #允许公钥认证

AuthorizedKeysFile  .ssh/authorized_keys   
#指定包含用于用户身份验证的公钥的文件

service sshd restart   //重启ssh服务:

xShell端配置

操作1: 将私钥导入到xShell中:
工具 》 用户密钥 管理者 --> 导入私钥
注: 一对公私钥,私钥在此导入一次就可,公钥上传到多个目标服务器上。

操作2: 登陆时选择 用户验证方法 为 Public Key,然后指定私钥(和密码,如果有)即可;