Gerenciar criptografia em trânsito

Nesta página, explicamos como gerenciar a criptografia em trânsito no cluster.

Para uma visão geral da criptografia em trânsito no Memorystore para Redis Cluster, consulte Sobre criptografia em trânsito.

Você só pode ativar a criptografia em trânsito quando cria inicialmente o cluster do Memorystore. A criptografia em trânsito não pode ser desativada para clusters criados dessa maneira.

Criar uma instância com criptografia em trânsito

Console

Siga as etapas em Criar uma instância de cluster do Memorystore para Redis.

gcloud

Para criar um cluster do Redis que tenha criptografia em trânsito, execute o comando create:

gcloud alpha redis clusters create INSTANCE_ID \
--region=REGION_ID \
--network=NETWORK \
--replica-count=REPLICA_COUNT \
--shard-count=SHARD_COUNT \
--transit-encryption-mode=server-authentication

Substitua:

  • INSTANCE_ID é o ID da instância do cluster do Memorystore para Redis que você está criando. O ID da instância precisa ter de 1 a 63 caracteres e usar apenas letras minúsculas, números ou hifens. Ele precisa começar com uma letra minúscula e terminar com uma letra minúscula ou um número.

  • REGION_ID é a região em que você quer colocar a instância.

  • NETWORK é a rede usada para criar a instância; Ele precisa usar o formato: projects/NETWORK_PROJECT_ID/global/networks/NETWORK_ID. O ID de rede usado aqui precisa corresponder ao usado pela política de conexão de serviço. Caso contrário, a operação create falhará.

  • REPLICA_COUNT é o número desejado de réplicas (por fragmento). Os valores aceitos são 0, 1 e 2.

  • SHARD_COUNT determina o número de fragmentos de 13 GB na instância. A contagem de fragmentos determina a capacidade total de memória para armazenar dados do cluster. Para mais detalhes sobre a especificação do cluster, consulte Especificação do cluster e do fragmento.

Exemplo:

gcloud alpha redis clusters create my-instance \
--region=us-central1 \
--network=projects/my-project-335118/global/networks/default \
--replica-count=1 \
--shard-count=3 \
--transit-encryption-mode=server-authentication

Fazer o download das autoridades de certificação

Se a criptografia em trânsito estiver ativada no cluster, você verá os certificados das autoridades de certificação ao executar o comando get-cluster-certificate-authority:

gcloud alpha redis clusters get-cluster-certificate-authority INSTANCE_ID

Substitua:

  • INSTANCE_ID é o ID da instância do cluster do Memorystore para Redis.

O corpo da resposta inclui certificados de todas as autoridades de certificação aplicáveis.

Instalar autoridades de certificação no seu cliente

É preciso instalar as autoridades de certificação do cluster no cliente conectado. A instalação de CA pode variar dependendo do tipo de cliente. As etapas abaixo explicam como instalar uma CA em uma VM Linux do Compute Engine.

  1. Conecte-se com SSH ao seu cliente Linux no Compute Engine.

  2. Crie um arquivo chamado server_ca.pem em seu cliente:

    sudo vim /tmp/server_ca.pem
    
  3. Faça o download das autoridades de certificado e cole-as no arquivo server_ca.pem criado anteriormente.

    O texto das CAs precisa ser formatado corretamente. Seu arquivo server_ca.pem terá esta aparência:

    -----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-----
    

    Seu arquivo, como no exemplo anterior, precisa seguir estas diretrizes:

    • Copie toda a autoridade de certificação, incluindo as linhas -----BEGIN CERTIFICATE----- e -----END CERTIFICATE-----.

    • Verifique se o texto das CAs está totalmente justificado à esquerda. Não pode haver espaços antes de qualquer linha das CAs.

    • Cada autoridade certificadora deve ser adicionada em uma nova linha. Não deve haver linhas em branco entre as CAs.

Configurar o cliente para criptografia em trânsito

O cliente que você usa para se conectar ao cluster precisa ser compatível com TLS ou usar um arquivo secundário de terceiros para ativar o TLS.

Se seu cliente for compatível com TLS, configure-o para apontar para o IP, a porta 6379 e o arquivo que contém a autoridade de certificação da instância do Redis. Se você optar por usar um arquivo secundário, recomendamos usar o stunnel.

Conecte-se com segurança a um cluster do Memorystore usando stunnel e telnet

Para instruções sobre como usar o stunnel para ativar a criptografia em trânsito em um cliente do Compute Engine, consulte Conectar-se com segurança a uma instância do Memorystore usando stunnel e telnet.

Gerenciar a rotação da autoridade de certificação

É necessário instalar todas as autoridades de certificação transferíveis para download em clientes que acessam seu cluster.

Instalar as novas CAs, além das anteriores, depois que elas estiverem disponíveis é a forma mais simples de garantir que você tenha as CAs necessárias quando o evento de rotação da autoridade de certificação ocorrer.

Tudo o que você precisa fazer para garantir que tem a CA necessária é verificar se as CAs salvas no arquivo de cliente correspondem às mostradas ao fazer o download de autoridades de certificado. Tanto as CAs novas quanto as antigas estão ativas durante a rotação para garantir um tempo de inatividade mínimo.