9.3. サービスメッシュ全体で strict mTLS を有効にする
istio-system などの istiod namespace に PeerAuthentication ポリシーを適用することで、メッシュ全体に mTLS を設定できます。istiod namespace 名は、Istio リソースの spec.namespace フィールドと一致する必要があります。
メッシュ全体の PeerAuthentication ポリシーの例
apiVersion: security.istio.io/v1
kind: PeerAuthentication
metadata:
name: default
namespace: istio-system
spec:
mtls:
mode: STRICT
さらに、API サーバーにはサイドカーがないため、API サーバーとの通信時の mTLS を無効にする DestinationRule リソースを作成します。サイドカーのない他のサービスにも同様の DestinationRule 設定を適用します。
メッシュ全体の DestinationRule ポリシーの例
apiVersion: networking.istio.io/v1
kind: DestinationRule
metadata:
name: api-server
namespace: istio-system
spec:
host: kubernetes.default.svc.cluster.local
trafficPolicy:
tls:
mode: DISABLE