ADC

Configurer l’insertion d’en-têtes SSL

Étant donné que l’appliance NetScaler décharge tous les traitements liés au SSL des serveurs, ceux-ci ne reçoivent que du trafic HTTP. Dans certains cas, le serveur a besoin de certaines informations SSL. Par exemple, les audits de sécurité des transactions SSL récentes nécessitent que le nom de l’objet du client (contenu dans un certificat X509) soit enregistré sur le serveur.

Ces données peuvent être envoyées au serveur en les insérant dans l’en-tête HTTP sous la forme d’une paire nom-valeur. Vous pouvez effectuer l’une des opérations suivantes :

  • Insérez l’intégralité du certificat client, si nécessaire, un hachage (également appelé empreinte digitale ou empreinte numérique) de l’ensemble du certificat client.
  • Insérez uniquement les champs spécifiques du certificat, tels que l’objet, le numéro de série, l’émetteur, la signature, l’ID de session SSL, la suite de chiffrement.
  • Insérez la date « pas avant » ou « pas après » utilisée pour déterminer la validité du certificat.

Vous pouvez activer l’insertion SSL pour les serveurs et services virtuels SSL basés sur HTTP uniquement. Vous ne pouvez pas l’appliquer aux serveurs et services virtuels SSL basés sur TCP. De plus, l’authentification du client doit être activée sur le serveur virtuel SSL, car les valeurs insérées sont extraites du certificat client présenté au serveur virtuel pour authentification.

Pour configurer l’insertion d’en-têtes SSL, créez d’abord une action SSL pour chaque ensemble spécifique d’informations à insérer, puis créez des stratégies qui identifient les connexions pour lesquelles vous souhaitez insérer les informations. Lorsque vous créez chaque stratégie, spécifiez l’action que vous souhaitez associer à la stratégie. Ensuite, liez les stratégies aux serveurs virtuels SSL qui reçoivent le trafic SSL.

L’exemple suivant utilise des stratégies de stratégie avancées. Dans l’exemple suivant, une stratégie de contrôle (ctrlpol) est créée pour effectuer l’authentification du client si une demande est reçue pour l’URL /testsite/file5.html. Une stratégie de données (datapol) est créée pour effectuer une action (act1) si l’authentification du client est réussie. Une action SSL (act1) est ajoutée pour insérer les détails du certificat et le nom de l’émetteur dans la demande avant de transférer la demande. Pour les autres URL, l’authentification du client est désactivée. Les stratégies sont ensuite liées à un serveur virtuel SSL (ssl_vserver) qui reçoit le trafic SSL.

Exemple en ligne de commande de configuration de l’insertion d’en-têtes SSL

Exemple :

add ssl action act1 -clientCert ENABLED -certHeader mycert -clientcertissuer ENABLED -certIssuerHeader myissuer

add ssl policy datapol -rule HTTP.REQ.URL.EQ("/testsite/file5.html") -action act1

add ssl policy ctrlpol -rule HTTP.REQ.URL.EQ("/testsite/file5.html") -action CLIENTAUTH

bind ssl vserver ssl_vserver -policyName ctrlpol -priority 1

bind ssl vserver ssl_vserver -policyName datapol -priority 1

Done
<!--NeedCopy-->

Configurer l’insertion d’en-têtes SSL à l’aide de l’interface graphique

  1. Accédez à Gestion du trafic > SSL > Stratégies.

  2. Dans le volet d’informations, sous l’onglet Actions, cliquez sur Ajouter.

  3. Dans la boîte de dialogue Créer une action SSL, définissez les paramètres suivants :

    • Nom*
    • Certificat Client
    • Balise de certificat
    • Émetteur de certificat client
    • Balise de l’émetteur

    * Un paramètre obligatoire

  4. Cliquez sur Créer, puis sur Fermer.

  5. Dans l’onglet, cliquez sur Ajouter pour créer une stratégie de contrôle.

  6. Dans la boîte de dialogue Créer une stratégie SSL, définissez les paramètres suivants :

    • Nom*
    • Expression
    • Action de demande

    * Un paramètre obligatoire

  7. Cliquez sur Créer, puis sur Fermer.

  8. Créez une stratégie de données en répétant les étapes 5 à 7.

  9. Dans le volet de navigation, développez Déchargement SSL, puis cliquez sur Serveurs virtuels.

  10. Dans le volet d’informations, dans la liste des serveurs virtuels, sélectionnez le serveur virtuel auquel vous souhaitez lier les stratégies SSL, puis cliquez sur Ouvrir.

  11. Dans la boîte de dialogue Configurer le serveur virtuel (déchargement SSL), cliquez sur Paramètres SSL, puis sur Stratégies SSL.

  12. Dans la boîte de dialogue Lier/délier les stratégies SSL, cliquez sur Insérer une stratégie. Sous Nom de la stratégie, sélectionnez la stratégie que vous avez créée aux étapes 5 à 7.

  13. Cliquez sur OK, puis sur Fermer. Un message apparaît dans la barre d’état, indiquant que la stratégie a été correctement liée.

  14. Répétez les étapes 12 et 13 et sélectionnez la stratégie que vous avez créée à l’étape 8.

Configurer une action de stratégie SSL pour insérer l’empreinte numérique du certificat client dans l’en-tête HTTP

Les appliances NetScaler prennent désormais en charge l’insertion de l’empreinte numérique (également appelée empreinte digitale) d’un certificat dans l’en-tête d’une demande envoyée à un serveur principal. Si l’authentification du client est activée, l’appliance calcule l’empreinte numérique du certificat et utilise une action de stratégie SSL pour insérer l’empreinte numérique dans la demande. Le serveur recherche l’empreinte numérique et accorde un accès sécurisé en cas de correspondance.

Configurez une action SSL pour activer l’empreinte digitale du certificat client, spécifiez un nom d’en-tête pour insérer l’empreinte du certificat client et un résumé (valeur de hachage) pour calculer la valeur de l’empreinte digitale. L’appliance NetScaler prend en charge les digests SHA1 et SHA2 (SHA224, SHA256, SHA384, SHA512). La solution matérielle-logicielle calcule la valeur de l’empreinte digitale en calculant le condensé spécifié du codage DER du certificat client. Ensuite, créez une stratégie SSL spécifiant cette action et liez-la à un serveur virtuel SSL.

Configurer une action SSL pour insérer l’empreinte numérique du certificat client à l’aide de l’interface de ligne de commande

À l’invite de commandes, tapez :

add ssl action <name> -clientCertFingerprint ( ENABLED | DISABLED ) -certFingerprintHeader <string> -certFingerprintDigest <certFingerprintDigest>
<!--NeedCopy-->

Arguments :

Empreinte digitale du certificat client :

Insérez l’empreinte digitale du certificat dans l’en-tête HTTP de la demande envoyée au serveur Web. L’empreinte est dérivée en calculant la valeur de hachage spécifiée (SHA256, par exemple) du codage DER du certificat client.

Tête d’empreinte digitale CERT :

Nom de l’en-tête dans lequel insérer l’empreinte digitale du certificat client.

Digest d’empreintes digitales CERT :

Algorithme de résumé utilisé pour calculer l’empreinte digitale du certificat client.

Valeurs possibles : SHA1, SHA224, SHA256, SHA384, SHA512

Exemple :

add ssl action act1 -clientcertfingerprint ENABLED -certfingerprintdigest SHA1 -certfingerprintheader example
Done
<!--NeedCopy-->
sh ssl action act1
    1)      Name: act1
            Type: Data Insertion
            Cert Fingerprint Header: ENABLED
            Cert-Fingerprint Tag: example
            Cert-Fingerprint Digest Algorithm: SHA1
            Hits: 0
            Undef Hits: 0
            Action Reference Count: 0
Done
<!--NeedCopy-->
add ssl policy pol1 -rule true -action act1
Done
<!--NeedCopy-->
bind ssl vserver v1 -policyName pol1 -priority 10
Done
<!--NeedCopy-->
sh ssl vserver v1

            Advanced SSL configuration for VServer v1:
            DH: DISABLED
            DH Private-Key Exponent Size Limit: DISABLED    Ephemeral RSA: ENABLED          Refresh Count: 0
            Session Reuse: ENABLED          Timeout: 120 seconds
            Cipher Redirect: DISABLED
            SSLv2 Redirect: DISABLED
            ClearText Port: 0
            Client Auth: ENABLED    Client Cert Required: Mandatory
            SSL Redirect: DISABLED
            Non FIPS Ciphers: DISABLED
            SNI: DISABLED
            OCSP Stapling: DISABLED
            SSLv2: DISABLED SSLv3: DISABLED TLSv1.0: DISABLED  TLSv1.1: ENABLED  TLSv1.2: DISABLED
            Push Encryption Trigger: Always
            Send Close-Notify: YES

            ECC Curve: P_256, P_384, P_224, P_521

    1)      CertKey Name: intca6    CA Certificate          CRLCheck: Mandatory             CA_Name Sent
    2)      CertKey Name: intca5    CA Certificate          CRLCheck: Mandatory             CA_Name Sent
    3)      CertKey Name: intca4    CA Certificate          CRLCheck: Mandatory             CA_Name Sent
    4)      CertKey Name: intca3    CA Certificate          CRLCheck: Mandatory             CA_Name Sent
    5)      CertKey Name: intca2    CA Certificate          CRLCheck: Mandatory             CA_Name Sent
    6)      CertKey Name: intca1    CA Certificate          CRLCheck: Mandatory             CA_Name Sent

            Data policy
    1)      Policy Name: pol1       Priority: 10

    1)      Cipher Name: DEFAULT
            Description: Default cipher list with encryption strength >= 128bit
    Done
<!--NeedCopy-->

Configurer une action SSL pour insérer l’empreinte numérique du certificat client à l’aide de l’interface graphique

  1. Accédez à Gestion du trafic > SSL > Stratégies.
  2. Dans le volet de détails, sélectionnez l’onglet Actions SSL, puis cliquez sur Ajouter.
  3. Dans la boîte de dialogue Créer une action SSL, définissez les paramètres suivants :
    • Nom*
    • Empreinte digitale du certificat client
    • étiquette d’empreinte digitale
    • FingerPrint Digest *Un paramètre requis
  4. Cliquez sur Create.
  5. Sélectionnez l’onglet Stratégies SSL, puis cliquez sur Ajouter.
  6. Dans la boîte de dialogue Créer une stratégie SSL, définissez les paramètres suivants :
    • Nom*
    • Action
    • Expression *Un paramètre obligatoire
  7. Cliquez sur Create.
  8. Accédez à Gestion du trafic > Équilibrage de charge > Serveurs virtuels.
  9. Dans le volet d’informations, dans la liste des serveurs virtuels SSL, sélectionnez le serveur virtuel auquel vous souhaitez lier la stratégie SSL, puis cliquez sur Modifier.
  10. Dans Paramètres avancés, cliquez sur Stratégies SSL.
  11. Cliquez sous Stratégie SSL et, dans la boîte de dialogue Liaison de stratégie, sélectionnez la stratégie créée précédemment et attribuez une priorité.
  12. Cliquez sur Bind.
Configurer l’insertion d’en-têtes SSL