Contrôleur d'entrée Citrix ADC

Prise en charge du profil pour le CRD Listener

Vous pouvez utiliser des entités individuelles telles que le profil HTTP, le profil TCPet le profil SSL pour configurer respectivement HTTP, TCP et SSL pour le CRD Listener. La prise en charge des profils pour le CRD Listener vous permet de personnaliser le comportement du protocole par défaut. Vous pouvez également sélectionner les chiffrements SSL pour le serveur virtuel SSL.

profil HTTP

Un profil HTTP est un ensemble de paramètres HTTP. Un profil HTTP par défaut appelé nshttp_default_profile est configuré pour définir les configurations HTTP. Ces configurations sont appliquées, par défaut, globalement à tous les services et serveurs virtuels. Vous pouvez personnaliser les configurations HTTP d’une ressource d’écoute en spécifiant spec.policies.httpprofile. Si spécifié, Citrix ingress controller crée un nouveau profil HTTP avec les valeurs par défaut dérivées du profil HTTP par défaut et configure les valeurs spécifiées.

Il permet de dériver les valeurs par défaut du profil HTTP par défaut et de configurer les valeurs spécifiées.

L’exemple YAML suivant montre comment activer WebSocket pour un serveur virtuel frontal donné.

    apiVersion: citrix.com/v1
    kind: Listener
    metadata:
      name: test-listener
      namespace: default
    spec:
      vip: x.x.x.x
      port: 80
      protocol: http
      policies:
        httpprofile:
          config:
            websocket: "ENABLED"
<!--NeedCopy-->

Pour plus d’informations sur toutes les paires clé-valeur possibles pour le profil HTTP, reportez-vous à la section Profil HTTP.

Remarque :

Le « nom » est généré automatiquement.

Vous pouvez également spécifier un profil HTTP intégré ou un profil HTTP préconfiguré et le lier au serveur virtuel frontal, comme illustré dans l’exemple suivant.

apiVersion: citrix.com/v1
kind: Listener
metadata:
  name: test-listener
  namespace: default
spec:
  vip: x.x.x.x
  port: 80
  protocol: http
  policies:
    httpprofile:
      preconfigured: 'nshttp_default_strict_validation'
<!--NeedCopy-->

profil TCP

Un profil TCP est un ensemble de paramètres TCP. Un profil TCP par défaut appelé nstcp_default_profile est configuré pour définir les configurations TCP. Ces configurations sont appliquées, par défaut, globalement à tous les services et serveurs virtuels. Vous pouvez personnaliser les paramètres TCP en spécifiant spec.policies.tcpprofile. Lorsque vous spécifiez spec.policies.tcpprofile, Citrix ingress controller crée un profil TCP dérivé du profil TCP par défaut et applique les valeurs fournies dans la spécification, puis le lie au serveur virtuel frontal.

Pour plus d’informations sur toutes les paires clé-valeur possibles pour un profil TCP, reportez-vous à la section Profil TCP.

Remarque :

Le nom est généré automatiquement.

L’exemple suivant montre comment activer tcpfastopen et HyStart pour le serveur virtuel frontal.

apiVersion: citrix.com/v1
kind: Listener
metadata:
  name: test-listener
  namespace: default
spec:
  vip: x.x.x.x
  port: 80
  protocol: http
  policies:
    tcpprofile:
      config:
        tcpfastopen: "ENABLED"
        hystart: "ENABLED"
<!--NeedCopy-->

Vous pouvez également spécifier un profil TCP intégré ou un nom de profil TCP préconfiguré, comme illustré dans l’exemple suivant :

apiVersion: citrix.com/v1
kind: Listener
metadata:
  name: test-listener
  namespace: default
spec:
  vip: x.x.x.x
  port: 80
  protocol: http
  policies:
    tcpprofile:
      preconfigured: 'nstcp_default_Mobile_profile'
<!--NeedCopy-->

Profil SSL

Un profil SSL est un ensemble de paramètres pour les entités SSL. Le profil SSL rend la configuration plus facile et flexible. Vous pouvez configurer les paramètres d’un profil et lier ce profil à un serveur virtuel au lieu de configurer les paramètres sur chaque entité. Un profil SSL vous permet de personnaliser de nombreux paramètres SSL tels que le protocole TLS et les chiffrements. Pour plus d’informations sur le profil SSL, consultez Infrastructure de profil SSL.

Remarque :

Par défaut, Citrix ADC crée un profil SSL hérité. Le profil SSL hérité présente de nombreux inconvénients, notamment la non-prise en charge de protocoles avancés tels que SSLv3. Par conséquent, il est recommandé d’activer les profils SSL par défaut dans Citrix ADC avant le lancement du Citrix ingress controller.

Pour activer le profil SSL avancé, utilisez la commande suivante dans la ligne de commande Citrix ADC :

set ssl parameter -defaultProfile ENABLED

La commande active le profil SSL par défaut pour tous les serveurs virtuels SSL existants et les groupes de services SSL.

Vous pouvez spécifier spec.policies.sslprofile de personnaliser le profil SSL. Lorsque spécifié, le Citrix ingress controller crée un profil SSL dérivé du profil frontal SSL par défaut : ns_default_ssl_profile_frontend.

Pour plus d’informations sur les paires clé-valeur prises en charge dans le profil SSL, reportez-vous à la section Profil SSL.

Remarque :

L’ name élément est généré automatiquement.

L’exemple suivant montre comment activer TLS1.3 et HSTS pour le serveur virtuel frontal.

apiVersion: citrix.com/v1
kind: Listener
metadata:
  name: test-listener
  namespace: default
spec:
  vip: x.x.x.x
  port: 443
  certificates:
  - secret:
      name: my-cert
  protocol: https
  policies:
    sslprofile:
      config:
        tls13: "ENABLED"
        hsts: "ENABLED"

<!--NeedCopy-->

Vous pouvez spécifier un nom de profil SSL intégré ou préconfiguré comme illustré dans l’exemple suivant :

apiVersion: citrix.com/v1
kind: Listener
metadata:
  name: test-listener
  namespace: default
spec:
  vip: x.x.x.x
  port: 443
  certificates:
  - secret:
      name: my-cert
  protocol: https
  policies:
    sslprofile:
      preconfigured: 'ns_default_ssl_profile_secure_frontend'
<!--NeedCopy-->

Chiffrements SSL

Le Citrix ADC Ingress possède des groupes de chiffrement intégrés. Par défaut, les serveurs virtuels utilisent un groupe de chiffrement DEFAULT pour une transaction SSL. Pour utiliser des chiffrements qui ne font pas partie du groupe de chiffrement DEFAULT, vous devez les lier explicitement à un profil SSL. Vous pouvez utiliser spec.policies.sslciphers pour fournir une liste de chiffrements, une liste de groupes de chiffrement intégrésou la liste des groupes de chiffrement définis par l’utilisateur.

Remarque :

L’ordre de priorité des chiffrements est le même ordre défini dans la liste. Le premier de la liste reçoit la première priorité et de même.

L’exemple suivant montre comment fournir une liste de suites de chiffrement intégrées.

  apiVersion: citrix.com/v1
  kind: Listener
  metadata:
    name: test-listener
    namespace: default
  spec:
    vip: x.x.x.x
    port: 443
    certificates:
    - secret:
        name: my-cert
    protocol: https
    policies:
      sslciphers:
      - 'TLS1.2-ECDHE-RSA-AES128-GCM-SHA256'
      - 'TLS1.2-ECDHE-RSA-AES256-GCM-SHA384'
      - 'TLS1.2-ECDHE-RSA-AES-128-SHA256'
      - 'TLS1.2-ECDHE-RSA-AES-256-SHA384'
<!--NeedCopy-->

Pour plus d’informations sur la liste des suites de chiffrement disponibles dans Citrix ADC, consultez Infrastructure de profil SSL.

Assurez-vous que Citrix ADC possède un groupe de chiffrement défini par l’utilisateur pour utiliser un groupe de chiffrement défini par l’utilisateur. Effectuez les étapes suivantes pour configurer un groupe de chiffrement défini par l’utilisateur :

  1. Créez un groupe de chiffrement défini par l’utilisateur. Par exemple, MY-CUSTOM-GROUP.
  2. Liez tous les chiffrements requis au groupe de chiffrement défini par l’utilisateur.
  3. Notez le nom du groupe de chiffrement défini par l’utilisateur.

Pour obtenir des instructions détaillées, reportez-vous à la section Configurer un groupe de chiffrement défini par l’utilisateur.

Remarque : L’ordre de priorité des chiffrements est le même ordre défini dans la liste. Le premier de la liste reçoit la première priorité et de même.

L’exemple suivant montre comment fournir une liste de groupes de chiffrement intégrés et/ou de groupes de chiffrement définis par l’utilisateur. Les groupes de chiffrement définis par l’utilisateur doivent être présents dans Citrix ADC avant que vous ne l’appliquiez au récepteur.

  apiVersion: citrix.com/v1
  kind: Listener
  metadata:
    name: test-listener
    namespace: default
  spec:
    vip: x.x.x.x
    port: 443
    certificates:
    - secret:
        name: my-cert
    protocol: https
    policies:
      sslciphers:
      - 'SECURE'
      - 'HIGH'
      - 'MY-CUSTOM-CIPHERS'
<!--NeedCopy-->

Dans l’exemple précédent, SECURE et HIGH sont des groupes de chiffrement intégrés dans Citrix ADC. MY-CUSTOM-CIPHERS représente les groupes de chiffrement préconfigurés définis par l’utilisateur.

Remarque : Si vous avez spécifié le profil SSL préconfiguré, vous devez lier les chiffrements manuellement via Citrix ADC et n’ spec.policies.sslciphers est pas appliqué sur le profil SSL préconfiguré.

Remarque : Les groupes de chiffrement intégrés peuvent être utilisés dans Citrix ADC de niveau 1 et 2. Le groupe de chiffrement défini par l’utilisateur ne peut être utilisé que dans un Citrix ADC de niveau 1.

Profil analytique

Le profil Analytics permet à Citrix ADC d’exporter le type de transactions ou de données vers une plateforme externe. Si vous utilisez Citrix ADC Observability Exporter pour collecter des métriques et des données de transaction et les exporter vers des points de terminaison tels que Elasticsearch ou Prometheus, vous pouvez configurer le profil d’analyse pour sélectionner le type de données à exporter.

Remarque :

Pour que le profil Analytics soit fonctionnel, vous devez configurer l’exportateur d’observabilité Citrix ADC. Support de configuration Analytics à l’aide de ConfigMap

L’exemple suivant montre comment activer webinsight et tcpinsight dans le profil analytique.

apiVersion: citrix.com/v1
  kind: Listener
  metadata:
    name: test-listener
    namespace: default
  spec:
    vip: x.x.x.x
    port: 443
    certificates:
    - secret:
        name: my-cert
    protocol: https
    policies:
     analyticsprofile:
       config:
       - type: webinsight
       - type: tcpinsight
<!--NeedCopy-->

L’exemple suivant montre comment sélectionner les paramètres supplémentaires pour le type webinsight dont vous souhaitez être exporté vers l’exportateur d’observabilité Citrix ADC. Pour plus d’informations sur la paire clé-valeur valide, consultez Profil Analytics.

apiVersion: citrix.com/v1
  kind: Listener
  metadata:
    name: test-listener
    namespace: default
  spec:
    vip: x.x.x.x
    port: 443
    certificates:
    - secret:
        name: my-cert
    protocol: https
    policies:
     analyticsprofile:
       config:
       - type: webinsight
         parameters:
           httpdomainname: "ENABLED"
           httplocation: "ENABLED"
<!--NeedCopy-->

L’exemple suivant montre comment utiliser des profils analytiques préconfigurés.

  apiVersion: citrix.com/v1
  kind: Listener
  metadata:
    name: test-listener
    namespace: default
  spec:
    vip: x.x.x.x
    port: 443
    certificates:
    - secret:
        name: my-cert
    protocol: https
    policies:
     analyticsprofile:
       preconfigured:
       - 'custom-websingiht-analytics-profile'
       - 'custom-tcpinsight-analytics-profile'
<!--NeedCopy-->
Prise en charge du profil pour le CRD Listener