通过ssh协议实现用户key认证登录

author:JevonWei
版权声明:原创作品


用户实现key认证登录

主机A   192.168.198,134
主机B   192.168.198,131
主机C   192.168.198,136    
  • 创建无秘钥连接

    主机A秘钥连接主机B

    1. 客户端生成秘钥对
      ssh-keygen -t rsa [-p ' '] [-f "~/.ssh/id_rsa"] -t 指定加密类型,默认为rsa,可省略,-P指定创建秘钥连接,可为空,-f指定秘钥文件存放路径,默认存放路径为~/.ssh/id_rsa
    2. 客户端将生成的公钥文件传输给ssh服务端对应的用户家目录下
      ssh-copy-id -i ~/.ssh/id_rsa.pub danran@192.168.198.131 -i 指定公钥文件路径,传输给192.168.198.131主机上的danran用户的家目录下
    3. ssh danran@192.168.198.131 使用秘钥自动登录,无需键入用户密码

image

主机A秘钥连接主机C
4. ssh-copy-id -i ~/.ssh/id_rsa.pub danran@192.168.198.136 \ 复制本机的公钥文件到第三台主机上root用户家目录下    
5. ssh danran@192.168.198.136  \使用秘钥连接第二台主机      

image

主机B秘钥连接主机A   
6. ssh-keygen -t dsa  \ 主机B创建秘钥文件,-t指定dsa算法
7. ssh-copy-id -i ~/.ssh/id_dsa.pub 192.168.198.134   \-i 指定公钥文件路径,不指定传输的用户即为默认的当前用户    
8. ssh 192.168.198.134   \ 自动登录   

image

9. 查看主机A上的公钥文件数据    
    cat ~/.ssh/known_hosts   \ 多个远程主机用户的公钥数据可追加到当前用户家目录下的.ssh/known_hosts文件中     

image
10. ssh 192.168.198.134 uname -r 可直接连接192.168.198.134主机并执行uname -r命令

  • 为秘钥添加口令(即每次连接都需输入秘钥口令)

    ssh-keygen -p -f .ssh/id_rsa 交互式为rsa秘钥文件添加口令

image

ssh-keygen -N "danran" -f .ssh/id_dsa   \非交互式直接指定dsa算法的秘钥文件的口令,-N ' '意为空口令  

image

  • 在本地主机上修改秘钥文件的口令

    ssh-keygen -p -f ~/.ssh/id_dsa -f 指定秘钥文件

image

  • 使用代理验证保存秘钥连接的口令(代理退出需重新登录)

    1. ssh-agent bash 将代理程序启动
    2. ssh-add 将秘钥文件的口令托管给代理
    3. ssh danran@192.168.198.131

image

  • Xshell生成key认证
    image
    选择加密算法及位数
    image
    image
    输入秘钥的口令,口令可为空
    image
    image
    秘钥导出保存到本地
    image
    将导出的秘钥文件传输到需连接的主机上的~/.shh下
    cat .ssh/id_rsa_1024.pub > .ssh/authorized_keys 将拷贝的秘钥文件必须命名为authorized_keys
    image
    使用xshell建立会话连接
    验证方式选择Public Key认证
    image
    若秘钥文件添加过口令,则在此键入秘钥的口令
    image

  • SecureCRT生成公钥文件
    image
    选择秘钥的加密算法
    image
    选择键入秘钥文件的口令,可为空
    image
    加密算法的位数
    image
    选择公钥私钥文件的存放到本地的路径
    image
    将本地的公钥文件传输到需连接主机的~/.ssh/下
    将传输的公钥文件格式进行转换

      ssh-keygen -i -f Identity.pub >> ~/.ssh/authorized_keys   \ -i指定公钥文件的路径,并命名为authorized_keys
    

    新建一个会话连接
    image
    选择验证方式和输入主机地址及用户名,即可登录
    image

SSH的相关内容

http://www.cnblogs.com/JevonWei/p/7231348.html

danran
原文地址:https://www.cnblogs.com/JevonWei/p/7231274.html