码迷,mamicode.com
首页 > 其他好文 > 详细

ssh 免密码登录(设置后仍需输密码的原因及解决方法)

时间:2017-12-18 18:58:41      阅读:14184      评论:0      收藏:0      [点我收藏+]

标签:登录   key   原因   手动   class   step   sshd   auth   src   

ssh免密码登录的原理:


技术分享图片

serverA 免密码登录到 serverB

 

机器A 向 机器B 进行免密码登陆

step1:

 在机器A中生成 私钥和公钥:

ssh-keygen -t rsa技术分享图片

此时在 ~/.ssh/ 目录下生成了公钥(id_rsa.pub)和私钥(id_rsa)


step2:

把机器A的公钥(id_rsa.pub)复制到机器B ~/.ssh/authorized_keys 文件里,两种常用方法

方法1:

scp ~/.ssh/id_rsa.pub username@host:/home/B/id_rsa.pub

//此时scp需要输入 登录机器B username用户的密码

//然后进入机器B内把 /home/B/id_rsa.pub 文件内容加写进 ~/.ssh/authorized_keys 文件:

cat /home/B/id_rsa.pub /home/B/.ssh/authorized_keys

方法2:

//在机器A中使用 ssh-copy-id 把公钥加写到机器B的 ~/.ssh/authorized_keys 文件

ssh-copy-id username@host

//执行后输入机器B username用户的密码,效果和方法1一样


step3:

修改机器B ~/.ssh/authorized_keys 文件的权限:

chmod 600 ~/.ssh/authorized_keys

 此时如果机器B没有~/.ssh 目录需要手动创建


step4:

此时机器A可以进行免验证登录 机器B

ssh username@host


参阅网上很多方法后,发现步骤都差不多,但是却屡屡失败,设置完后仍然要输入密码,后面发现了是被登录机器的文件权限问题:

//用户权限

chmod 700 /home/username

//.ssh文件夹权限

chmod 700 ~/.ssh/

// ~/.ssh/authorized_keys 文件权限

chmod 600 ~/.ssh/authorized_keys

还有可能这个文件内容被注释了(改成下图的状态):

vi /etc/ssh/sshd_config 

技术分享图片


引用与参考:

http://www.cnblogs.com/kex1n/p/6017963.html

http://chenlb.iteye.com/blog/211809

https://jingyan.baidu.com/article/2fb0ba4043124a00f2ec5f0f.html

http://blog.csdn.net/xyl295528322/article/details/37762557


 

ssh 免密码登录(设置后仍需输密码的原因及解决方法)

标签:登录   key   原因   手动   class   step   sshd   auth   src   

原文地址:http://www.cnblogs.com/GO-NO-1/p/8058603.html

(0)
(1)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!