• centos7设置ssh免密码登陆(证书认证)


    无密码登陆,其实是指通过证书认证的方式登陆,使用"公私钥"认证的方式来进行ssh登录。

    • "公私钥"认证方式原理

    1、首先在client上创建一对公私钥,

    公钥文件:~/.ssh/id_rsa.pub

    私钥文件:~/.ssh/id_rsa

    2、然后把公钥放到server上

    ~/.ssh/authorized_keys

    3、client登录server过程

    client保留私钥,在使用ssh登录server时,ssh程序发送私钥去和server上的公钥做匹配,若匹配成功则可以登录。

    • centos7配置证书验证登陆步骤

    a、未设置前,需要密码进行登陆

    b、确认系统已安装OpenSSH的server 和client

    rpm -qa|grep openssh

    c、注释掉sshd的配置文件如下三行,并重启sshd

      $ vi /etc/ssh/sshd_confi

      #RSAAuthentication yes
      #PubkeyAuthentication yes
      #AuthorizedKeysFile .ssh/authorized_keys

      $ /bin/systemctl restart  sshd.service      ---重启sshd

    d、生成证书公私钥

    ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa

     e、证书放置

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

     

    f、修改authorized_keys权限

    chmod 600 ~/.ssh/authorized_keys

    不安全的设置,将不能使用RSA功能

    g、测试登录

    ssh -lstack localhost

    • 免认证登陆远程服务器

    方法一:
      $cat ~/.ssh/id_rsa.pub | ssh 远程用户名@远程服务器ip `cat - >> ~/.ssh/authorized_keys`
    方法二:
      在本机上执行:
      $ scp ~/.ssh/id_dsa.pub 远程用户名@远程服务器ip:/home/stack/
      登陆远程服务器后执行:
      $ cat /home/stack/id_dsa.pub >> ~/.ssh/authorized_keys

      修改文件authorized_keys的权限

      $ chmod 600 ~/.ssh/authorized_keys

    • 排障命令及log

    ssh -v -lstack localhost     显示详细的登陆信息

    tail /var/log/secure -n 20     查看系统的日志文件

  • 相关阅读:
    王爽《汇编语言》第三版 第一章 基础知识
    JAVA拷贝视频文件无法播放的解决方法
    算法导论 第2章 算法基础
    今天来个爪哇去边框的小代码
    设计模式_Adapt
    qs面试记录
    zl面试记录
    pa_ns2面试记录
    pa_ns1面试总结
    sfjc面试记录
  • 原文地址:https://www.cnblogs.com/jacob-tian/p/6480723.html
Copyright © 2020-2023  润新知