zoukankan      html  css  js  c++  java
  • limux密钥对配置登陆主机

    1. Linux主机免密码使用密钥登陆

    这里假设主机A(192.168.0.113)用来远程连接主机B(192.168.0.186)

    在主机A上执行如下命令来生成配对密钥:ssh-keygen -t rsa -b 3072

    -t参数指定加密算法为rsa,-b参数指定密钥长度,可以是1024、2048、3072等等,位数越长,被暴力破解所需的时间越久

    遇到提示回车默认即可,公钥被存到用户目录下.ssh目录,比如root存放在:/root/.ssh/id_rsa.pub

    .ssh 目录中的 id_rsa.pub 文件传输到主机B
    在主机A中执行如下命令和主机B建立信任,例(假设主机B的IP为:192.168.0.186):

    ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.0.186
    

    如上命令的实际效果是在主机B的/root/.ssh/的目录下新建一个authorized_keys文件,其内容就是主机A的id_rsa.pub内容

    下面就可以用scp、ssh命令不需要密码来远程连接主机B了

    ssh root@192.168.0.186 回车就不需要密码了。
    

    如果机器B需要添加多个机器的公钥,则需要在authorized_keys中追加公钥内容,命令如下:
    在其他机器上把公钥文件发送给主机B,然后在主机B上执行如下命令

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

    id_rsa : 生成的私钥文件
    id_rsa.pub : 生成的公钥文件
    know_hosts : 已知的主机公钥清单

    如果希望ssh公钥生效需满足至少下面两个条件:

    1. .ssh目录的权限必须是700
    2. .ssh/authorized_keys文件权限必须是600

    1.1 主机B取消密码登陆

    # vim /etc/ssh/sshd_config  
    PasswordAuthentication no     //yes改为no  
    ChallengeResponseAuthentication no  //yes改为no  
          
    RSAAuthentication yes   //去掉前面的注释  
    PubkeyAuthentication yes  //去掉前面的注释  
    AuthorizedKeysFile .ssh/authorized_keys  //去掉前面的注释  
    

    改完后重启sshd就OK了,在这里要注意,一定要先测试密钥是不是能登录,成功后在禁止密码登录,不然很容易把自己墙外面

    2. linux ssh密钥登录和取消密钥登录

    # 取消密钥登录
    #PubkeyAuthentication yes 把yes改为no
    PubkeyAuthentication no
     
    # 取消密钥登录只需要把no改成yes
    PasswordAuthentication yes
    
    # 重启sshd服务
    systemctl restart sshd.service
    

    3. 使用密钥方式登陆Linux主机

    这里以主机B为例,使用SecureCRT 8.5远程连接软件

    先使用密码的方式登陆主机B
    执行如下命令来生成配对密钥:ssh-keygen -t rsa -b 3072
    然后,在主机B上安装公钥:

    cd /root/.ssh
    cat id_rsa.pub >> authorized_keys
    

    为了确保连接成功,请保证以下文件权限正确:

    chmod 600 authorized_keys
    chmod 700 ~/.ssh
    

    编辑 /etc/ssh/sshd_config 文件,进行如下设置:

    PubkeyAuthentication yes
    AuthorizedKeysFile      .ssh/authorized_keys
    
    

    留意 root 用户能否通过 SSH 登录: PermitRootLogin yes

    重启 SSH 服务:service sshd restart

    然后把id_rsa.pub公钥文件下载到本地,打开SecureCRT软件,在Authentication一栏选中PublicKey,
    输入主机IP,用户名,选中下载的公钥文件,然后连接登陆。

    以密钥方式登录成功后,再禁用密码登录: PasswordAuthentication no

  • 相关阅读:
    ubuntu 通过命令将数据复制到u盘
    项目感言--功能的模块化
    java 中变量的存储与引用
    java 基础拾漏
    自动完成--autoComplete插件(2)
    自动完成--autoComplete插件
    Linux查看端口
    Linux查看系统信息
    js splice方法
    slice、substring、substr
  • 原文地址:https://www.cnblogs.com/sanduzxcvbnm/p/11387156.html
Copyright © 2011-2022 走看看