Prise en charge du Passthrough SSL dans le Listener

Dernière publication : Oct 02, 2026
Le Passthrough SSL est une configuration réseau où la requête SSL/TLS entrante n'est pas déchiffrée par l'équilibreur de charge (NetScaler). Au lieu de cela, le trafic chiffré est directement transmis au serveur backend désigné (le pod d'application) pour le déchiffrement.
  • Bien que le NetScaler ne déchiffre pas le trafic, la liaison d'un certificat au Listener reste obligatoire.
  • Le NetScaler effectue une correspondance SNI (Server Name Indication) sur le message initial Client Hello du client avant de transmettre la requête. Cela fournit une couche supplémentaire de routage et de vérification de sécurité.
  • Le Passthrough SSL est désormais pris en charge pour tout Listener lorsqu'il est référencé comme une annotation dans le Listener.
  • Cette prise en charge inclut les déploiements multicluster.
    • Si la fonction de passthrough est activée dans un listener multicluster dans un cluster, elle doit être activée dans tous les autres clusters participant à la solution multicluster.
  • Le passthrough est défini au niveau du listener. Tous les Ingresses faisant référence au listener auront le passthrough activé.
Le CRD Listener contrôle le comportement de l'IP virtuelle (VIP) frontale sur le NetScaler. Le paramètre suivant doit être inclus dans la spécification du Listener :
Paramètre Valeur Par défaut Description
relais True Faux Active le passthrough SSL pour le VIP et le port de ce Listener.

Exemple de CRD de Listener

apiVersion: citrix.com/v1
kind: Listener
metadata:
  name: listener-https-passthrough
  namespace: default
spec:
  multicluster: true # Required for this feature to be active
  vip: '1.2.3.4'
  port: 443
  protocol: https
  passthrough: true # Enables SSL Passthrough
  certificates:
  - secret:
    name: app-secret # Mandatory certificate binding

YAML d'Ingress

Aucune modification n'est requise dans la définition YAML d'Ingress pour activer le passthrough SSL. Le comportement de passthrough est entièrement contrôlé par le CRD de Listener.
Voici un exemple de définition d'Ingress qui fait référence au Listener configuré :
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: https-ingress
  annotations:
    ingress.citrix.com/listener: listener-https-passthrough
spec:
  ingressClassName: "cic-vpx"
  rules:
  - host: httpsapp-netscaler.com
    http:
      paths:
      - path: /
        pathType: Prefix
        backend:
          service:
            name: https-app
            port:
              number: 80