浅谈网站备案和SSL证书

浅谈网站备案和SSL证书

前言: 我的博客站点在今天搬迁了,因为白嫖的华为云服务器到期了。copy好sql和数据卷之后,就在我买的三个月的阿里云上又开始了暂驻。迁移博客的时候,避免不了的,我需要把页面中所有提及到原先ip的地方改回来。但是我觉得挺麻烦的,脑子一热就想着可以申请一个域名,每一次迁移,直接在域名哪里换ip地址就行。现在想来,我真的是个“大聪明”!

域名前置购置事项

域名的购买选择,我们可以选择国内的或者是国外的

  • 国内域名
    能供国内访问,也可以供国外访问
    但是缺点就是一定要实名认证

  • 国外域名
    有一些干净的,估计也可以供国内访问,但是比较少
    而且容易被墙
    优点是不需要进行实名认证

我写博客肯定是为了我自己方便访问呀!所以,我选择国内的域名

  • 于是我就去阿里云买了一个cn的域名,实名认证也不算耗时间,很快就搞好了。正当我输入域名,准备访问的时候,我才发现:用域名压根访问不了。我去看了域名的解析也没有问题,为什么呢?

  • 原来,我们用域名绑定了ip地址,客户端向DNS请求域名解析,DNS确实可以通过域名解析出ip地址,但是这个IP因为DNS检测到它没有在备案目录中,所以直接给它污染掉了,就访问不到。所以,购买域名还是不够的。还需要将服务器进行ICP备案才可以访问。

SSL证书

这个我本来也想搞一个的,无奈太贵了。那就说一下它的原理吧!

  • 我们的http是基于TCP协议之上的一种应用层协议,它通过将客户端和服务端之间直接建立TCP通道直连。没有加密处理。数据在传输过程中容易被抓包泄漏修改。不能保证数据完整性、隐私性、还有端口一致。完整性来说,就是别人可以通过网络抓包方式来修改原先要传的数据。隐私性,http没有经过数据加密,都是明文传输,于是就会导致诸如密码、身份证号等隐私信息泄漏。至于端口一致,就是别人甚至可以伪造服务端给你发送信息,而你完全不知道。所以说,只是采用http的网站是十分危险的。
HTTPS

既然http危险,那如何传输数据呢?后来,超文本传输安全协议(也就是https)由网景公司在1994年首次提出。

https的构成
  • https仍然采用http的传输模式,但是加入ssl作为安全防护
  • 既然引入了ssl,那它便重新建立了一种安全保障。和http不同,https在建立安全传输前是要进行握手操作的。
https的握手过程

这里不懂非对称加密会有点难理解,非对称加密就是指有一把锁有两把钥匙,一把钥匙只能用来加密,一把钥匙只能用来解开另外一把钥匙加的密。缺少哪一把都不行。不能像正常钥匙那样,用它开还能用它关。
同时,解释一下签名的概念。签名其实也是通过非对称加密实现

1.client向server发送hello信息
2.server向client发送ssl证书和公钥
3.client收到证书之后,根据证书上面的签发机构和签发机构的签名,证明证书是真的。也就是client找的server是正确的。
4.client随机生成一个对称密钥,称为sessionkey,并且使用发过来的公钥进行加密sessionkey。随后发送回server。
5.server通过自己持有的私钥进行解密,得到sessionkey。再用只有对话方才知道的密钥进行加密对话,这样就可以保证会话的安全性。

  • 问题来了:既然非对称加密可以保证安全性,那么为啥传输对话不都用非对称加密

非对称加密算法确实可以提供安全性,但它相比对称加密算法来说计算量大,速度慢,对于大量数据的加密传输不太适用。

综上,https有几次握手呢?一次?
其实,关于https的握手其实会有一次,或者是两次。因为每次要进行这样的运算是很浪费资源的,为了让sessionkey得到充分利用,于是引入了缓存的概念。也就是会话缓存。会话缓存一般存储在服务器的内存中。如果,客户端与服务端建立过安全连接并且缓存还生效,就只需要一次握手就可以,这一次握手就是为了使用之前的sessionkey来进行会话的。当然,如果没有,就需要两次了,一次建立安全连接,第二次和只需要一次的过程一样。
在这里插入图片描述

问题又来了,那我们平常听到的三次握手是指什么呢?

TCP 协议中用于建立连接的三次握手

  • 相比于https和http这种应用层协议,tcp是完全不在一个层次的传输层协议,负责处理端到端的数据传输。

  • 客户端发送 SYN 包:客户端向服务器发送一个带有 SYN(同步序列编号)标志的数据包,表示客户端请求建立连接,并指定初始序列号(ISN)。

  • 服务器回应 SYN-ACK 包:服务器收到客户端的 SYN 包后,会回应一个带有 SYN 和 ACK(确认)标志的数据包,表示服务器已经收到了客户端的请求,并确认了客户端的 ISN,并指定自己的 ISN。

  • 客户端发送 ACK 包:客户端收到服务器的 SYN-ACK 包后,会发送一个带有 ACK 标志的数据包给服务器,表示客户端确认了服务器的 ISN。

最后的最后,由于备案太麻烦了,还要居住证,我的网站就不用域名了,还是老老实实用ip访问吧!

  • 22
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值