Contrôleur d'entrée Citrix ADC

Certificat SSL pour les services de type LoadBalancer via la ressource secrète Kubernetes

Cette section fournit des informations sur la façon d’utiliser le certificat SSL stocké en tant que secret Kubernetes avec des services de type LoadBalancer. Le certificat est appliqué si l’annotation service.citrix.com/service-type est SSL ou SSL_TCP.

Utilisation du certificat par défaut du Citrix ingress controller

Si le certificat SSL n’est pas fourni, vous pouvez utiliser le certificat du Citrix ingress controller par défaut.

Vous devez fournir le nom secret que vous souhaitez utiliser et l’espace de noms à partir duquel il doit être pris en tant qu’arguments dans le fichier YAML du Citrix ingress controller.

Citrix ingress controller par défaut

        --default-ssl-certificate <NAMESPACE>/<SECRET_NAME> 

Annotations de service pour le certificat SSL en tant que secrets Kubernetes

Le Citrix ingress controller fournit les annotations de service suivantes pour utiliser les certificats SSL stockés en tant que secrets Kubernetes pour les services de type LoadBalancer.

Annotation de service Description
service.citrix.com/secret Utilisez cette annotation pour spécifier le nom de la ressource secrète pour le certificat du serveur frontal. Il doit contenir un certificat et une clé. Vous pouvez également fournir une liste de certificats d’autorité de certification intermédiaires dans la section des certificats, suivie du certificat de serveur. Ces autorités de certification intermédiaires sont automatiquement liées et envoyées au client lors de la prise de contact SSL.
service.citrix.com/ca-secret Utilisez cette annotation pour fournir un certificat d’autorité de certification pour l’authentification du certificat client. Ce certificat est lié au serveur virtuel SSL frontal dans Citrix ADC.
service.citrix.com/backend-secret Utilisez cette annotation si la communication principale entre Citrix ADC et votre charge de travail se fait sur un canal chiffré et que vous avez besoin de l’authentification du client dans votre charge de travail. Ce certificat est envoyé au serveur pendant l’établissement de liaison SSL et il est lié au groupe de services SSL principal.
service.citrix.com/backend-ca-secret Utilisez cette annotation pour activer l’authentification du serveur qui authentifie le certificat du serveur principal. Cette configuration lie le certificat d’autorité de certification du serveur au service SSL sur Citrix ADC.
service.citrix.com/preconfigured-certkey Utilisez cette annotation pour spécifier le nom de la clé de certification préconfigurée dans Citrix ADC à utiliser en tant que certificat de serveur frontal.
service.citrix.com/preconfigured-ca-certkey Utilisez cette annotation pour spécifier le nom de la clé de certification préconfigurée dans Citrix ADC à utiliser comme certificat d’autorité de certification pour l’authentification du certificat client. Ce certificat est lié au serveur virtuel SSL frontal dans Citrix ADC.
service.citrix.com/preconfigured-backend-certkey Utilisez cette annotation pour spécifier le nom de la clé de certification préconfigurée dans Citrix ADC à lier au groupe de services SSL principal. Ce certificat est envoyé au serveur lors de la prise de contact SSL pour l’authentification du serveur.
service.citrix.com/preconfigured-backend-ca-certkey Utilisez cette annotation pour spécifier le nom de la clé de certificat d’autorité de certification préconfigurée dans Citrix ADC à lier au groupe de services SSL principal pour l’authentification du serveur.

Exemples : secret frontal et secret de l’autorité de certification frontale

Voici quelques exemples d’annotation service.citrix.com/secret :

L’annotation suivante s’applique à tous les ports du service.

        service.citrix.com/secret: hotdrink-secret

Vous pouvez utiliser la notation suivante pour spécifier le certificat applicable à des ports spécifiques en indiquant portname ou port-protocol comme clé.

        # port-protocol : secret

        service.citrix.com/secret: '{"443-tcp": "hotdrink-secret", "8443-tcp": "hotdrink-secret"}' 

         # portname: secret

        service.citrix.com/secret: '{"https": "hotdrink-secret"}' 

Voici quelques exemples d’annotation service.citrix.com/ca-secret.

Vous devez spécifier l’annotation suivante pour attacher le secret d’autorité de certification généré qui est utilisé pour l’authentification du certificat client pour un service déployé dans Kubernetes.

L’annotation suivante s’applique à tous les ports du service.

  service.citrix.com/ca-secret: hotdrink-ca-secret

Vous pouvez utiliser la notation suivante pour spécifier le certificat applicable à des ports spécifiques en indiquant portname ou port-protocol comme clé.

  # port-protocol: secret
  service.citrix.com/ca-secret: '{"443-tcp": "hotdrink-ca-secret", "8443-tcp": "hotdrink-ca-secret"}'      

  # portname: secret

  service.citrix.com/ca-secret: '{"https": "hotdrink-ca-secret"}' 

Exemples : secret principal et secret de l’autorité de certification principale

Voici quelques exemples d’annotation service.citrix.com/backend-secret.

  # port-protocol: secret
  service.citrix.com/backend-secret: '{"443-tcp": "hotdrink-secret", "8443-tcp": "hotdrink-secret"}'      

  # portname: secret

  service.citrix.com/backend-secret: '{"tea-443": "hotdrink-secret", "tea-8443": "hotdrink-secret"}' 

  # applicable to all ports

  service.citrix.com/backend-secret: "hotdrink-secret"

Voici quelques exemples d’annotation service.citrix.com/backend-ca-secret.

  # port-proto: secret
  service.citrix.com/backend-ca-secret: '{"443-tcp": "coffee-ca", "8443-tcp": "tea-ca"}'      

  # portname: secret

  service.citrix.com/backend-ca-secret: '{"coffee-443": "coffee-ca", "tea-8443": "tea-ca"}' 

  # applicable to all ports

  service.citrix.com/backend-ca-secret: "hotdrink-ca-secret"
Certificat SSL pour les services de type LoadBalancer via la ressource secrète Kubernetes