Vous consultez la documentation Apigee Edge.
Accédez à la documentation Apigee X.
Ce document explique comment configurer des suites de chiffrement sur les hôtes virtuels et les routeurs dans Apigee Edge.
Une suite de chiffrement est un ensemble d'algorithmes qui permettent de sécuriser une connexion réseau utilisant TLS. Le client et le serveur doivent s'accorder sur la suite de chiffrement spécifique qui sera utilisée pour échanger des messages. Si le client et le serveur ne s'accordent pas sur une suite de chiffrement, les requêtes échouent en raison d'échecs de handshake TLS.
Dans Apigee, les suites de chiffrement doivent être convenues mutuellement entre les applications clientes et les routeurs.
Vous pouvez modifier les suites de chiffrement sur Apigee Edge pour les raisons suivantes :
- Pour éviter toute incohérence entre les suites de chiffrement des applications clientes et des routeurs Apigee
- Pour utiliser des suites de chiffrement plus sécurisées afin de corriger les failles de sécurité ou pour renforcer la sécurité
Les suites de chiffrement peuvent être configurées sur les hôtes virtuels ou les routeurs Apigee. Notez qu'Apigee n'accepte les suites de chiffrement qu'au format chaînes de chiffrement OpenSSL, à la fois au niveau de l'hôte virtuel et du routeur. La page de manuel des algorithmes de chiffrement OpenSSL fournit les suites de chiffrement SSL ou TLS de la spécification concernée et leurs équivalents OpenSSL.
Exemples :
Si vous souhaitez configurer la suite de chiffrement TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 au niveau de l'hôte virtuel ou du routeur Apigee, vous devez identifier la chaîne de chiffrement OpenSSL correspondante à partir de la page de manuel des algorithmes de chiffrement OpenSSL.
La chaîne de chiffrement OpenSSL pour la suite de chiffrement TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 est ECDHE-RSA-AES128-GCM-SHA256.. Vous devez donc utiliser la chaîne de chiffrement OpenSSL ECDHE-RSA-AES128-GCM-SHA256 lors de la configuration de la suite de chiffrement dans l'hôte virtuel ou sur le routeur Apigee.
Avant de commencer
- Pour en savoir plus sur les chaînes de chiffrement OpenSSL pour les différentes suites de chiffrement, consultez la page de manuel des algorithmes de chiffrement OpenSSL.
- Si vous ne connaissez pas bien les propriétés des hôtes virtuels, consultez la documentation de référence sur les propriétés des hôtes virtuels.
- Si vous ne savez pas comment configurer les propriétés d'Edge sur le cloud privé, consultez Configurer Edge.
Configurer des suites de chiffrement sur des hôtes virtuels
Cette section explique comment configurer les suites de chiffrement dans les hôtes virtuels associés à une organisation et à un environnement. Les suites de chiffrement peuvent être configurées dans l'hôte virtuel à l'aide de la propriété ssl_ciphers, qui représente la liste des suites de chiffrement compatibles avec l'hôte virtuel.
Consultez Suites de chiffrement compatibles pour obtenir la liste des suites de chiffrement compatibles avec Apigee.
Vous pouvez configurer l'hôte virtuel à l'aide de l'une des méthodes suivantes :
- Utiliser l'interface utilisateur Edge
- Utiliser l'API Edge
Utiliser l'UI Edge
Pour configurer l'hôte virtuel à l'aide de l'interface utilisateur Edge, procédez comme suit :
- Connectez-vous à l'interface utilisateur Edge.
- Accédez à Admin > Hôtes virtuels.
- Sélectionnez un environnement spécifique dans lequel vous souhaitez effectuer cette modification.
- Sélectionnez l'hôte virtuel spécifique pour lequel vous souhaitez configurer les suites de chiffrement.
-
Sous Propriétés, mettez à jour la valeur Algorithmes de chiffrement avec une liste de chaînes de chiffrement OpenSSL séparées par des deux-points.
Par exemple, si vous souhaitez autoriser uniquement les suites de chiffrement
TLS_DHE_RSA_WITH_AES_128_GCM_SHA256etTLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, déterminez les chaînes de chiffrement OpenSSL correspondantes à partir de la page de manuel des algorithmes de chiffrement OpenSSL, comme indiqué dans le tableau suivant :Suite de chiffrement Chaîne de chiffrement OpenSSL TLS_DHE_RSA_WITH_AES_128_GCM_SHA256DHE-RSA-AES128-GCM-SHA256TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256ECDHE-RSA-AES128-GCM-SHA256Ajoutez la chaîne de chiffrement OpenSSL avec une séparation par deux-points, comme indiqué dans la figure suivante :
- Enregistrez la modification.
Utiliser l'API Edge
Pour configurer les suites de chiffrement sur un hôte virtuel à l'aide de l'API Edge, procédez comme suit :
- Obtenez la configuration actuelle de l'hôte virtuel à l'aide de l'API
Get virtual host, comme indiqué ci-dessous :
Utilisateur du cloud public :
curl -v -X GET https://api.enterprise.apigee.com/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u {username}Utilisateur Private Cloud :
curl -v -X GET http://{management_server_IP}:8080/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u {username}{ "hostAliases": [ "api.myCompany,com" ], "interfaces": [], "listenOptions": [], "name": "secure", "port": "443", "retryOptions": [], "sSLInfo": { "ciphers": [], "clientAuthEnabled": "false", "enabled": "true", "ignoreValidationErrors": false, "keyAlias": "myCompanyKeyAlias", "keyStore": "ref://myCompanyKeystoreref", "protocols": [] }, "useBuiltInFreeTrialCert": false } -
Ajoutez la propriété
ssl_ciphersà la charge utile JSON de configuration de l'hôte virtuel existante souspropertiesavec les chaînes de chiffrement OpenSSL appropriées.Par exemple, si vous souhaitez autoriser uniquement les suites de chiffrement
TLS_DHE_RSA_WITH_AES_128_GCM_SHA256etTLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, déterminez les chaînes de chiffrement OpenSSL correspondantes à partir de la page de manuel OpenSSL ciphers, comme indiqué dans le tableau suivant :Suite de chiffrement Chaîne de chiffrement OpenSSL TLS_DHE_RSA_WITH_AES_128_GCM_SHA256DHE-RSA-AES128-GCM-SHA256TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256ECDHE-RSA-AES128-GCM-SHA256Ajoutez le bloc de code
propertiessuivant :Exemple de configuration d'hôte virtuel mise à jour :
{ "hostAliases": [ "api.myCompany,com", ], "interfaces": [], "listenOptions": [], "name": "secure", "port": "443", "retryOptions": [], "properties": { "property": [ { "name": "ssl_ciphers", "value": "DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256" } ] }, "sSLInfo": { "ciphers": [], "clientAuthEnabled": "false", "enabled": "true", "ignoreValidationErrors": false, "keyAlias": "myCompanyKeyAlias", "keyStore": "ref://myCompanyKeystoreref", "protocols": [] }, "useBuiltInFreeTrialCert": false } -
Enregistrez la configuration de l'hôte virtuel mis à jour dans un fichier. Par exemple :
virtualhost-payload.json -
Mettez à jour la configuration
virtualhostavec la modification à l'aide de l'API Mettre à jour un hôte virtuel comme suit :Utilisateur du cloud public :
curl -v -X POST Content-Type: application/json https://api.enterprise.apigee.com/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -d @virtualhost-payload.json -u {username}
Utilisateur Private Cloud :
curl -v -X POST Content-Type: application/json http://{management_server_IP}:8080/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -d @virtualhost-payload.json -u {username}
Suites de chiffrement compatibles
Apigee est compatible avec les suites de chiffrement suivantes :
ECDHE-RSA-AES256-GCM-SHA384 ECDHE-RSA-AES256-SHA384 ECDHE-RSA-AES256-SHA DHE-RSA-AES256-GCM-SHA384 DHE-RSA-AES256-SHA256 DHE-RSA-AES256-SHA DHE-RSA-CAMELLIA256-SHA AES256-GCM-SHA384 AES256-SHA256 AES256-SHA CAMELLIA256-SHA ECDHE-RSA-AES128-GCM-SHA256 ECDHE-RSA-AES128-SHA256 ECDHE-RSA-AES128-SHA DHE-RSA-AES128-GCM-SHA256 DHE-RSA-AES128-SHA256 DHE-RSA-AES128-SHA DHE-RSA-CAMELLIA128-SHA AES128-GCM-SHA256 AES128-SHA256 AES128-SHA CAMELLIA128-SHA
Vérifier les suites de chiffrement sur les hôtes virtuels
Cette section explique comment vérifier que les suites de chiffrement ont été correctement modifiées sur l'hôte virtuel à l'aide de l'API Edge.
- Exécutez l'API
Get virtual host pour obtenir la configuration
virtualhost, comme indiqué ci-dessous :Utilisateur du cloud public :
curl -v -X GET https://api.enterprise.apigee.com/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u {username}Utilisateur Private Cloud :
curl -v -X GET http://{management_server_IP}:8080/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u {username} -
Vérifiez que la propriété
ssl_ciphersa été définie sur la nouvelle valeur.Exemple de configuration d'hôte virtuel mise à jour :
{ "hostAliases": [ "api.myCompany,com", ], "interfaces": [], "listenOptions": [], "name": "secure", "port": "443", "retryOptions": [], "properties": { "property": [ { "name": "ssl_ciphers", "value": "DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256" } ] }, "sSLInfo": { "ciphers": [], "clientAuthEnabled": "false", "enabled": "true", "ignoreValidationErrors": false, "keyAlias": "myCompanyKeyAlias", "keyStore": "ref://myCompanyKeystoreref", "protocols": [] }, "useBuiltInFreeTrialCert": false }Dans l'exemple ci-dessus, notez que
ssl_ciphersa été défini avec la nouvelle valeur. -
Si l'ancienne valeur de
ssl_cipherss'affiche toujours, vérifiez que vous avez correctement suivi toutes les étapes décrites dans Configurer des suites de chiffrement sur des hôtes virtuels. Si vous avez manqué une étape, répétez-les toutes correctement. - Si vous ne parvenez toujours pas à mettre à jour ni à ajouter des suites de chiffrement à l'hôte virtuel, contactez l'assistance Apigee Edge.
Configurer des suites de chiffrement sur les routeurs
Cette section explique comment configurer les suites de chiffrement sur les routeurs. Les suites de chiffrement peuvent être configurées via la propriété Router conf_load_balancing_load.balancing.driver.server.ssl.ciphers, qui représente les suites de chiffrement acceptées séparées par des deux-points.
Pour configurer les suites de chiffrement sur les routeurs, procédez comme suit :
-
Sur la machine du routeur, ouvrez le fichier suivant dans un éditeur. Si elle n'existe pas déjà, créez-la.
/opt/apigee/customer/application/router.properties
Par exemple, pour ouvrir le fichier avec
vi, saisissez la commande suivante :vi /opt/apigee/customer/application/router.properties
-
Ajoutez une ligne au format suivant au fichier
properties, en remplaçant une valeur par colon_separated_cipher_suites :conf_load_balancing_load.balancing.driver.server.ssl.ciphers=colon_separated_cipher_suites
Par exemple, si vous souhaitez autoriser uniquement les suites de chiffrement
TLS_DHE_RSA_WITH_AES_128_GCM_SHA256etTLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, déterminez les chaînes de chiffrement OpenSSL correspondantes à partir de la page de manuel des algorithmes de chiffrement OpenSSL, comme indiqué dans le tableau suivant :Suite de chiffrement Chaîne de chiffrement OpenSSL TLS_DHE_RSA_WITH_AES_128_GCM_SHA256DHE-RSA-AES128-GCM-SHA256TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256ECDHE-RSA-AES128-GCM-SHA256Ajoutez ensuite la ligne suivante :
conf_load_balancing_load.balancing.driver.server.ssl.ciphers=DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256
- Enregistrez les modifications.
-
Assurez-vous que ce fichier de propriétés appartient à l'utilisateur
apigee, comme indiqué ci-dessous :chown apigee:apigee /opt/apigee/customer/application/router.properties
-
Redémarrez le routeur comme indiqué ci-dessous :
/opt/apigee/apigee-service/bin/apigee-service edge-router restart
- Si vous avez plusieurs routeurs, répétez la procédure ci-dessus sur chacun d'eux.
Vérifier la suite de chiffrement sur les routeurs
Cette section explique comment vérifier que les suites de chiffrement ont bien été modifiées sur les routeurs.
-
Sur le routeur, recherchez la propriété
conf_load_balancing_load.balancing.driver.server.ssl.ciphersà l'aide de l'utilitaire de recherche Apigee du dossier/opt/apigeeet vérifiez si elle a été définie avec la nouvelle valeur comme suit :/opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_load_balancing_load.balancing.driver.server.ssl.ciphers
-
Si les nouvelles suites de chiffrement sont correctement définies sur le routeur, la commande ci-dessus affiche les nouvelles valeurs.
Voici un exemple de résultat de la commande
searchci-dessus lorsque les suites de chiffrement ont été mises à jour versDHE-RSA-AES128-GCM-SHA256etECDHE-RSA-AES128-GCM-SHA256:Found key conf_load_balancing_load.balancing.driver.server.ssl.ciphers, with value, DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256, in /opt/apigee/customer//application/router.properties
Dans l'exemple de résultat ci-dessus, vous remarquerez que la propriété
conf_load_balancing_load.balancing.driver.server.ssl.ciphersa été définie avec les nouvelles valeurs de la suite de chiffrement. Cela indique que la suite de chiffrement a bien été mise à jour avec les chaînes de chiffrement OpenSSLDHE-RSA-AES128-GCM-SHA25etECDHE-RSA-AES128-GCM-SHA256sur le routeur. -
Si vous voyez toujours les anciennes valeurs pour les suites de chiffrement
conf_load_balancing_load.balancing.driver.server.ssl.ciphers, vérifiez que vous avez correctement suivi toutes les étapes décrites dans Configurer des suites de chiffrement sur les routeurs. Si vous avez manqué une étape, répétez-les toutes correctement. - Si vous ne parvenez toujours pas à modifier les suites de chiffrement sur les routeurs, contactez l'assistance Apigee Edge.