Configurazione di TLS per l'API di gestione

Edge for Private Cloud v4.19.01

Per impostazione predefinita, TLS è disabilitato per l'API di gestione e accedi all'API Edge Management tramite HTTP utilizzando l'indirizzo IP del nodo del server di gestione e la porta 8080. Ad esempio:

http://ms_IP:8080

In alternativa, puoi configurare l'accesso TLS all'API di gestione in modo da potervi accedere nel seguente formato:

https://ms_IP:8443

In questo esempio, configuri l'accesso TLS in modo che utilizzi la porta 8443. Tuttavia, questo numero di porta non è richiesto da Edge: puoi configurare il server di gestione in modo che utilizzi altri valori di porta. L'unico requisito è che il firewall consenta il traffico sulla porta specificata.

Per garantire la crittografia del traffico da e verso l'API di gestione, configura le impostazioni nel file /opt/apigee/customer/application/management-server.properties.

Oltre alla configurazione TLS, puoi anche controllare la convalida della password (lunghezza e complessità della password) modificando il file management-server.properties.

Assicurati che la porta TLS sia aperta

La procedura descritta in questa sezione configura TLS per l'utilizzo della porta 8443 sul server di gestione. Indipendentemente dalla porta utilizzata, devi assicurarti che sia aperta sul server di gestione. Ad esempio, puoi utilizzare il seguente comando per aprirlo:

iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 8443 -j ACCEPT --verbose

Configura TLS

Modifica il file /opt/apigee/customer/application/management-server.properties per controllare l'utilizzo di TLS sul traffico da e verso l'API di gestione. Se questo file non esiste, crealo.

Per configurare l'accesso TLS all'API di gestione:

  1. Genera il file JKS dell'archivio chiavi contenente la certificazione TLS e la chiave privata. Per saperne di più, consulta Configurazione di TLS/SSL per Edge on-premise.
  2. Copia il file JKS del keystore in una directory sul nodo del server di gestione, ad esempio /opt/apigee/customer/application.
  3. Cambia la proprietà del file JKS impostandola sull'utente "apigee":
    chown apigee:apigee keystore.jks

    Dove keystore.jks è il nome del file del keystore.

  4. Modifica /opt/apigee/customer/application/management-server.properties per impostare le seguenti proprietà. Se il file non esiste, crealo:
    conf_webserver_ssl.enabled=true
    # Leave conf_webserver_http.turn.off set to false
    # because many Edge internal calls use HTTP.
    conf_webserver_http.turn.off=false
    conf_webserver_ssl.port=8443
    conf_webserver_keystore.path=/opt/apigee/customer/application/keystore.jks
    # Enter the obfuscated keystore password below.
    conf_webserver_keystore.password=OBF:obfuscatedPassword

    Dove keyStore.jks è il file dell'archivio chiavi e obfuscatedPassword è la password dell'archivio chiavi offuscata. Per informazioni sulla generazione di una password offuscata, consulta Configurazione di TLS/SSL per Edge On-Premises.

  5. Riavvia Edge Management Server utilizzando il comando:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart

L'API di gestione ora supporta l'accesso tramite TLS.

Configura la UI Edge per l'utilizzo di TLS per accedere all'API Edge

Nella procedura precedente, Apigee ha consigliato di lasciare conf_webserver_http.turn.off=false in modo che la UI di Edge possa continuare a effettuare chiamate API Edge tramite HTTP.

Utilizza la seguente procedura per configurare la UI di Edge in modo che effettui queste chiamate solo tramite HTTPS:

  1. Configura l'accesso TLS all'API di gestione come descritto sopra.
  2. Dopo aver verificato che TLS funziona per l'API di gestione, modifica /opt/apigee/customer/application/management-server.properties per impostare la seguente proprietà:
    conf_webserver_http.turn.off=true
  3. Riavvia il server di gestione Edge eseguendo questo comando:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart 
  4. Modifica /opt/apigee/customer/application/ui.properties per impostare la seguente proprietà per la UI di Edge:
    conf_apigee_apigee.mgmt.baseurl="https://FQ_domain_name:port/v1"

    Dove FQ_domain_name è il nome di dominio completo, come indicato nell'indirizzo del certificato del server di gestione, e port è la porta specificata sopra da conf_webserver_ssl.port.

    Se ui.properties non esiste, crealo.

  5. Solo se hai utilizzato un certificato autofirmato (non consigliato in un ambiente di produzione) durante la configurazione dell'accesso TLS all'API di gestione sopra, aggiungi la seguente proprietà a ui.properties:
    conf/application.conf+play.ws.ssl.loose.acceptAnyCertificate=true

    In caso contrario, la UI di Edge rifiuterà un certificato autofirmato.

  6. Riavvia la UI Edge eseguendo questo comando:
    /opt/apigee/apigee-service/bin/apigee-service edge-ui restart

Proprietà TLS per il server di gestione

La tabella seguente elenca tutte le proprietà TLS/SSL che puoi impostare in management-server.properties:

Proprietà Descrizione

conf_webserver_http.port=8080

Il valore predefinito è 8080.

conf_webserver_ssl.enabled=false

Per attivare/disattivare TLS/SSL. Con TLS/SSL abilitato (true), devi anche impostare le proprietà ssl.port e keystore.path.

conf_webserver_http.turn.off=true

Per attivare/disattivare http insieme a https. Se vuoi utilizzare solo HTTPS, lascia il valore predefinito su true.

conf_webserver_ssl.port=8443

La porta TLS/SSL.

Obbligatorio se TLS/SSL è abilitato (conf_webserver_ssl.enabled=true).

conf_webserver_keystore.path=path

Il percorso del file del keystore.

Obbligatorio se TLS/SSL è abilitato (conf_webserver_ssl.enabled=true).

conf_webserver_keystore.password=password

Utilizza una password offuscata in questo formato: OBF:xxxxxxxxxx

conf_webserver_cert.alias=alias

Alias del certificato del keystore facoltativo

conf_webserver_keymanager.password=password

Se il gestore delle chiavi ha una password, inserisci una versione offuscata della password in questo formato:

OBF:xxxxxxxxxx

conf_webserver_trust.all=[false | true]

conf_webserver_trust.store.path=path

conf_webserver_trust.store.password=password

Configura le impostazioni per l'archivio di attendibilità. Determina se vuoi accettare tutti i certificati TLS/SSL (ad esempio, per accettare tipi non standard). Il valore predefinito è false. Fornisci il percorso dell'archivio di attendibilità e inserisci una password dell'archivio di attendibilità offuscata in questo formato:

OBF:xxxxxxxxxx

conf_webserver_exclude.cipher.suites=CIPHER_SUITE_1 CIPHER_SUITE_2

conf_webserver_include.cipher.suites=

Indica le suite di crittografia che vuoi includere o escludere. Ad esempio, se scopri una vulnerabilità in un algoritmo di crittografia, puoi escluderlo qui. Separa più cifrari con uno spazio.

Per informazioni sulle suite di crittografia e sull'architettura di crittografia, consulta la documentazione dei provider Oracle di Java Cryptography Architecture per JDK 8.

conf_webserver_ssl.session.cache.size=

conf_webserver_ssl.session.timeout=

Numeri interi che determinano:

  • Le dimensioni della cache della sessione TLS/SSL (in byte) per l'archiviazione delle informazioni sulla sessione per più client.
  • La quantità di tempo che le sessioni TLS/SSL possono durare prima del timeout (in millisecondi).