SSH的主机验证和身份验证(一)

本文深入探讨SSH的主机验证和身份验证过程,包括非对称加密原理、SSH的概要以及认证流程。主机验证阶段,客户端通过比对known_hosts文件中的host key与服务器发送的host key指纹来确认主机身份。身份验证阶段,SSH支持多种机制,如公钥和密码认证,公钥认证涉及客户端的id_rsa.pub发送到服务端的authorized_keys文件。验证通过后,根据命令行参数决定是直接登录还是执行特定命令。
摘要由CSDN通过智能技术生成

1.1 非对称加密基础知识

对称加密:加密和解密使用一样的算法,只要解密时提供与加密时一致的密码就可以完成解密。
很简单的加密方式,只要一把钥匙能够同样打开本地锁和服务器锁就可以建立SSH连接

**非对称加密:**通过公钥(public key)和私钥(private key)来加密、解密。公钥加密的内容可以使用私钥解密,私钥加密的内容可以使用公钥解密。一般使用公钥加密,私钥解密,但并非绝对如此,例如CA签署证书时就是使用自己的私钥加密。在接下来介绍的SSH服务中,虽然一直建议分发公钥,但也可以分发私钥。

//公钥和私钥均有加密内容,均可以相互解密

所以,如果A生成了(私钥A,公钥A),B生成了(私钥B,公钥B),那么A和B之间的非对称加密会话情形包括:

(1).A将自己的公钥A分发给B,B拿着公钥A将数据进行加密,并将加密的数据发送给A,A将使用自己的私钥A解密数据。

(2).A将自己的公钥A分发给B,并使用自己的私钥A加密数据,然后B使用公钥A解密数据。

(3).B将自己的公钥B分发给A,A拿着公钥B将数据进行加密,并将加密的数据发送给B,B将使用自己的私钥B解密数据。

(4).B将自己的公钥B分发给A,并使用自己的私钥B加密数据,然后A使用公钥B解密数据。
首先公钥和私钥是俗称的不对称加密方式,也就是非对称加密算法,是对以前的对称加密(使用用户名与密码)方式的提高。

【这里讲解一下为什么私钥不可分发】
私钥有两个作用,一个是解密加密,一个是辨别身份,如果分发私钥那么我们就无法建立唯一的信息传输通道,也就是拥有私钥的其他人也可以被系统认为是我然后盗取我的信息

私钥是完成交易的唯一不要条件,为了给其他人(网络中的其他节点)证明你拥有对应的私钥,完成了对应的交易,就需要将公钥发给大家,来证明你拥有对应的私钥。

因为私钥可生成公钥,但是公钥无法倒推私钥,所以这种方式即能证明交易成功,又能保证私钥的安全性。

简单理解就是:既然是加密,那肯定是不希望别人知道我的消息,所以只有我才能解密,所以可得出公钥负责加密,私钥负责解密;同理,既然是签名,那肯定是不希望有人冒充我发消息,只有我才能发布这个签名,所以可得出私钥负责签名,公钥负责验证。

虽然理论上支持4种情形,但在SSH的**身份验证阶段,SSH只支持服务端保留公钥,客户端保留私钥的方式,**所以方式只有两种:客户端生成密钥对,将公钥分发给服务端;服务端生成密钥对,将私钥分发给客户端。只不过出于安全性和便利性,一般都是客户端生成密钥对并分发公钥。后文将给出这两种分发方式的示例。

1.2 SSH概要

(1).SSH是传输层和应用层上的安全协议,它只能通过加密连接双方会话的方式来保证连接的安全性。当使用ssh连接成功后,将建立客户端和服务端之间的会话,该会话是被加密的,之后客户端和服务端的通信都将通过会话传输。

(2).SSH服务的守护进程为sshd,默认监听在22端口上。

(3).所有ssh客户端工具,包括ssh命令,scp,sftp,ssh-copy-id等命令都是借助于ssh连接来完成任务的。也就是说它们都连接服务端的22端口,只不

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值