Gestire la crittografia dei dati in transito

Questa pagina spiega come attivare la crittografia dei dati in transito durante la creazione dell'istanza Redis e come gestirla per l'istanza. In transito la crittografia utilizza il protocollo TLS (Transport Layer Security).

Per informazioni sul comportamento generale e sui vantaggi dell'utilizzo Per la crittografia dei dati in transito, consulta Crittografia dei dati in transito.

Per un elenco delle autorizzazioni necessarie a un utente per eseguire la gestione in questa pagina, vedi Autorizzazioni per la crittografia dei dati in transito.

Puoi attivare le crittografie in transito solo durante la creazione iniziale dell'istanza Redis. La crittografia in transito non può essere disattivata per le istanze create in questo modo.

Creazione di un'istanza Redis con crittografia in transito

Console

Seleziona Attiva la crittografia in transito quando crei un'istanza Redis.

gcloud

Per creare un'istanza Redis con crittografia in transito, inserisci il comando seguente, sostituendo variables con valori appropriati:

gcloud redis instances create instance-id --transit-encryption-mode=SERVER_AUTHENTICATION --size=size --region=region-id

Dove:

  • --transit-encryption-mode=SERVER_AUTHENTICATION consente i dati in transito la crittografia per la tua istanza.

Scaricare l'autorità di certificazione

Console

  1. Vai alla pagina Memorystore per Redis nella console Google Cloud.

    Memorystore for Redis

  2. Visualizza la pagina Dettagli istanza dell'istanza facendo clic sull'ID istanza.

  3. Fai clic sul pulsante Scarica o Scarica tutto in Certificato server TLS.

gcloud

Se la crittografia dei dati in transito è abilitata per la tua istanza, vedrai i contenuti dell'autorità di certificazione o delle autorità di certificazione quando esegui il comando seguente:

gcloud redis instances describe instance-id --region=region

Il corpo della risposta includerà tutte le autorità di certificazione applicabili. Di seguito è riportato un esempio di autorità di certificazione (CA) per Memorystore for Redis:

-----BEGIN CERTIFICATE-----
MIIDnTCCAoWgAwIBAgIBADANBgkqhkiG9w0BAQsFADCBhTEtMCsGA1UELhMkNzYx
NTc4OGMtMTI2Yi00Nzk0LWI2MWMtY2YxOWE2Y2Y1ZjNiMTEwLwYDVQQDEyhHb29n
bGUgQ2xvdWQgTWVtb3J5c3RvcmUgUmVkaXMgU2VydmVyIENBMRQwEgYDVQQKEwtH
b29nbGUsIEluYzELMAkGA1UEBhMCVVMwHhcNMjAwOTE3MjEzNDE1WhcNMzAwOTE1
MjEzNTE1WjCBhTEtMCsGA1UELhMkNzYxNTc4OGMtMTI2Yi00Nzk0LWI2MWMtY2Yx
OWE2Y2Y1ZjNiMTEwLwYDVQQDEyhHb29nbGUgQ2xvdWQgTWVtb3J5c3RvcmUgUmVk
aXMgU2VydmVyIENBMRQwEgYDVQQKEwtHb29nbGUsIEluYzELMAkGA1UEBhMCVVMw
ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCyDKmDHZm6tzMhNtKOnp8H
8+zTv1qA6OkBToVqCjKTTMGO18ovNtAAMjbGvclLuJNLbA2WTTWVttHen6Cn82h0
3gG9HMk9AwK1cVT7gW072h++TRsYddIRlwnSweRWL8jUX+PNt7CjFqH+sma/Hb1m
CktHdBOa897JiYHrMVNTcpS8SFwwz05yHUTEVGlHdkvlaJXfHLe6keCMABLyjaMh
1Jl4gZI2WqLMV680pJusK6FI6q/NmqENFc9ywMEg395lHTK9w9e014WIXg0q7sU3
84ChVVS2yYOMEUWeov4Qx6XeVfA4ss5t7OCqsMQkvslkE90mJZcVvhBj3QvTH9Rz
AgMBAAGjFjAUMBIGA1UdEwEB/wQIMAYBAf8CAQAwDQYJKoZIhvcNAQELBQADggEB
AJkn+MDE4V10DZn4uEc0s0Mg4FEMC1fDewmDYwSNnxRlzfEi+wAX2AaqrJ4m4Qa7
xIyuSYxArEOY6QeyJyw7/06dom8aAv4aO2p8hE04Ih6QwaTMFIlT2Jf6TidVd3eT
wfjwFJVoJ+dgxsaCv2uMFZWee5aRHmKzj9LhqPwpWnTs9Q/qmOheUNoe2/1i8yvn
662M7RZMR7fZH6ETsdz5w1nPXXiRqJ7K0EGKoPNjMlYK3/U1X3sazI4tpMNgTdxG
rnNh9Sd9REMBmDCPj9dUI9k4hQX4yQZp96fnLT6cet22OPajEKnpzyqJs1s4iX/g
lEtWs4V/YBhKA56CW6ASZS8=
-----END CERTIFICATE-----

Copia e salva temporaneamente tutte le CA in modo da poterle installare sui client che accedono all'istanza Redis.

Installazione di un'autorità di certificazione sul client

Devi installare l'autorità di certificazione dell'istanza Redis nel di connessione del client. L'installazione di CA può variare in base al tipo di client. La I passaggi riportati di seguito spiegano come installare una CA su una VM Linux di Compute Engine.

  1. Connettiti tramite SSH al client Linux di Compute Engine.

  2. Crea un file denominato server_ca.pem nel tuo client eseguendo questo comando :

    sudo vim /tmp/server_ca.pem
    
  3. Scarica l'autorità di certificazione e incollalo nel file server_ca.pem creato in precedenza.

    Il testo dell'autorità di certificazione deve essere formattato correttamente:

    • Copia l'intera autorità di certificazione, incluso -----BEGIN CERTIFICATE----- e -----END CERTIFICATE----- righe.
    • Assicurati che il testo della CA sia completamente giustificato a sinistra. Non devono esserci spazi davanti a nessuna riga del certificato.

Configurazione del client per la crittografia dei dati in transito

Il client che utilizzi per connetterti all'istanza Redis deve supportare TLS o utilizzare un sidecar di terze parti per attivare TLS.

Se il client supporta TLS, configuralo in modo che punti all'IP della tua istanza Redis. porta 6378 e il file contenente l'autorità di certificazione. Se scegli di utilizzare un sidecar, ti consigliamo di utilizzare Stunnel.

Configurazione client aggiuntiva

Alcuni client non accettano certificati autofirmati per impostazione predefinita e richiedono configurazione aggiuntiva.

Ad esempio, Lattuga è un popolare Java per Redis. La loro documentazione fornisce un esempio per stabilire in modo nativo con TLS (vedi l'esempio 47). Poiché Java Security Manager non consente i certificati autofirmati per impostazione predefinita, è necessario specificare un'opzione aggiuntiva nella compilazione dell'URI Redis .withVerifyPeer(false).

Connessione sicura a un'istanza Redis utilizzando Stunnel e telnet

Per istruzioni su come utilizzare Stunnel per attivare la crittografia in transito su un client Compute Engine, consulta Connessione sicura a un'istanza Redis utilizzando Stunnel e telnet.

Gestione della rotazione dell'autorità di certificazione

Dovresti installare tutti scaricabili le autorità di certificazione sui client che accedono all'istanza Redis.

L'installazione della nuova CA, oltre a quella precedente, non appena sarà disponibile è la forma più semplice per assicurarti di disporre della CA necessaria quando si verifica l'evento di rotazione dell'autorità di certificazione.

Esegui questo comando dopo aver introdotto una nuova autorità di certificazione per visualizzare i contenuti della nuova CA:

gcloud redis instances describe instance-id --region=region

Poi, copia e incolla l'autorità di certificazione più recente nel file nel client in cui hai salvato l'autorità di certificazione precedente.

Il file deve avere il seguente formato. L'ordine delle CA non è importante:

-----BEGIN CERTIFICATE-----
MIIDnTCCAoWgAwIBAgIBADANBgkqhkiG9w0BAQsFADCBhTEtMCsGA1UELhMkNzYx
NTc4OGMtMTI2Yi00Nzk0LWI2MWMtY2YxOWE2Y2Y1ZjNiMTEwLwYDVQQDEyhHb29n
bGUgQ2xvdWQgTWVtb3J5c3RvcmUgUmVkaXMgU2VydmVyIENBMRQwEgYDVQQKEwtH
b29nbGUsIEluYzELMAkGA1UEBhMCVVMwHhcNMjAwOTE3MjEzNDE1WhcNMzAwOTE1
MjEzNTE1WjCBhTEtMCsGA1UELhMkNzYxNTc4OGMtMTI2Yi00Nzk0LWI2MWMtY2Yx
OWE2Y2Y1ZjNiMTEwLwYDVQQDEyhHb29nbGUgQ2xvdWQgTWVtb3J5c3RvcmUgUmVk
aXMgU2VydmVyIENBMRQwEgYDVQQKEwtHb29nbGUsIEluYzELMAkGA1UEBhMCVVMw
ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCyDKmDHZm6tzMhNtKOnp8H
8+zTv1qA6OkBToVqCjKTTMGO18ovNtAAMjbGvclLuJNLbA2WTTWVttHen6Cn82h0
3gG9HMk9AwK1cVT7gW072h++TRsYddIRlwnSweRWL8jUX+PNt7CjFqH+sma/Hb1m
CktHdBOa897JiYHrMVNTcpS8SFwwz05yHUTEVGlHdkvlaJXfHLe6keCMABLyjaMh
1Jl4gZI2WqLMV680pJusK6FI6q/NmqENFc9ywMEg395lHTK9w9e014WIXg0q7sU3
84ChVVS2yYOMEUWeov4Qx6XeVfA4ss5t7OCqsMQkvslkE90mJZcVvhBj3QvTH9Rz
AgMBAAGjFjAUMBIGA1UdEwEB/wQIMAYBAf8CAQAwDQYJKoZIhvcNAQELBQADggEB
AJkn+MDE4V10DZn4uEc0s0Mg4FEMC1fDewmDYwSNnxRlzfEi+wAX2AaqrJ4m4Qa7
xIyuSYxArEOY6QeyJyw7/06dom8aAv4aO2p8hE04Ih6QwaTMFIlT2Jf6TidVd3eT
wfjwFJVoJ+dgxsaCv2uMFZWee5aRHmKzj9LhqPwpWnTs9Q/qmOheUNoe2/1i8yvn
662M7RZMR7fZH6ETsdz5w1nPXXiRqJ7K0EGKoPNjMlYK3/U1X3sazI4tpMNgTdxG
rnNh9Sd9REMBmDCPj9dUI9k4hQX4yQZp96fnLT6cet22OPajEKnpzyqJs1s4iX/g
lEtWs4V/YBhKA56CW6ASZS8=
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIDnTCCAoWgAwIBAgIBADANBgkqhkiG9w0BAQsFADCBhTEtMCsGA1UELhMkYjg4
ZTUzYTMtODdmNC00N2VhLWJjN2MtYTdhMzM4NmIwZmU4MTEwLwYDVQQDEyhHb29n
bGUgQ2xvdWQgTWVtb3J5c3RvcmUgUmVkaXMgU2VydmVyIENBMRQwEgYDVQQKEwtH
b29nbGUsIEluYzELMAkGA1UEBhMCVVMwHhcNMjAwOTE4MjEzMTI3WhcNMzAwOTE2
MjEzMjI3WjCBhTEtMCsGA1UELhMkYjg4ZTUzYTMtODdmNC00N2VhLWJjN2MtYTdh
MzM4NmIwZmU4MTEwLwYDVQQDEyhHb29nbGUgQ2xvdWQgTWVtb3J5c3RvcmUgUmVk
aXMgU2VydmVyIENBMRQwEgYDVQQKEwtHb29nbGUsIEluYzELMAkGA1UEBhMCVVMw
ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDEO4Zs/So5DA6wtftkAElD
8BVREob4gby2mGBYAtd3JJQKFC+zIqCf2DhrWihrCeXhsdsZqJUF16E3MsCCWS2T
UWt6T37zObU2fzKmb7X+TSw1tunIUcIXwWzoMhqdGrIvfI9guMbF+KssQIjDMs9M
G/hY6cY1NB5THOxXqcxzYrwSKB1EE160EDz4RgKAYQhw7AyVOBBAbWqA5pTEDuUy
qpsz+NFpKYTwaeTpzil0xIl0JJS3DOd4G7ZnMG2wFT2j3wt+P0SkAPuOWgmX82iO
gGmKoaCh3KcICie/rZRTfsRPjMm+yswRQRDeLB5eoMmH+gbUInVZU0qOJ/7gOYEb
AgMBAAGjFjAUMBIGA1UdEwEB/wQIMAYBAf8CAQAwDQYJKoZIhvcNAQELBQADggEB
AF4xlEbwLUK5VjoKlJBtKXLYrYcW+AbQLhZQFP8exE8bOW7p39h+5J0nl3ItPxu6
97BCt1P5TFisba8pBxaExiDsYmjKQrhtizMkzl5h9hGksOgoLlAqaaxfA97+Q9Tq
5gaYChESur/159Z3jiM47obKoZmHfgSgr//7tjII7yZxUGhOjIVffv/fEa4aixqM
0yH1V1s8hWHZeui2VFrHmTxY20IH9ktyedjSUgnFXzsEH6sbR18p0wBZqyrrtURs
DaUIeoOHfHgEJM8k/wphSJI0V6pMC6nax2JhexLTRiUsiGTLRDe3VtsdWqS2DLa9
9DmrfdF0eFrfWw3VRNLwwXg=
-----END CERTIFICATE-----

Per assicurarti di disporre dell'autorità di certificazione richiesta, devi solo verificare che le autorità di certificazione salvate nel file del client corrispondano a quelle mostrate da gcloud redis instances describe. Dopo l'inizio di un evento di rotazione, garantire tempi sufficienti per le rotazioni con tempi di inattività minimi.

Passaggi successivi