linux做免密登录,成功分发公钥后登录主机依旧需要输入密码的问题解决

问题描述

在主机A上用ssh-keygen生成密钥对后,用ssh-copy-id命令将公钥成功copy到主机B上后,测试从A免密登录B,但是依旧需要输入主机B的密码后才能登录。

出现此错误的原因

如果authorized_keys文件、$HOME/.ssh目录或$HOME目录让本用户之外的其他任何用户有写权限,那么sshd都会拒绝使用~/.ssh/authorized_keys文件中的key来进行认证的,防止authorized_keys或者$HOME下的文件被其他用户篡改。

排查过程

  • 检查~/.ssh/authorized_keys的权限是否是rw-------;即是否是600(也可为700)。
  • 检查~/.ssh目录的权限是否为rwx------或者rwxr-xr-x,即是否为700或者755(默认是700);也即一定不能给当前用户的同组用户和其他用户赋予写权限。
posted @ 2019-05-20 20:55  长翅膀的蜗牛  阅读(1826)  评论(0编辑  收藏  举报