gpt4 book ai didi

ssl - 在 Kubernetes 集群中哪些 channel 应该使用 SSL?

转载 作者:行者123 更新时间:2023-12-04 22:38:50 27 4
gpt4 key购买 nike

我有以下 Kubernetes 设置(请原谅糟糕的 ASCII 艺术):

Azure SQL DB_1 > deployment_1 > service_1 \
Azure SQL DB_2 > deployment_2 > service_2 > -> nginx_ingress
Azure SQL DB_N > deployment_N > service_N /

数据库位于 Kubernetes 集群之外。它们通过 Private Endpoint 公开到 Kubernetes 集群所在的 VNet。它们在该 VNet 中获取专用 IP 地址,否则无法访问。

每个部署都是不同的微服务。每个人前面都有一个服务来处理通信。反过来,所有这些服务都可以通过 NGINX 入口到达。所有服务都配置为 ClusterIP,因此无法从集群外部访问它们。 VNet 外部的唯一入口点是通过入口。

我的问题是,这些 channel 中的哪些应该使用 SSL 保护,哪些地方不值得(例如,因为对性能的影响)?
  • 当然,Ingress 前面会有 SSL。这是给定的。
  • 入口和服务之间应该有 SSL 吗?
  • 服务和背后的微服务之间是否应该存在 SSL?
  • 数据库本身似乎已经自动进行加密连接。有什么理由不需要这样做,或者相反,可以/应该以某种方式使其更安全吗?

  • 当然,我知道更多的加密通常是一件好事。但是,例如,是否值得为微服务和服务之间的通信生成和跟踪证书,因为这些证书是集群内部的,无法以任何其他方式访问?

    感谢您提供的任何信息/示例/经验!

    最佳答案

    简单的是仅在入口层终止 TLS,因为它在 AKS 内部(我假设)并且 AKS 的 VNET 是安全的,因此不会直接暴露于外部世界,只有入口 nginx Controller 会暴露于外部世界。

    如果您使用的是 SQL 服务器,那么基于 DB 的通信已经在 TLS 的底层。

    除此之外,您还可以在需要时定义 CORS。

    关于ssl - 在 Kubernetes 集群中哪些 channel 应该使用 SSL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62390456/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com