Configuration de TLS/SSL pour les installations périphériques

Edge pour Private Cloud v. 4.16.09

TLS (Transport Layer Security, dont SSL est le prédécesseur) est la technologie de sécurité standard pour assurer la messagerie sécurisée et chiffrée dans l'environnement de votre API, des applications à Apigee Edge jusqu'à vos services backend.

Quelle que soit la configuration de l'environnement de votre API de gestion (par exemple, si vous utilisez un proxy, un routeur et/ou un équilibreur de charge devant votre API de gestion ou non), Edge vous permet d'activer et de configurer TLS, ce qui vous permet de contrôler le chiffrement des messages dans votre environnement de gestion d'API sur site.

Pour une installation sur site de Edge Private Cloud, vous pouvez configurer TLS à plusieurs endroits:

  1. Entre un routeur et un processeur de messages
  2. Pour accéder à l'API de gestion Edge
  3. Pour accéder à l'interface utilisateur de gestion Edge
  4. Pour accéder à vos API depuis une application
  5. Pour accéder à vos services de backend depuis Edge

La configuration du protocole TLS pour les trois premiers éléments est décrite ci-dessous. Toutes ces procédures supposent que vous avez créé un fichier JKS contenant votre certification TLS et votre clé privée.

Pour configurer TLS pour l'accès d'une application à vos API (point 4 ci-dessus), consultez Configurer l'accès TLS à une API pour le cloud privé. Pour configurer TLS pour l'accès depuis Edge à vos services backend (point 5 ci-dessus), consultez Configurer TLS de Edge au backend (Cloud et Cloud privé).

Pour obtenir une présentation complète de la configuration de TLS sur Edge, consultez TLS/SSL.

Créer un fichier JKS

Vous représentez le keystore sous la forme d'un fichier JKS, qui contient votre certificat TLS et votre clé privée. Il existe plusieurs façons de créer un fichier JKS, mais l'une d'elles consiste à utiliser les utilitaires OpenSSL et Keytool.

Par exemple, vous disposez d'un fichier PEM nommé server.pem contenant votre certificat TLS et d'un fichier PEM nommé private_key.pem contenant votre clé privée. Utilisez les commandes suivantes pour créer le fichier PKCS12:

> openssl pkcs12 -export -clcerts -in server.pem -inkey private_key.pem -out keystore.pkcs12

Vous devez saisir la phrase secrète de la clé, le cas échéant, et un mot de passe d'exportation. Cette commande crée un fichier PKCS12 nommé keystore.pkcs12.

Utilisez la commande suivante pour le convertir en fichier JKS nommé keystore.jks:

> keytool -importkeystore -srckeystore keystore.pkcs12 -srcstoretype pkcs12 -destkeystore keystore.jks -deststoretype jks

Vous êtes invité à saisir le nouveau mot de passe du fichier JKS et le mot de passe existant du fichier PKCS12. Assurez-vous d'utiliser le même mot de passe pour le fichier JKS que celui que vous avez utilisé pour le fichier PKCS12.

Si vous devez spécifier un alias de clé, par exemple lors de la configuration de TLS entre un routeur et un processeur de messages, incluez l'option -name à la commande openssl:

>  openssl pkcs12 -export -clcerts -in server.pem -inkey private_key.pem -out keystore.pkcs12 -name devtest

Incluez ensuite l'option "-alias" dans la commande keytool:

> keytool -importkeystore -srckeystore keystore.pkcs12 -srcstoretype pkcs12 -destkeystore keystore.jks -deststoretype jks -alias devtest

Générer un mot de passe obscurci

Certaines parties de la procédure de configuration TLS d'Edge vous obligent à saisir un mot de passe obscurci dans un fichier de configuration. Un mot de passe obscurci est une alternative plus sécurisée à la saisie de votre mot de passe en texte brut.

Vous pouvez générer un mot de passe obscurci en Java à l'aide des fichiers JAR Jetty installés avec Edge. Générez le mot de passe obscurci à l'aide d'une commande au format suivant:

> IFS= read -rsp Password: passvar; echo; java -cp "/opt/apigee/edge-gateway/lib/thirdparty/*" org.eclipse.jetty.util.security.Password $passvar 2>&1 |tail -2; unset passvar

Saisissez le nouveau mot de passe à l'invite. Pour des raisons de sécurité, le texte du mot de passe n'est pas affiché. Cette commande renvoie le mot de passe au format suivant:

OBF:58fh40h61svy156789gk1saj
MD5:902fobg9d80e6043b394cb2314e9c6

Utilisez le mot de passe obscurci spécifié par OBF lors de la configuration de TLS.

Pour en savoir plus, consultez cet article.