zoukankan      html  css  js  c++  java
  • Centos 7.7 免密登录

    一、设置免密登录

    1、在~/.ssh目录下生成一对密匙

      cd ~/.ssh

      ssh-keygen -t rsa

    输入该命令后会有提示,一直回车即可

    2、将公共密匙保存到authorized_keys文件中,实现对自身免密码登录

      cat id_rsa.pub >> authorized_keys

    3、修改权限(需要修改~/.ssh文件夹和authorized_keys文件的,不然会报不允许的错误或者无法出现know_hosts文件)

      chmod 700 ~/.ssh

      chmod 644 ~/.ssh/authorized_keys

    4、修改SSH配置文件——“etc/ssh/sshd_config” 

      PermitRootLogin yes            # 允许root认证登录

      PubkeyAuthentication yes         # 启用公钥私钥配对认证方式

      AuthorizedKeysFile .ssh/authorized_keys   # 公钥文件路径(和上面生成的文件相同)

    5、重启SSH

      systemctl restart sshd

    二、两台主机互相免密登录

    1、将a的公共密匙发送给b 

      scp ~/.ssh/id_rsa.pub y@b:~/

    2、b将其密匙存放到自己的authorized_keys文件中

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

    3、修改B服务器SSH配置文件——“etc/ssh/sshd_config” 

      PermitRootLogin yes            # 允许root认证登录

      PubkeyAuthentication yes         # 启用公钥私钥配对认证方式

      AuthorizedKeysFile .ssh/authorized_keys   # 公钥文件路径(和上面生成的文件相同)

    5、重启SSH

      systemctl restart sshd

    这样两台机器就可以互相免密登录了

    三、部分主机设置后无法生效问题定位

    1、检查AuthorizedKeysFile配置是否启用authorized_keys  

      cat /etc/ssh/sshd_config |egrep AuthorizedKeysFile  

      AuthorizedKeysFile  .ssh/authorized_keys

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

     cat /var/log/secure 查看系统的安全日志

     报错信息:Authentication refused: bad ownership or modes for file /root/.ssh/authorized_keys

     原因 sshd为了安全,对属主的目录和文件权限有所要求。如果权限不对,则ssh的免密码登陆不生效。

     用户目录权限为 755 或者 700,就是不能是77x。

     .ssh目录权限一般为755或者700。

     rsa_id.pub 及authorized_keys权限一般为644

     rsa_id权限必须为600

     解决方法

     检测目录权限,把不符合要求的按要求设置权限即可。

     报错信息:reprocess config line 43: Deprecated option RSAAuthentication

     CentOS7.4相对于之前版本,做了一些与sshd相关的安全更新来加强sshd的安全性。其中之一就是弃用RSAAuthentication支持。从CentOS7.3升级上来的用户会在升级时被告知这一变化。

     RSAAuthentication (rsa认证)是只支持第1代ssh通讯协议使用的配置项,在CentOS7.4中被废除了,而且前面提到过CentOS7开始预设使用第二代通讯协议,在CentOS7.4中没有找到指定协议版本的配置行,个人猜测是CentOS7.4全面抛弃第1代协议。 第2代ssh通讯协议的密钥验证选项是

     #PubkeyAuthentication yes

     这个选项默认是注释掉的,并且是默认开启的,因此我们在使用第二代ssh通讯协议时不需要再去纠结 RSAAuthentication 选项了,在CentOS7.4中其强行添加 RSAAuthentication 配置会触发系统对它的废除提示。 

     reprocess config line 38: Deprecated option RSAAuthentication

     看到这里所有的疑惑就都解开了,将这个小坑记录下来希望后来的同学能少走弯路。

  • 相关阅读:
    slim的中间件
    slim中的请求头
    slim中的参数获取
    redis的事务操作
    关于redis有序集合http://www.runoob.com/redis/redis-sorted-sets.html
    linux下的一些命令的笔记
    slim的简单使用
    在windows+nginx的curl操作请求超时的问题
    关于启动php-fpm失败的解决办法
    lintcode-【中等】恢复IP地址
  • 原文地址:https://www.cnblogs.com/Nanaya/p/13202946.html
Copyright © 2011-2022 走看看