详解istio mtls双向身份认证

Istio 中网格内 Pod 间通信流量的默认加密状态

在 Istio 服务网格中,如果两个 Pod 都已注入 Sidecar 代理(即都在网格内),它们之间的通信流量默认会加密。这是通过互信 TLS(mTLS,Mutual TLS)实现的,Istio 会自动将网格内部流量升级为 mTLS,确保服务间加密传输和身份验证。

详细说明

  • 默认配置(PERMISSIVE 模式) :Istio 的默认 PeerAuthentication 策略是 PERMISSIVE 模式,这允许 Sidecar 同时接受明文(plaintext)和 mTLS 流量。 然而,Istio 的 Envoy 代理会智能检测:当源和目标 Pod 都有代理时,它会自动优先使用 mTLS 发送加密流量,而非明文。
  • 自动升级机制:流量在两个代理(Proxy Enforcement Points, PEPs)之间会自动升级为 mTLS,无需手动干预。这确保了网格内服务的安全通信。
  • 严格模式(STRICT):如果需要强制仅允许 mTLS(拒绝明文),可以通过配置 PeerAuthentication 切换到 STRICT 模式。

示例配置(可选,切换到 STRICT)

yaml 复制代码
apiVersion: security.istio.io/v1beta1
kind: PeerAuthentication
metadata:
  name: default
spec:
  mtls:
    mode: STRICT

注意事项

  • 适用范围:仅限于网格内(mesh-internal)流量;外部流量需额外配置 Gateway 或 DestinationRule。
  • 验证方法 :使用 istioctl authn tls-check 命令检查 Pod 间的 mTLS 状态,或通过 Kiali 仪表盘可视化流量。

如果你的 Istio 版本或环境有自定义配置(如 Ambient 模式),行为可能略有差异;提供更多细节可进一步确认!

相关推荐
分布式存储与RustFS7 小时前
RustFS 1.0 GA 前的生产验收清单:从 rc.1 到 GA 该准备什么
云原生·开源·对象存储·分布式存储·s3·rustfs·性能基准
Henry-SAP9 小时前
SAP PP 反冲机制业务解析
人工智能·云原生·sap·erp
A-刘晨阳12 小时前
K8s集群中的数据库新范式:KES-Operator解锁部署、扩缩容、备份全链路自动化
运维·数据库·云原生·kubernetes·自动化
江畔柳前堤12 小时前
云原生 × AI 全景图谱:从 Kubernetes 到 Agent 基础设施的一次认知跃迁
人工智能·分布式·gpt·云原生·kubernetes·原型模式·agi
天机玄正13 小时前
云运维高阶二:CLI 调用 API (白名单追随)
windows·云原生
Ningcode_cloud13 小时前
Kubernetes 弹性伸缩实验手册:从集群搭建到 HPA / VPA 自动扩缩容
云原生·k8s·prometheus
玉&心15 小时前
安装Service Mesh(Istio)在dockers desktop的问题
云原生·istio·service_mesh
AgentMaster16 小时前
数据治理方案对比:开源自建 vs 商业平台 vs 云原生,三条技术路线的取舍与实践
云原生
阿里云云原生17 小时前
云原生可观测性落地:乐檬通过自然语言观测与自动巡检提升运维效能的最佳实践
运维·云原生·starops·云监控2.0
2601_9622992417 小时前
云原生时代的技术进阶:从零到精通掌握Kubernetes实战
云原生·kubernetes·学习路径·技术进阶·实战指南