SSH与HTTPS

本文深入探讨了SSH和HTTPS这两种安全通信协议。SSH用于安全远程登录及其他任务,其安全性可能受到中间人攻击的威胁。为防止中间人攻击,介绍了两种解决方案:加强密码管理和公钥免密登录。HTTPS基于SSL/TLS协议,确保HTTP通信的安全,通过证书验证确保数据不被篡改。理解这些机制对于网络安全至关重要。
摘要由CSDN通过智能技术生成

第一部分 SSH

1.1常用的加密方式

需要注意的是非对称加密:如果用公钥对数据加密,那么只有用对应的私钥才能解密。同样的用私钥对数据加密,也只有对应的私钥才能解密。

使用私钥理论上可以推导出公钥,但是使用公钥很难推导出私钥

1.2ssh是什么

ssh是一种建立在应用层的安全协议,可用于网络主机之间加密,也即建立安全通道,如安全远程登陆、安全通信、远程指令执行。具体的实现有很多,比较主流的如OpenSSH

1.3一个典型的服务器登录过程

上述过程是否安全?

否,中间人攻击以及暴力破解

1.4中间人攻击

解决方案?

1.5中间人攻击解决方案

1.5.1针对密码登录解决方案一

问题的关键是,在客户端如何识别接受到的公钥,就是我们要登陆服务器的公钥,如何能识别问题也就解决了

在https中是通过CA认证解决的,但是服务器的公私钥是自己生成的

输入yes,然后可以输入密码,所以我们还是要看一下要登陆ip的

这样把问题抛给了登录人,人工识别

1.5.2方案二:公钥免密登录

例子:gitlab ssh登录就是采用这种方案,

 例子3:qae容器登录

第二部分

2.1HTTP、HTTPS与SSL/TLS

HTTP协议:超文本传输协议

SSL协议:网景公司设计的安全传输协议

TLS协议:网景与微软竞争中失败后,将SSL管理权转移给IETF,SSL重新进行标准化,重新推出TLS

HTTPS协议:是HTTP建立在SSL/TLS安全协议之上的

2.2HTTPS原理

  • https建立的过程。浏览器会收到一个证书。
  • 浏览器验证收到的证书,判断是否信息被篡改证书被替换
        -  判断证书是否受信任:根据证书内容去浏览器寻找根证书。若未找到根证书,代表此机构是不受信任的,此时浏览器会警告用户。
        -  判断证书是否被篡改:证书指纹是认证中心的私钥对证书内容hash后加密得到的因此到根证书后,通过根证书中获取公钥,然后用公钥去解密收到的证书指纹,得到认证时对证书内容的hash值。这时对收到证书的内容再次生成一个hash值, 判断信息是否被篡改。
        -  判断证书是否被替换:若信息未被篡改,则验证是否为目标服务器发送的证书,检查证书的<使用者>属性是否和我们请求的url相同。
  • 若证书验证成功,那么浏览器就可以确定该证书是目标服务器发送的,于是生成一个对称加密的密钥,使用收到证书的<公钥>进行加密。然后发送给服务器。
  • 即使加密串被拦截,但是拦截者没有私钥,信息不会被泄漏。目标服务器收到加密串后,使用私钥解密,获取到对应的密钥。
  • 而后浏览器和服务器使用对称加密进行数据传输。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值