Configuration de TLS pour la nouvelle interface utilisateur Edge

Par défaut, vous accédez à la nouvelle interface utilisateur Edge via HTTP en utilisant l'adresse IP ou le nom DNS du nœud d'interface utilisateur Edge et le port 3001. Exemple :

http://newue_IP:3001

Vous pouvez également configurer l'accès TLS à l'interface utilisateur Edge pour pouvoir y accéder sous la forme:

https://newue_IP:3001

Exigences TLS

L'interface utilisateur Edge prend uniquement en charge TLS v1.2. Si vous activez TLS dans l'interface utilisateur Edge, les utilisateurs doivent se connecter à l'interface utilisateur Edge à l'aide d'un navigateur compatible avec TLS v1.2.

Propriétés de configuration TLS

Exécutez la commande suivante pour configurer TLS pour l'interface utilisateur Edge:

/opt/apigee/apigee-service/bin/apigee-service edge-management-ui configure-ssl -f configFile

configFile est le fichier de configuration que vous avez utilisé pour installer l'interface utilisateur Edge.

Avant d'exécuter cette commande, vous devez modifier le fichier de configuration pour définir les propriétés nécessaires qui contrôlent TLS. Le tableau suivant décrit les propriétés que vous utilisez pour configurer TLS pour l'interface utilisateur Edge:

Propriété Description Obligatoire ?
MANAGEMENT_UI_SCHEME

Définit le protocole "http" ou "https" utilisé pour accéder à l'interface utilisateur Edge. La valeur par défaut est "http". Définissez-le sur "https" pour activer le protocole TLS:

MANAGEMENT_UI_SCHEME=https
Oui
MANAGEMENT_UI_TLS_OFFLOAD

Si la valeur est "n", indique que les requêtes TLS adressées à l'interface utilisateur Edge sont arrêtées au niveau de l'interface utilisateur Edge. Vous devez définir MANAGEMENT_UI_TLS_KEY_FILE et MANAGEMENT_UI_TLS_CERT_FILE.

Si la valeur est "y", indique que les requêtes TLS adressées à l'interface utilisateur Edge sont arrêtées sur un équilibreur de charge et que l'équilibreur de charge transfère ensuite la requête à l'interface utilisateur Edge à l'aide du protocole HTTP.

Si vous arrêtez le protocole TLS sur l'équilibreur de charge, l'interface utilisateur Edge doit toujours savoir que la requête d'origine est arrivée via TLS. Par exemple, un indicateur sécurisé est défini pour certains cookies.

Vous devez définir MANAGEMENT_UI_SCHEME sur "https" sinon MANAGEMENT_UI_TLS_OFFLOAD sera ignoré:

MANAGEMENT_UI_SCHEME=https
MANAGEMENT_UI_TLS_OFFLOAD=y
Oui
MANAGEMENT_UI_TLS_KEY_FILE

MANAGEMENT_UI_TLS_CERT_FILE

Si la valeur est MANAGEMENT_UI_TLS_OFFLOAD=n, spécifie le chemin d'accès absolu aux fichiers de clé et de certificat TLS. Les fichiers doivent être formatés en tant que fichiers PEM sans phrase secrète et doivent appartenir à l'utilisateur "apigee".

L'emplacement recommandé pour ces fichiers est le suivant:

/opt/apigee/customer/application/edge-management-ui

Si ce répertoire n'existe pas, créez-le.

Si la valeur est MANAGEMENT_UI_TLS_OFFLOAD=y, omettez MANAGEMENT_UI_TLS_KEY_FILE et MANAGEMENT_UI_TLS_CERT_FILE.. Elles sont ignorées, car les requêtes adressées à l'interface utilisateur Edge arrivent via HTTP.

Oui si MANAGEMENT_UI_TLS_OFFLOAD=n
MANAGEMENT_UI_PUBLIC_URIS

Si la valeur est MANAGEMENT_UI_TLS_OFFLOAD=n, spécifie l'URL de l'interface utilisateur Edge.

Définissez cette propriété en fonction d'autres propriétés du fichier de configuration. Exemple :

MANAGEMENT_UI_PUBLIC_URIS=$MANAGEMENT_UI_SCHEME://$MANAGEMENT_UI_IP:$MANAGEMENT_UI_PORT

Où :

  • MANAGEMENT_UI_SCHEME spécifie le protocole "http" ou "https", comme décrit ci-dessus.
  • MANAGEMENT_UI_IP spécifie l'adresse IP ou le nom DNS de l'interface utilisateur Edge.
  • MANAGEMENT_UI_PORT spécifie le port utilisé par l'interface utilisateur Edge.

Pour plus d'informations sur ces propriétés, consultez la section Installer la nouvelle interface utilisateur Edge.

Si la valeur est MANAGEMENT_UI_TLS_OFFLOAD=y:

  • MANAGEMENT_UI_IP spécifie l'adresse IP ou le nom DNS de l'équilibreur de charge, et non de l'interface utilisateur Edge.
  • L'équilibreur de charge et le nouvel UE doivent utiliser le même numéro de port pour les requêtes (3001, par exemple). Utilisez MANAGEMENT_UI_PORT pour spécifier le numéro de port sur l'équilibreur de charge et sur le nouvel UE.

Oui

MANAGEMENT_UI_TLS_ALLOWED_CIPHERS

Définit la liste des algorithmes de chiffrement TLS disponibles sous la forme d'une chaîne séparée par des virgules ou des espaces.

Chaîne séparée par des virgules:

MANAGEMENT_UI_TLS_ALLOWED_CIPHERS=TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256

Chaîne séparée par des espaces entre guillemets doubles:

MANAGEMENT_UI_TLS_ALLOWED_CIPHERS="TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256"

SHOEHORN_SCHEME

Avant d'installer la nouvelle interface utilisateur Edge, vous devez d'abord installer l'interface utilisateur Edge de base, appelée shoehorn. Le fichier de configuration d'installation utilise la propriété suivante pour spécifier le protocole "http" utilisé pour accéder à l'interface utilisateur Edge de base:

SHOEHORN_SCHEME=http

L'interface utilisateur Edge de base ne prend pas en charge TLS. Par conséquent, même lorsque vous activez TLS dans l'interface utilisateur Edge, cette propriété doit toujours être définie sur "http".

Oui et défini sur "http"

Configurer TLS

Pour configurer l'accès TLS à l'interface utilisateur Edge:

  1. Générez le certificat et la clé TLS sous forme de fichiers PEM sans phrase secrète. Exemple :

    mykey.pem
    mycert.pem

    Il existe de nombreuses façons de générer un certificat et une clé TLS. Par exemple, vous pouvez exécuter la commande suivante pour générer un certificat et une clé non signés:

    openssl req -x509 -newkey rsa:4096 -keyout mykey.pem -out mycert.pem -days 365 -nodes -subj '/CN=localhost'
  2. Copiez les fichiers de clé et de certificat dans le répertoire /opt/apigee/customer/application/edge-management-ui. Si ce répertoire n'existe pas, créez-le.
  3. Assurez-vous que le certificat et la clé appartiennent à l'utilisateur "apigee" :

    chown apigee:apigee /opt/apigee/customer/application/edge-management-ui/*.pem
  4. Modifiez le fichier de configuration que vous avez utilisé pour installer l'interface utilisateur Edge afin de définir les propriétés TLS suivantes:

    # Set to https to enable TLS.
    MANAGEMENT_UI_SCHEME=https 
    # Do NOT terminate TLS on a load balancer.
    MANAGEMENT_UI_TLS_OFFLOAD=n
    
    # Specify the key and cert. 
    MANAGEMENT_UI_TLS_KEY_FILE=/opt/apigee/customer/application/edge-management-ui/mykey.pem
    MANAGEMENT_UI_TLS_CERT_FILE=/opt/apigee/customer/application/edge-management-ui/mycert.pem
    
    # Leave these properties set to the same values as when you installed the Edge UI:
    MANAGEMENT_UI_PUBLIC_URIS=$MANAGEMENT_UI_SCHEME://$MANAGEMENT_UI_IP:$MANAGEMENT_UI_PORT
    SHOEHORN_SCHEME=http
  5. Exécutez la commande suivante pour configurer le protocole TLS:

    /opt/apigee/apigee-service/bin/apigee-service edge-management-ui configure-ssl -f configFile

    configFile est le nom du fichier de configuration.

    Le script redémarre l'interface utilisateur Edge.

  6. Exécutez les commandes suivantes pour configurer et redémarrer shoehorn:

    /opt/apigee/apigee-service/bin/apigee-service edge-ui setup -f configFile
    /opt/apigee/apigee-service/bin/apigee-service edge-ui restart

    Après le redémarrage, l'interface utilisateur Edge prend en charge l'accès via HTTPS. Si vous ne pouvez pas vous connecter à l'interface utilisateur Edge après avoir activé TLS, videz le cache du navigateur et réessayez de vous connecter.

Configurer l'interface utilisateur Edge lorsque TLS s'arrête sur l'équilibreur de charge

Si vous disposez d'un équilibreur de charge qui transfère les requêtes vers l'interface utilisateur Edge, vous pouvez choisir d'arrêter la connexion TLS au niveau de l'équilibreur de charge, puis demander à l'équilibreur de charge de transférer les requêtes à l'interface utilisateur Edge via HTTP:

Arrêter le protocole TLS sur l'équilibreur de charge

Cette configuration est prise en charge, mais vous devez configurer l'équilibreur de charge et l'interface utilisateur Edge en conséquence.

Pour configurer l'interface utilisateur Edge lorsque TLS s'arrête sur l'équilibreur de charge:

  1. Modifiez le fichier de configuration que vous avez utilisé pour installer l'interface utilisateur Edge afin de définir les propriétés TLS suivantes:

    # Set to https to enable TLS
    MANAGEMENT_UI_SCHEME=https
    # Terminate TLS on a load balancer
    MANAGEMENT_UI_TLS_OFFLOAD=y
    # Set to the IP address or DNS name of the load balancer.
    MANAGEMENT_UI_IP=LB_IP_DNS
    # Set to the port number for the load balancer and Edge UI.
    # The load balancer and the Edge UI must use the same port number.
    MANAGEMENT_UI_IP=3001
    
    # Leave these properties set to the same values as when you installed the Edge UI:
    MANAGEMENT_UI_PUBLIC_URIS=$MANAGEMENT_UI_SCHEME://$MANAGEMENT_UI_IP:$MANAGEMENT_UI_PORT
    SHOEHORN_SCHEME=http
    

    Si vous définissez MANAGEMENT_UI_TLS_OFFLOAD=y, omettez MANAGEMENT_UI_TLS_KEY_FILE et MANAGEMENT_UI_TLS_CERT_FILE.. Ils sont ignorés, car les requêtes adressées à l'interface utilisateur Edge arrivent via HTTP.

  2. Exécutez la commande suivante pour configurer le protocole TLS:

    /opt/apigee/apigee-service/bin/apigee-service edge-management-ui configure-ssl -f configFile

    configFile est le nom du fichier de configuration.

    Le script redémarre l'interface utilisateur Edge.

  3. Exécutez les commandes suivantes pour configurer et redémarrer shoehorn:

    /opt/apigee/apigee-service/bin/apigee-service edge-ui setup -f configFile
    /opt/apigee/apigee-service/bin/apigee-service edge-ui restart

    Après le redémarrage, l'interface utilisateur Edge prend en charge l'accès via HTTPS. Si vous ne pouvez pas vous connecter à l'interface utilisateur Edge après avoir activé TLS, videz le cache du navigateur et réessayez de vous connecter.

Désactiver TLS dans l'interface utilisateur Edge

Pour désactiver TLS dans l'interface utilisateur Edge:

  1. Modifiez le fichier de configuration que vous avez utilisé pour installer l'interface utilisateur Edge afin de définir la propriété TLS suivante:

    # Set to http to disable TLS.
    MANAGEMENT_UI_SCHEME=http
    
    # Only if you had terminated TLS on a load balancer,
    # reset to the IP address or DNS name of the Edge UI.
    MANAGEMENT_UI_IP=newue_IP_DNS
    
  2. Exécutez la commande suivante pour désactiver TLS:

    /opt/apigee/apigee-service/bin/apigee-service edge-management-ui configure-ssl -f configFile

    configFile est le nom du fichier de configuration.

    Le script redémarre l'interface utilisateur Edge.

  3. Exécutez les commandes suivantes pour configurer et redémarrer shoehorn:

    /opt/apigee/apigee-service/bin/apigee-service edge-ui setup -f configFile
    /opt/apigee/apigee-service/bin/apigee-service edge-ui restart

    Vous pouvez maintenant accéder à l'interface utilisateur Edge via HTTP. Si vous ne pouvez pas vous connecter à l'interface utilisateur Edge après avoir désactivé TLS, effacez le cache du navigateur et réessayez de vous connecter.