Você está vendo a documentação do Apigee Edge.
Acesse a
documentação da Apigee X. informações
Neste documento, explicamos como configurar pacotes de criptografia em hosts virtuais e roteadores na Apigee Edge.
Um pacote de criptografia é um conjunto de algoritmos que ajuda a proteger uma conexão de rede que usa TLS. O cliente e o servidor precisam concordar sobre o pacote de criptografia específico que será usado na troca de mensagens. Se o cliente e o servidor não concordarem sobre um pacote de criptografia, as solicitações falharão com falhas de handshake de TLS.
Na Apigee, os pacotes de criptografia precisam ser mutuamente acordados entre os aplicativos clientes e os roteadores.
É possível modificar os pacotes de criptografia no Apigee Edge pelos seguintes motivos:
- Para evitar a incompatibilidade de pacotes de criptografia entre os aplicativos clientes e os roteadores da Apigee
- Usar pacotes de criptografia mais seguros para corrigir vulnerabilidades ou aumentar a segurança.
Os pacotes de criptografia podem ser configurados nos hosts virtuais ou nos roteadores da Apigee. Observe que a Apigee aceita pacotes de criptografia somente no formato de strings de criptografia do OpenSSL no host virtual e no roteador. A página do manual de criptografias OpenSSL (link em inglês) fornece os pacotes de criptografia SSL ou TLS da especificação relevante e os equivalentes no OpenSSL.
Exemplo:
Se você quiser configurar o pacote de
criptografia TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
no host virtual ou no roteador da Apigee, identifique a
string de criptografia OpenSSL correspondente da
página de manual de criptografias OpenSSL (em inglês).
A string de criptografia OpenSSL para o pacote de criptografia TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
é ECDHE-RSA-AES128-GCM-SHA256.
. Portanto, você precisa usar a string de criptografia OpenSSL ECDHE-RSA-AES128-GCM-SHA256
ao configurar o pacote de criptografia no host virtual ou no roteador da Apigee.
Antes de começar
- Para saber mais sobre as strings de criptografia OpenSSL para os diferentes pacotes de criptografia, leia o manual de criptografias OpenSSL.
- Se você não conhece as propriedades do host virtual, leia Referência da propriedade do host virtual.
- Se você não souber como configurar propriedades para o Edge na nuvem privada, leia Como configurar o Edge.
Como configurar pacotes de criptografia em hosts virtuais
Nesta seção, explicamos como configurar pacotes de criptografia nos hosts virtuais associados a uma organização e um ambiente. Os pacotes de criptografia podem ser configurados no host virtual com a propriedade ssl_ciphers
, que representa a lista de pacotes com suporte ao host virtual.
Consulte Pacotes de criptografia compatíveis para ver uma lista dos pacotes compatíveis com a Apigee.
Configure o host virtual usando um dos seguintes métodos:
- Como usar a interface do Edge
- Como usar a API Edge
Como usar a interface do Edge
Para configurar o host virtual usando a IU do Edge, faça o seguinte:
- Faça login na interface do usuário do Edge.
- Acesse Administrador > Hosts virtuais.
- Selecione um Ambiente específico em que você quer fazer essa alteração.
- Selecione o host virtual específico para configurar os pacotes de criptografia.
-
Em Properties, atualize o valor Ciphers com uma lista de strings de criptografia do OpenSSL delimitada por dois pontos.
Por exemplo, se você quiser permitir apenas os pacotes de criptografia
TLS_DHE_RSA_WITH_AES_128_GCM_SHA256
eTLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
, determine as strings de criptografia OpenSSL correspondentes da página de manuais de criptografias OpenSSL, conforme mostrado na tabela a seguir:Pacote de criptografia String de criptografia do OpenSSL TLS_DHE_RSA_WITH_AES_128_GCM_SHA256
DHE-RSA-AES128-GCM-SHA256
TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
ECDHE-RSA-AES128-GCM-SHA256
Adicione a string de criptografia OpenSSL com separação por dois-pontos, conforme mostrado na figura abaixo:
- Salve a mudança.
Como usar a API Edge
Para configurar os pacotes de criptografia em um host virtual usando a API Edge, faça o seguinte:
- Encontre a configuração do host virtual atual usando a API
Acessar host virtual, conforme mostrado abaixo:
Usuário da nuvem pública:
curl -v -X GET https://api.enterprise.apigee.com/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u {username}
Usuário da nuvem privada:
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 }
-
Adicione a propriedade
ssl_ciphers
ao payload JSON de configuração do host virtual atual emproperties
com as strings de criptografia OpenSSL apropriadas.Por exemplo, se você quiser permitir apenas os pacotes de criptografia
TLS_DHE_RSA_WITH_AES_128_GCM_SHA256
eTLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
, determine as strings de criptografia OpenSSL correspondentes da página de manuais de criptografias OpenSSL, conforme mostrado na tabela a seguir:Pacote de criptografia String de criptografia do OpenSSL TLS_DHE_RSA_WITH_AES_128_GCM_SHA256
DHE-RSA-AES128-GCM-SHA256
TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
ECDHE-RSA-AES128-GCM-SHA256
Adicione o bloco de código
properties
abaixo:Exemplo de configuração atualizada do host virtual:
{ "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 }
-
Salve a configuração atualizada do host virtual em um arquivo. Exemplo:
virtualhost-payload.json
-
Atualize a configuração
virtualhost
com a mudança usando a API Atualizar um host virtual da seguinte maneira:Usuário da nuvem pública:
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}
Usuário da nuvem privada:
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}
Pacotes de criptografia com suporte
A Apigee oferece suporte aos seguintes pacotes de criptografia:
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
Como verificar pacotes de criptografia em hosts virtuais
Nesta seção, explicamos como verificar se os pacotes de criptografia foram modificados no host virtual usando a API Edge.
- Execute a API
Get virtual host para ver a configuração
virtualhost
, conforme mostrado abaixo:Usuário da nuvem pública:
curl -v -X GET https://api.enterprise.apigee.com/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u {username}
Usuário da nuvem privada:
curl -v -X GET http://{management_server_IP}:8080/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u {username}
-
Verifique se a propriedade
ssl_ciphers
foi definida com o novo valor.Exemplo de configuração atualizada do host virtual:
{ "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 }
No exemplo acima, observe que
ssl_ciphers
foi definido com o novo valor. -
Se o valor antigo de
ssl_ciphers
ainda aparecer, verifique se você seguiu todas as etapas descritas em Como configurar pacotes de criptografia em hosts virtuais corretamente. Se você esqueceu alguma etapa, repita todas as etapas corretamente. - Se ainda não for possível atualizar ou adicionar pacotes de criptografia ao host virtual, entre em contato com o suporte do Apigee Edge.
Como configurar pacotes de criptografia em roteadores
Esta seção explica como configurar pacotes de criptografia nos roteadores. Os pacotes de criptografia podem ser configurados por meio da propriedade do roteador conf_load_balancing_load.balancing.driver.server.ssl.ciphers
, que representa os pacotes de criptografia aceitos separados por dois pontos.
Para configurar pacotes de criptografia nos roteadores, faça o seguinte:
-
Na máquina roteador, abra o arquivo a seguir em um editor. Se ainda não existir, crie-o.
/opt/apigee/customer/application/router.properties
Por exemplo, para abrir o arquivo com
vi
, digite o seguinte:vi /opt/apigee/customer/application/router.properties
-
Adicione uma linha no seguinte formato ao arquivo
properties
, substituindo um valor por colon_separated_cipher_suites:conf_load_balancing_load.balancing.driver.server.ssl.ciphers=colon_separated_cipher_suites
Por exemplo, se você quiser permitir apenas os pacotes de criptografia
TLS_DHE_RSA_WITH_AES_128_GCM_SHA256
eTLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
, determine as strings de criptografia OpenSSL correspondentes da página de manuais de criptografias OpenSSL, conforme mostrado na tabela a seguir:Pacote de criptografia String de criptografia do OpenSSL TLS_DHE_RSA_WITH_AES_128_GCM_SHA256
DHE-RSA-AES128-GCM-SHA256
TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
ECDHE-RSA-AES128-GCM-SHA256
Em seguida, adicione esta linha:
conf_load_balancing_load.balancing.driver.server.ssl.ciphers=DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256
- Salve as mudanças.
-
Verifique se esse arquivo de propriedades pertence ao usuário
apigee
, conforme mostrado abaixo:chown apigee:apigee /opt/apigee/customer/application/router.properties
-
Reinicie o roteador conforme mostrado abaixo:
/opt/apigee/apigee-service/bin/apigee-service edge-router restart
- Se você tiver mais de um roteador, repita as etapas acima para todos eles.
Como verificar o pacote de criptografia em roteadores
Esta seção explica como verificar se os pacotes de criptografia foram modificados nos roteadores.
-
No roteador, procure a propriedade
conf_load_balancing_load.balancing.driver.server.ssl.ciphers
usando o utilitário de pesquisa da Apigee da pasta/opt/apigee
e verifique se ela foi definida com o novo valor da seguinte maneira:/opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_load_balancing_load.balancing.driver.server.ssl.ciphers
-
Se os novos pacotes de criptografia forem configurados corretamente no roteador, o comando acima vai mostrar
os novos valores.
Confira a seguir o exemplo de resultado do comando
search
acima, quando os pacotes de criptografia foram atualizados paraDHE-RSA-AES128-GCM-SHA256
eECDHE-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
No exemplo de saída acima, observe que a propriedade
conf_load_balancing_load.balancing.driver.server.ssl.ciphers
foi definida com os novos valores do pacote de criptografia. Isso indica que o pacote de criptografia foi atualizado com êxito para as strings de criptografia OpenSSLDHE-RSA-AES128-GCM-SHA25
eECDHE-RSA-AES128-GCM-SHA256
no roteador. -
Se você ainda vir os valores antigos dos pacotes de criptografia
conf_load_balancing_load.balancing.driver.server.ssl.ciphers
, verifique se seguiu todas as etapas descritas em Como configurar pacotes de criptografia em roteadores corretamente. Se você esqueceu alguma etapa, repita todas as etapas corretamente. - Se ainda não for possível modificar os pacotes de criptografia nos roteadores, entre em contato com o suporte do Apigee Edge.