共计 1268 个字符,预计需要花费 4 分钟才能阅读完成。
gitlab 装置后呈现了默认的证书有效的问题(这可能是装置过程中产生谬误导致的),这使得 chrome
无奈向指定的站点发动申请。
能够通过以下两种形式来解决。
长期解决方案
如果你应用的是 chrome
浏览器,则能够在产生谬误的页面上任意点击左键,而后在键盘上输出thisisunsafe
,此时便会关上网站。
永恒解决方案
永恒的计划当然是更新证书,收费的证书的申请形式有很多,在此不论述。比方我是由阿里云申请的,在下载的列表中会有很多项,比方:iss\apache\tomcat\nginx 等。接着咱们下载对应的私钥文件及数字签名证书即可。
比方咱们下载 apache
对应的 key
文件以及 crt
文件。其中:
key
文件则是服务器用到的私钥,这个文件只能服务器用,不能扩散。crt
文件在用户拜访时,同返回的内容一并返回给用户。
有了这两个文件,就有了 https
加密传输的根底。能够这么简略来了解:
key
文件是服务器用来加密、解密的。crt
文件是客户用来加密、解密的。
咱们将上述两个文件下载后,对应替换 gitlab
的证书配置文件即可,地位是:/etc/gitlab/ssl
,步骤如下:
- 备份原
key
、crt
文件。 - 将下载到的
key
、crt
文件改为原key
、crt
文件. - 执行:
sudo gitlab-ctl restart
此时,再次拜访 gitlab
的站点便能够顺利关上了。
加密传输
既然说到了,就不防对加密传输多讲几次。在https
,加密解密分为两种:
- 第一种是加密和解密的密钥雷同的
AES
算法。该算法的长处是加密、解密速度快。毛病是加密与解密密钥雷同。咱们又把这种算法称为对称加密算法。 - 第二种是加密和解密的密钥不雷同的
RSA
算法。简略来讲就是用123
加密的内容须要用456
来解密,而用456
加密的内容则须要应用123
来解密。该算法的长处是保密性强,毛病是加密解密速度慢。咱们把这种加密与解密的密钥不雷同的算法又称为非对称算法。
而 https
则聪慧的联合了两种算法,其实前阵子那个风行的 勒索病毒
也是用的这个原理。
- 在数据加密解密过程中应用
AES
算法。 - 在传入
AES
算法应用的密钥时应用RSA
算法。
在 RSA
算法中,咱们把保留的那个密钥称为 私钥
,该明码仅被签发者把握;而把那个发送给他人的密钥称为 公钥
,公钥能够被任意多的用户把握。而一个私钥能够对应有限多个公钥。
如果你对
AES
和RSA
算法还不是太理解,请先学习这两种算法的根底。
同时为了避免数据在中途被劫持,产生替换的危险,又引入了根证书签发机构。最初它整体的传输过程大略是这样的:
- 服务端向 CA 签发机构来申请证书。
- CA 将加密后的公钥以及未加密的私钥给服务端。
- 客户端进行加密申请(以 https: 打头申请站点)
- 服务端返回 CA 签发的公钥
- 客户端查看 CA 签发的公钥的有效性。
- 客户端通过 CA 签发的公钥来获取服务器端的公钥
- 客户端随机生一个
AES
密钥,并将AES
密钥通过服务端公钥进行加密后传递给服务端 - 服务端通过私钥对客户端传入的加密后的数据进行解密,而后失去
AES
密钥 - 客户端与服务端应用独特的
AES
密钥进行高兴、疾速的通信。
简略画个图,大略长这样:
正文完