SSH基础
Secure Shell ,简称SSH,是建立在应用层基础上的安全协议
例如Xshell就是运用SSH协议来实现跨系统的远程操作
OpenSSH
功能:能够利用SSH进行远程控制,远程登录
特点:对传输的数据进行加密,保护传输数据的安全(开门关门)
SSH原理
SSH基于非对称公钥加密技术进行:
- 数据加密传输
- 客户端和服务器的身份验证
非对称加密包含 public key (公钥)和 private key (私钥)两种密钥,密钥其实就是输入加密算法的参数,本质上是一串不规则的字符串。
发送方使用接收方提供的公钥加密数据
接收方使用自己的私钥解密数据
SSH初次连接流程
在使用SSH进行通信时,通信过程分为以下几个步骤:
1)生成会话密钥: 会话密钥通过密钥协商技术生成密钥。这个密钥会被通过被登录机器的密钥对进行加密后传输,用于后续所有(通过对称加密方式进行的)加密通信。
2)用户身份认证(登录):* 这个对登录者进行身份验证的过程是通过登录者的密钥对儿对数据进行加解密验证实现的,这个过程中传输的所有数据都是通过上一步生成的密钥加密过的。
3)数据加密通信: 后面就行基于第1步生成的密钥进行数据加密传输的通信过程了。
流程
- 在主机A上向主机B发送连接请求;
- 主机B在与用户建立连接后,把自己的公钥发送给主机A;
- 主机A通过密钥协商技术产生一个随机密钥&#