SSH免密

  1. 生成密钥对,-t表示使用加密算法为 rsa

    ssh-keygen [-t rsa]
    

    生成文件id_rsaid_rsa.pub

    /home/用户名/.ssh/id_rsa 私钥 600 一定为600

    /home/用户名/.ssh/id_rsa.pub 公钥 644

  2. 分发公钥到客户端,-i表示复制到指定文件名称,也可以使用scp复制到客户端再修改名字为authorized_keys

    ssh-copy-id [-i id_rsa.pub] root@192.168.152.128
    

    客户端路径对应关系如下:

    用户 客户端路径
    root /root/.ssh/authorized_keys
    其他用户 /home/用户名/.ssh/authorized_keys

       ssh无密码登录,自然要用到Linux的基础命令ssh及scp,对于ssh和scp的使用见:《ssh,scp命令使用教程》

本机自身实现无密码登录:

  • 生成公钥、私钥对
       ssh-keygen
  • 进入到生成密钥文件夹中,默认在用户的家目录下面,一个隐藏的.ssh文件夹中。

       cd /home/hzq/.ssh/

  • 查看是否有“authorized_keys”文件,如果有,直接将公钥追加到“authorized_keys”文件中,如果没有,创建“authorized_keys”文件,并修改权限为“600”

  1. touch authorized_keys
  2. chmod 600 authorized_keys

  • 追加公钥到“authorized_keys”文件中
       cat id_rsa.pub >> authorized_keys 
  • 配置结束

两台主机(A,B主机)间实现无密码登录:

  • A,B主机分别生成公钥、私钥对
       ssh-keygen
  • 进入到生成密钥文件夹中,默认在用户的家目录下面,一个隐藏的.ssh文件夹中。

       cd /home/hzq/.ssh/
  • 使用scp命令,将A主机公钥发送给B主机,将B主机公钥发送给A主机。
       scp id_rsa.pub  hzq@192.168.1.161:/home/hzq
  • 分别查看A,B主机是否有“authorized_keys”文件,如果有,直接将需无密码登录的主机公钥追加到“authorized_keys”文件中,如果没有,创建“authorized_keys”文件,并修改权限为“600”

  1. touch authorized_keys
  2. chmod 600 authorized_keys
  • 追加公钥到“authorized_keys”文件中
       cat id_rsa.pub >> authorized_keys 
  • 配置结束

       总结:自己鼓励一下自己,加油↖(^ω^)↗!!!


上次更新时间: 2024/5/7 05:59:02