开发者社区> 问答> 正文

利用SLB实现https与http的混合访问

云中沙箱实验“利用SLB实现https与http的混合访问”教您如何在云上解决HTTP与HTTPS的混合访问!

云中沙箱,阿里云官方实验平台。网址:http://lab.aliyunedu.net  

一、基本概念


HTTPS 协议

    HTTPS能够加密信息,以免敏感信息被第三方获取。所以很多银行网站或电子邮箱等等安全级别较高的服务都会采用HTTPS协议。

基本概念
    HTTPS是更安全的HTTP协议,它在TCP(负责网络数据传输)和HTTP层之间,增加了一个SSL层。这一层通过数字证书和加密算法对HTTP请求进行加密。已经采用HTTP协议的网站要过渡到HTTPS,将在技术改造、服务器资源、流量资源上付出更多成本。
工作流程
     HTTPS其实是有两部分组成:HTTP + SSL / TLS,也就是在HTTP上又加了一层处理加密信息的模块。服务端和客户端的信息传输都会通过TLS进行加密,所以传输的数据都是加密后的数据。




负载均衡的证书管理功能

    针对HTTPS协议,提供统一的证书管理服务,证书无需上传到后端ECS,解密处理在负载均衡上进行,降低后端ECS CPU开销。

证书格式要求
    申请的证书为 linux 环境下 pem 格式的证书。负载均衡不支持其他格式的证书。

> 如果是通过 root CA 机构颁发的证书, 您拿到的证书为唯一的一份,不需要额外的证书,配置的站点即可被浏览器等访问设备认为可信。

> 如果是通过中级 CA 机构颁发的证书,您拿到的证书文件包含多份证书,需要人为的将服务器证书与中间证书合并在一起上传。

拼接规则为:服务器证书放第一份,中间证书放第二份,中间不要有空行。

注意:一般情况下,机构在颁发证书的时候会有对应说明, 请注意规则说明。

1)root CA 机构颁发的证书规则:

a.  [——-BEGIN CERTIFICATE——-, ——-END CERTIFICATE——-] 开头和结尾;请将这些内容一并上传;

b. 每行 64 字符,最后一行长度可以不足 64 字符。

2)中级机构颁发的证书规则:

a.

——-BEGIN CERTIFICATE——-

——-END CERTIFICATE——-

——-BEGIN CERTIFICATE——-

——-END CERTIFICATE——-

——-BEGIN CERTIFICATE——-

——-END CERTIFICATE——-

b.  证书之间不能有空行;

c. 每一份证书遵守第一点关于证书的格式说明;

3)RSA私钥规则:

a.  [——-BEGIN RSA PRIVATE KEY——-, ——-END RSA PRIVATE KEY——-] 开头结尾;请将这些内容一并上传。

b. 每行64字符,最后一行长度可以不足64字符。

说明:如果您不是按照上述方案生成私钥,得到[——-BEGIN PRIVATE KEY——-, ——-END PRIVATE KEY——-] 这种样式的私钥,您可以按照如下方式转换:

首先,运行以下命令:
openssl rsa -in old_server_key.pem -out new_server_key.pem


然后,将 new_server_key.pem 的内容与证书一起上传。

转换证书格式
负载均衡只支持 PEM 格式的证书,其他格式的证书需要转换成 PEM 格式后,才能上传到负载均衡中。建议通过 openssl 工具进行转换。本文提供了使用 openssl 将以下几种比较流行的证书格式转换为 PEM 格式的方法。

1)DER 转换为 PEM

运行以下命令进行证书转化:
openssl x509 -inform der -in certificate.cer -out certificate.pem

运行以下命令进行私钥转化:
openssl rsa -inform DER -outform PEM -in privatekey.der -out privatekey.pem

2)P7B 转换为 PEM

运行以下命令进行证书转化:
openssl pkcs7 -print_certs -in incertificat.p7b -out outcertificate.cer
获取 outcertificat.cer 里面 [——-BEGIN CERTIFICATE——-, ——-END CERTIFICATE——-] 的内容作为证书上传。

3)PFX 转换为PEM

运行以下命令提取私钥:

openssl pkcs12 -in certname.pfx -nocerts -out key.pem -nodes
运行以下命令提取证书:
openssl pkcs12 -in certname.pfx -nokeys -out cert.pem 二、更多实验信息


实验名称:利用SLB实现https与http的混合访问
实验网址:https://edu.cloudcare.cn/courses/a3a8f9e7dc164da69104f3d81fc47aaf/detail

展开
收起
仟与仟寻 2017-01-22 14:31:51 5893 0
0 条回答
写回答
取消 提交回答
问答排行榜
最热
最新

相关电子书

更多
阿里巴巴HTTP 2.0实践及无线通信协议的演进之路 立即下载
传统负载均衡助力AIOps闭环 立即下载
CDN助力企业网站进入HTTPS时代 立即下载