idou老师教你学Istio 17 : 通过HTTPS进行双向TLS传输

栏目: 后端 · 发布时间: 7年前

内容简介:众所周知,HTTPS是用来解决 HTTP 明文协议的缺陷,在 HTTP 的基础上加入 SSL/TLS 协议,依靠 SSL 证书来验证服务器的身份,为客户端和服务器端之间建立“SSL”通道,确保数据运输安全。而Istio的双向TLS也用来保证数据传输安全。那么,Istio的双向TLS是如何与HTTPS服务一起工作的呢?下面通过实例演示Istio的双向TLS是如何与HTTPS服务一起工作的,包括三个部分:• 在没有 Istio sidecar 的情况下部署 HTTPS 服务

众所周知,HTTPS是用来解决 HTTP 明文协议的缺陷,在 HTTP 的基础上加入 SSL/TLS 协议,依靠 SSL 证书来验证服务器的身份,为客户端和服务器端之间建立“SSL”通道,确保数据运输安全。而Istio的双向TLS也用来保证数据传输安全。那么,Istio的双向TLS是如何与HTTPS服务一起工作的呢?

下面通过实例演示Istio的双向TLS是如何与HTTPS服务一起工作的,包括三个部分:

• 在没有 Istio sidecar 的情况下部署 HTTPS 服务

• 关闭 Istio 双向 TLS 认证情况下部署 HTTPS 服务

• 部署一个启动双向 TLS 的 HTTPS 服务。对于每个部署,请求连接到此服务并验证其是否有效。

环境准备

• 未启用双向TLS的安装了Istio的k8s集群

• 安装openssl,生成证书和configmap

通过openssl生成key和证书:

idou老师教你学Istio 17 : 通过HTTPS进行双向TLS传输

从给定的公私钥对创建TLS secret:

idou老师教你学Istio 17 : 通过HTTPS进行双向TLS传输

使用kubectl创建Configmap:

idou老师教你学Istio 17 : 通过HTTPS进行双向TLS传输

1.没有部署sidecar

创建一个不部署sidecar的基于nginx的HTTPS服务,并创建一个部署sidecar的sleep应用来调度nginx

idou老师教你学Istio 17 : 通过HTTPS进行双向TLS传输

idou老师教你学Istio 17 : 通过HTTPS进行双向TLS传输

检查上述pod是否正常运行

idou老师教你学Istio 17 : 通过HTTPS进行双向TLS传输

在pod正常运行时,从sleep应用的istio-proxy容器内访问HTTPS服务:

idou老师教你学Istio 17 : 通过HTTPS进行双向TLS传输

可以看到,nginx能正常访问。

  1. 部署sidecar并禁用双向TLS

删除上一步创建的未部署sidecar的HTTPS服务,并用sidecar部署它

idou老师教你学Istio 17 : 通过HTTPS进行双向TLS传输

查看pod是否正常启动:

idou老师教你学Istio 17 : 通过HTTPS进行双向TLS传输

在pod正常运行时,从istio-proxy容器运行,可以看到,nginx能正常访问:

idou老师教你学Istio 17 : 通过HTTPS进行双向TLS传输

  1. 部署sidecar,并启用双向TLS

通过配置网格级别的认证策略启用全局双向TLS,首先配置网格认证策略:

idou老师教你学Istio 17 : 通过HTTPS进行双向TLS传输

配置目的地规则:

idou老师教你学Istio 17 : 通过HTTPS进行双向TLS传输

此时,网格中的所有服务已经开启了双向TLS功能,从sleep容器中访问nginx是正常的:

idou老师教你学Istio 17 : 通过HTTPS进行双向TLS传输

从sleep容器中访问时,工作流为“sleep→sleep-proxy→nginx-proxy→nginx” ,此时,整个过程是7层流量,在sleep-proxy到nginx-proxy之间有一个L4双向TLS加密。

而在istio-proxy中运行时,它无法工作:

idou老师教你学Istio 17 : 通过HTTPS进行双向TLS传输

此时,工作流为“sleep-proxy→nginx-proxy→nginx”,nginx-proxy会从sleep-proxy中获得双向TLS流量,但是sleep-proxy无法提供客户端证书,因此,它不起作用。

总结:通过上述演示,可以了解到,当istio sidecar使用HTTPS服务部署时,无论是否启用双向TLS功能,代理自动从L7降到L4,所以,它不会终止原来的HTTPS通信。

相关服务请访问 https://support.huaweicloud.co ... _2019


以上所述就是小编给大家介绍的《idou老师教你学Istio 17 : 通过HTTPS进行双向TLS传输》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Head First Web Design

Head First Web Design

Ethan Watrall、Jeff Siarto / O’Reilly Media, Inc. / 2009-01-02 / USD 49.99

Want to know how to make your pages look beautiful, communicate your message effectively, guide visitors through your website with ease, and get everything approved by the accessibility and usability ......一起来看看 《Head First Web Design》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

html转js在线工具
html转js在线工具

html转js在线工具

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换