• SSH建立连接的过程


    1.     服务器建立公钥档: 每一次启动 sshd 服务时,该服务会主动去找 /etc/ssh/ssh_host* 的档案,若刚刚安装完ssh软件时,由于没有这些公钥档案,通过/etc/init.d/sshd restart 的时候会自动产生这些公钥档案。但是有时候可能没有/etc/init.d/sshd,这是需要ssh-keygen去计算出这些需要的公钥档案,同时也会计算出服务器自己需要的私钥档;

    因为没有公钥档案所以,启动时发生错误

    /usr/sbin/sshd
    Could not load host key: /etc/ssh/ssh_host_rsa_key
    Could not load host key: /etc/ssh/ssh_host_ecdsa_key
    Could not load host key: /etc/ssh/ssh_host_ed25519_key
    #这说明没有/etc/ssh/ssh_host*相关的档案

    解决办法:

    #ssh-keygen 中的参数 -q 表示以quiet方式执行,也就是不输出执行情况。 -t 表示生成的host key 的类型
    [root@f795f10ac377 hadoop]# ssh-keygen -q -t rsa -b 2048 -f /etc/ssh/ssh_host_rsa_key -N ''
    [root@f795f10ac377 hadoop]# ssh-keygen -q -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key -N ''
    [root@f795f10ac377 hadoop]# ssh-keygen -t dsa -f /etc/ssh/ssh_host_ed25519_key  -N ''
    Generating public/private dsa key pair.
    Your identification has been saved in /etc/ssh/ssh_host_ed25519_key.
    Your public key has been saved in /etc/ssh/ssh_host_ed25519_key.pub.
    The key fingerprint is:
    d4:8a:c2:e0:75:cf:fc:2b:46:b2:8a:b4:d9:a2:8b:7a root@f795f10ac377
    The key's randomart image is:
    +--[ DSA 1024]----+
    |                 |
    |         .       |
    |  . . . . .      |
    | . + . * .       |
    |  . o . S        |
    |     .. ..       |
    |  .    +  .      |
    |..E=  . o  .     |
    |*++.o. . ..      |
    +-----------------+


    2.     客户端主动联机要求: 若客户端想要联机到 ssh 服务器,则需要使用适当的客户端程序来联机,包括 ssh, pietty 等客户端程序;
    3.     服务器传送公钥档给客户端: 接收到客户端的要求后,服务器便将第一个步骤取得的公钥档案传送给客户端使用 (此时应是明码传送,反正公钥本来就是给大家使用的!);
    4.     客户端记录/比对服务器的公钥数据及随机计算自己的公私钥: 若客户端第一次连接到此服务器,则会将服务器的公钥数据记录到客户端的用户家目录内的 ~/.ssh/known_hosts 。若是已经记录过该服务器的公钥数据,则客户端会去比对此次接收到的与之前的记录是否有差异。若接受此公钥数据, 则开始计算客户端自己的公私钥数据;
    5.     回传客户端的公钥数据到服务器端: 用户将自己的公钥传送给服务器。此时服务器:『具有服务器的私钥与客户端的公钥』,而客户端则是: 『具有服务器的公钥以及客户端自己的私钥』,你会看到,在此次联机的服务器与客户端的密钥系统 (公钥+私钥) 并不一样,所以才称为非对称式密钥系统喔。
    6.     开始双向加解密: (1)服务器到客户端:服务器传送数据时,拿用户的公钥加密后送出。客户端接收后,用自己的私钥解密; (2)客户端到服务器:客户端传送数据时,拿服务器的公钥加密后送出。服务器接收后,用服务器的私钥解密。

  • 相关阅读:
    设计模式12-享元模式
    设计模式11-外观模式
    设计模式10-装饰模式
    设计模式09-组合模式
    设计模式08-桥接模式
    设计模式07-适配器模式
    设计模式06-原型模式
    获取cookie信息
    JMeter 配置元件之-HTTP Cookie管理器-实现 Cookie 登录
    jmeter基础概念
  • 原文地址:https://www.cnblogs.com/linux-wangkun/p/5742344.html
Copyright © 2020-2023  润新知