---
title: Istio SDS 与多域证书管理(Egress_Ingress、SNI 与轮换验证)
date: 2025-11-26
keywords:
- SDS
- 证书轮换
- SNI
- Ingress
- Egress
description: 使用Istio SDS在入口与出口网关管理多域证书,按SNI精确匹配并实现无中断轮换,提供配置示例与可重复验证方法。
categories:
- 文章资讯
- 技术教程
---
概述
SDS支持以动态方式向网关加载与轮换证书, 实现多域名的统一管理。结合SNI匹配与证书挂载策略, 可在不重启网关的情况下完成证书更新与扩展。
关键实践与参数
- Ingress证书: 使用
credentialName引用多个Secret并按主机匹配 - Egress证书: 在出口DR配置
tls与sni并挂载CA证书 - 轮换策略: 通过Secret更新触发SDS重新加载, 无中断
- 审计: 在网关观察证书有效期与访问日志
示例/配置/实现
apiVersion: networking.istio.io/v1beta1
kind: Gateway
metadata:
name: ingress-gw
spec:
selector: { istio: ingressgateway }
servers:
- port: { number: 443, name: https, protocol: HTTPS }
hosts: ["example.com", "api.example.com"]
tls:
mode: SIMPLE
credentialName: cert-example-com
- port: { number: 443, name: https, protocol: HTTPS }
hosts: ["shop.example.com"]
tls:
mode: SIMPLE
credentialName: cert-shop-example-com
apiVersion: networking.istio.io/v1alpha3
kind: DestinationRule
metadata:
name: external-dr
spec:
host: api.external.com
trafficPolicy:
tls:
mode: SIMPLE
sni: api.external.com
caCertificates: /etc/istio/egress-certs/ca.crt
验证
- SNI匹配: 访问不同域名返回正确证书链与主机名
- 轮换无中断: 更新Secret并验证现有连接与新连接均正常
- 出站TLS: 访问外部服务在出口处完成TLS握手并SNI匹配
- 审计: 记录证书到期提醒与更换事件
注意事项
- Secret权限与生命周期需严格管理
- 多域配置需避免通配导致误匹配
- 出口证书与CA需按外部服务策略配置
- 与CDN或外部代理的证书策略保持一致

发表评论 取消回复