解决SSH免密登录配置成功后不生效问题

配置免密登录

很简单,重点就两步,分布式scp ~/.ssh/authorized_keys 中内容到所有你想相互免密的机器即可。

  • 1. 执行命令$ ssh-keygen -t rsa -P ""

回车后会在 ~/.ssh/ 下生成两个文件:id_rsa 和 id_rsa.pub,这两个文件是成对出现的

  • 2. cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

解决SSH免密登录配置成功后不生效问题_第1张图片

  • 3. 重启SSH服务 $ service sshd restart
  • 4. 测试免密登录本机 $ ssh localhost

解决SSH免密登录配置成功后不生效问题_第2张图片

(发现并没有成功,还是需要输入密码)

 

问题解决

需要做两件事:

 

  • 一、检查AuthorizedKeysFile配置是否启用authorized_keys
$ cat /etc/ssh/sshd_config |egrep AuthorizedKeysFile
#AuthorizedKeysFile    .ssh/authorized_keys

解决:

$ sudo vi /etc/ssh/sshd_config

找到这几行,把注释解开:

解决SSH免密登录配置成功后不生效问题_第3张图片

 

  • 二、查看系统安全日志,定位问题

执行 sudo cat /var/log/secure 查看系统的安全日志,然后在安全日志中看到SSH登录过程中提示了如下错误:

找到问题:Authentication refused: bad ownership or modes for directory /home/root

后面的目录代表权限不匹配

解决:

(替换成你log中的目录)执行如下:

chmod g-w /home/raini
chmod 700 ./.ssh 
chmod 600 ~/.ssh/authorized_keys

PS:SSH进行认证的过程中除了对用户目录有权限要求外,对 .ssh 文件夹和 authorized_keys 文件同样也要限制。

(可选)重启SSH服务 $ service sshd restart

解决SSH免密登录配置成功后不生效问题_第4张图片

 

 

  • 三、非必须:

$ setfacl -m u:raini:rwx /root/

 

你可能感兴趣的:(linux)