SSH免密配置说明

SSH免密配置说明

一、配置过程

PC1电脑远程免密登陆PC2电脑

1.PC1电脑生成id_rsa私钥和id_rsa.pub公钥
ssh-keygen -N ’ ’ -f /kylin/.ssh/id_rsa

2.将PC1公钥放到PC2电脑上,然后PC1的公钥id_rsa.pub的内容 写进 PC2电脑的authorized_keys授权钥匙里
ssh-copy-id PC2IP
等于$cat ./id_rsa_pub >> PC2IP:/kylin/.ssh./authorized_keys
或scp /home/kylin/.ssh/id_rsa.pub PC2IP:/kylin/.ssh/authorized_keys

3.免密登陆测试
ssh kylin@PC2IP ###实现免密登陆

二、.ssh下的文件说明(authorized_keys,id_rsa,id_rsa.pub,known_hsots)

1.authorized_keys:

PC2记录访客电脑(PC1)的公钥的文件
将PC1公钥考到PC2机器的用户目录下,并将其内容复制到~/.ssh/authorized_keys中,可通过ssh-copy-id kylin@PC2IP命令实现。

2.id_rsa、id_rsa.pub

PC1的私钥和公钥
通过ssh-keygen -N ’ ’ -f /kylin/.ssh/id_rsa命令生成的PC1私钥和公钥。

3.known_hsots

ssh会把你(PC1)访问过计算机(PC2)的公钥(public key)都记录在这个文件中
下次访问相同计算机时,OpenSSH会核对公钥。如果公钥不同,OpenSSH会发出警告, 避免你受到DNS Hijack之类的攻击。我在上面列出的情况,就是这种情况。

三、免密登录配置后,依然提示需要输入密码的解决方法

情况1.

扫描二维码关注公众号,回复: 17268868 查看本文章

原因:一台主机上有多个Linux系统,会经常切换,那么这些系统使用同一ip,登录过一次后就会把ssh信息记录在本地的~/.ssh/known_hsots文件中,切换该系统后再用ssh访问这台主机就会出现冲突警告
解决:需要手动删除修改known_hsots里面的内容

情况2.

原因:.ssh和authorized_keys权限不对
解决:
chmod g-w /home/kylin
chmod 700 /home/kylin/.ssh
chmod 600 /home/kylin/.ssh/authorized_keys

情况3.

原因:提示sign_and_send_pubkey: signing failed: agent refused operation
解决:eval “$(ssh-agent -s)”

情况4.

原因:提示提示输入的是秘钥密码
解决:ssh-keygen创建秘钥时,直接回车不要输入任何密码

猜你喜欢

转载自blog.csdn.net/lankyysina/article/details/131909903