Stai visualizzando la documentazione di Apigee Edge.
Consulta la
documentazione di Apigee X. info
Questo documento spiega come configurare le suite di crittografia su host virtuali e router in Apigee Edge.
Una suite di crittografia è un insieme di algoritmi che aiutano a proteggere una connessione di rete che utilizza TLS. Il client e il server devono concordare la specifica suite di crittografia che verrà utilizzata nello scambio di messaggi. Se il client e il server non concordano una suite di crittografia, le richieste non vanno a buon fine a causa di errori di handshake TLS.
In Apigee, le suite di crittografia devono essere concordate reciprocamente tra le applicazioni client e i router.
Potresti voler modificare le suite di crittografia su Apigee Edge per i seguenti motivi:
- Per evitare qualsiasi mancata corrispondenza delle suite di crittografia tra le applicazioni client e i router Apigee
- Per utilizzare suite di crittografia più sicure per correggere eventuali vulnerabilità di sicurezza o per una maggiore sicurezza
Le suite di crittografia possono essere configurate sugli host virtuali o sui router Apigee. Tieni presente che Apigee accetta le suite di crittografia solo nel formato stringhe di crittografia OpenSSL sia nell'host virtuale che nel router. La pagina man delle cifrature OpenSSL fornisce le suite di crittografia SSL o TLS della specifica pertinente e i relativi equivalenti OpenSSL.
Ad esempio:
Se vuoi configurare la suite di crittografia TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 nell'host virtuale o nel router Apigee, devi identificare la stringa di crittografia OpenSSL corrispondente dalla pagina man di OpenSSL ciphers.
La stringa di crittografia OpenSSL per la suite di crittografia TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
è ECDHE-RSA-AES128-GCM-SHA256.. Pertanto, devi utilizzare la stringa di crittografia OpenSSL
ECDHE-RSA-AES128-GCM-SHA256 durante la configurazione della suite di crittografia nell'host virtuale
o sul router Apigee.
Prima di iniziare
- Per informazioni sulle stringhe di crittografia OpenSSL per le diverse suite di crittografia, leggi la pagina di manuale delle crittografie OpenSSL.
- Se non hai familiarità con le proprietà degli host virtuali, leggi Riferimento alle proprietà degli host virtuali.
- Se non hai familiarità con la configurazione delle proprietà per Edge su Private Cloud, leggi Come configurare Edge.
Configurazione delle suite di crittografia sugli host virtuali
Questa sezione spiega come configurare le suite di crittografia negli host virtuali associati a un'organizzazione e a un ambiente. Le suite di crittografia possono essere configurate nell'host virtuale tramite la proprietà ssl_ciphers, che rappresenta l'elenco delle suite di crittografia supportate dall'host virtuale.
Consulta la sezione Suite di crittografia supportate per un elenco delle suite di crittografia supportate da Apigee.
Puoi configurare l'host virtuale utilizzando uno dei seguenti metodi:
- Utilizzo dell'interfaccia utente Edge
- Utilizzo dell'API Edge
Utilizzo della UI di Edge
Per configurare l'host virtuale utilizzando la UI Edge:
- Accedi alla UI di Edge.
- Vai ad Amministrazione > Host virtuali.
- Seleziona un ambiente specifico in cui vuoi apportare questa modifica.
- Seleziona l'host virtuale specifico per cui vuoi configurare le suite di crittografia.
-
In Proprietà, aggiorna il valore di Crittografie con un elenco di stringhe di crittografia OpenSSL delimitate da due punti.
Ad esempio, se vuoi consentire solo le suite di crittografia
TLS_DHE_RSA_WITH_AES_128_GCM_SHA256eTLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, determina le stringhe di crittografia OpenSSL corrispondenti dalla pagina man di OpenSSL ciphers come mostrato nella tabella seguente:Suite di crittografia Stringa di cifratura OpenSSL TLS_DHE_RSA_WITH_AES_128_GCM_SHA256DHE-RSA-AES128-GCM-SHA256TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256ECDHE-RSA-AES128-GCM-SHA256Aggiungi la stringa di cifratura OpenSSL con separazione tramite due punti, come mostrato nella figura seguente:
- Salva la modifica.
Utilizzo dell'API Edge
Per configurare le suite di crittografia su un host virtuale utilizzando l'API Edge, segui questi passaggi:
- Ottieni la configurazione attuale dell'host virtuale utilizzando l'API
Get virtual host come mostrato di seguito:
Utente del cloud pubblico:
curl -v -X GET https://api.enterprise.apigee.com/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u {username}Utente 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 } -
Aggiungi la proprietà
ssl_ciphersalla configurazione dell'host virtuale esistente payload JSON inpropertiescon le stringhe di cifratura OpenSSL appropriate.Ad esempio, se vuoi consentire solo le suite di crittografia
TLS_DHE_RSA_WITH_AES_128_GCM_SHA256eTLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, determina le stringhe di crittografia OpenSSL corrispondenti dalla pagina man di OpenSSL ciphers come mostrato nella tabella seguente:Suite di crittografia Stringa di cifratura OpenSSL TLS_DHE_RSA_WITH_AES_128_GCM_SHA256DHE-RSA-AES128-GCM-SHA256TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256ECDHE-RSA-AES128-GCM-SHA256Aggiungi il seguente blocco di codice
properties:Esempio di configurazione dell'host virtuale aggiornata:
{ "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 } -
Salva la configurazione dell'host virtuale aggiornata in un file. Ad esempio,
virtualhost-payload.json. -
Aggiorna la configurazione di
virtualhostcon la modifica utilizzando l'API Aggiorna un host virtuale come segue:Utente del cloud pubblico:
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}
Utente 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}
Suite di crittografia supportate
Apigee supporta le seguenti suite di crittografia:
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
Verifica delle suite di crittografia sugli host virtuali
Questa sezione spiega come verificare che le suite di crittografia siano state modificate correttamente sull'host virtuale utilizzando l'API Edge.
- Esegui l'API
Get virtual host per ottenere la configurazione
virtualhostcome mostrato di seguito:Utente del cloud pubblico:
curl -v -X GET https://api.enterprise.apigee.com/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u {username}Utente Private Cloud:
curl -v -X GET http://{management_server_IP}:8080/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u {username} -
Verifica che la proprietà
ssl_cipherssia stata impostata sul nuovo valore.Esempio di configurazione dell'host virtuale aggiornata:
{ "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 }Nell'esempio precedente, tieni presente che
ssl_ciphersè stato impostato con il nuovo valore. -
Se continui a visualizzare il vecchio valore per
ssl_ciphers, verifica di aver seguito correttamente tutti i passaggi descritti in Configurazione delle suite di crittografia sugli host virtuali. Se hai saltato qualche passaggio, ripeti correttamente tutti i passaggi. - Se ancora non riesci ad aggiornare o aggiungere suite di crittografia all'host virtuale, contatta l'assistenza Apigee Edge.
Configurazione delle suite di crittografia sui router
Questa sezione spiega come configurare le suite di crittografia sui router. Le suite di crittografia possono essere configurate tramite la proprietà Router conf_load_balancing_load.balancing.driver.server.ssl.ciphers, che rappresenta le suite di crittografia accettate separate da due punti.
Per configurare le suite di crittografia sui router:
-
Sulla macchina Router, apri il seguente file in un editor. Se non esiste già, crealo.
/opt/apigee/customer/application/router.properties
Ad esempio, per aprire il file con
vi, inserisci quanto segue:vi /opt/apigee/customer/application/router.properties
-
Aggiungi una riga nel seguente formato al file
properties, sostituendo un valore a colon_separated_cipher_suites:conf_load_balancing_load.balancing.driver.server.ssl.ciphers=colon_separated_cipher_suites
Ad esempio, se vuoi consentire solo le suite di crittografia
TLS_DHE_RSA_WITH_AES_128_GCM_SHA256eTLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, determina le stringhe di crittografia OpenSSL corrispondenti dalla pagina di manuale delle crittografie OpenSSL come mostrato nella tabella seguente:Suite di crittografia Stringa di cifratura OpenSSL TLS_DHE_RSA_WITH_AES_128_GCM_SHA256DHE-RSA-AES128-GCM-SHA256TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256ECDHE-RSA-AES128-GCM-SHA256e poi aggiungi la seguente riga:
conf_load_balancing_load.balancing.driver.server.ssl.ciphers=DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256
- Salva le modifiche.
-
Assicurati che questo file di proprietà appartenga all'utente
apigeecome mostrato di seguito:chown apigee:apigee /opt/apigee/customer/application/router.properties
-
Riavvia il router come mostrato di seguito:
/opt/apigee/apigee-service/bin/apigee-service edge-router restart
- Se hai più di un router, ripeti i passaggi precedenti su tutti i router.
Verifica della suite di crittografia sui router
Questa sezione spiega come verificare che le suite di crittografia siano state modificate correttamente sui router.
-
Sul router, cerca la proprietà
conf_load_balancing_load.balancing.driver.server.ssl.ciphersutilizzando l'utilità di ricerca Apigee dalla cartella/opt/apigeee verifica se è stata impostata con il nuovo valore nel seguente modo:/opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_load_balancing_load.balancing.driver.server.ssl.ciphers
-
Se le nuove suite di crittografia vengono impostate correttamente sul router, il comando precedente mostra
i nuovi valori.
Di seguito è riportato il risultato di esempio del comando
searchprecedente quando le suite di crittografia sono state aggiornate aDHE-RSA-AES128-GCM-SHA256eECDHE-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
Nell'output di esempio riportato sopra, nota che la proprietà
conf_load_balancing_load.balancing.driver.server.ssl.ciphersè stata impostata con i nuovi valori della suite di crittografia. Ciò indica che la suite di crittografia è stata aggiornata correttamente alle stringhe di crittografia OpenSSLDHE-RSA-AES128-GCM-SHA25eECDHE-RSA-AES128-GCM-SHA256sul router. -
Se continui a visualizzare i vecchi valori per le suite di crittografia
conf_load_balancing_load.balancing.driver.server.ssl.ciphers, verifica di aver seguito correttamente tutti i passaggi descritti in Configurazione delle suite di crittografia sui router. Se hai saltato qualche passaggio, ripeti correttamente tutti i passaggi. - Se ancora non riesci a modificare le suite di crittografia sui router, contatta l'assistenza Apigee Edge.