Todos os produtos
Search
Central de documentação

ApsaraDB RDS:Configure a custom certificate

Última atualização: Jun 26, 2026

Ao configurar a criptografia SSL para uma instância do ApsaraDB RDS for PostgreSQL, você pode usar um certificado gerenciado pela Alibaba Cloud ou um certificado personalizado. Este tópico descreve como usar um certificado personalizado.

Pré-requisitos

  • A instância do ApsaraDB RDS for PostgreSQL deve executar PostgreSQL 10 ou versão posterior e usar a versão com disco em nuvem.

    Nota

    Instâncias que usam o método de faturamento Serverless não são compatíveis.

  • O OpenSSL deve estar instalado.

    Nota

    No Linux, o OpenSSL já vem instalado por padrão. No Windows, baixe e instale um pacote OpenSSL.

Considerações importantes

  • Ativar a criptografia SSL aumenta a utilização de CPU e a latência de leitura/gravação.

  • Após ativar a criptografia SSL, desconecte e reconecte as conexões existentes para que a criptografia entre em vigor.

  • Configurar ou atualizar um certificado personalizado, ou desativar a criptografia SSL, reinicia a instância do banco de dados. Esse processo leva aproximadamente três minutos. Recomendamos realizar essas operações durante períodos de baixo tráfego.

Etapa 1: Obter um certificado personalizado

Aviso

Ao gerar a chave privada de um certificado de servidor ou de um certificado autoassinado, não criptografe a chave privada com senha. Caso contrário, não será possível ativar a criptografia SSL.

Este tópico usa um sistema CentOS como exemplo. No Windows, o comando openssl é idêntico ao usado em sistemas CentOS. Substitua o comando cp copiando o arquivo manualmente e substitua o comando vim editando o arquivo manualmente.

  1. Crie um certificado autoassinado (server-ca.crt) e sua chave privada (server-ca.key).

    openssl req -new -x509 -days 365 -nodes -out server-ca.crt -keyout server-ca.key -subj "/CN=root-server-ca"
  2. Gere um arquivo de solicitação de assinatura de certificado (CSR) (server.csr) e um arquivo de chave privada do servidor (server.key).

    Um certificado personalizado pode proteger um ou mais endpoints. Escolha o método adequado abaixo para gerar o arquivo CSR do servidor.

    • Para proteger um único endpoint, execute o comando a seguir.

      openssl req -new -nodes -text -out server.csr -keyout server.key -subj "/CN=pgm-bpxxxxx.pg.rds.aliyuncs.com"
      Nota

      Neste exemplo, pgm-bpxxxxx.pg.rds.aliyuncs.com é um endpoint de exemplo. Substitua-o pelo endpoint que deseja proteger. Para visualizar o endpoint, consulte Visualizar ou modificar um endpoint e porta.

    • Para proteger vários endpoints, siga as etapas abaixo.

      1. Copie o arquivo de configuração do OpenSSL para uso temporário.

        cp /etc/pki/tls/openssl.cnf  /tmp/openssl.cnf
        Nota

        No Windows, o arquivo openssl.cnf está localizado no subdiretório \bin\cnf do diretório de instalação do OpenSSL. Copie o arquivo para qualquer local de sua preferência.

      2. Execute o comando abaixo para editar o arquivo temporário openssl.cnf:

        vim /tmp/openssl.cnf
      3. Pressione i para entrar no modo de edição e configure o conteúdo a seguir.

        # Add the following line to the end of the [ req ] section.
        req_extensions = v3_req
        # Add a new [ v3_req ] section.
        [ v3_req ]
        basicConstraints = CA:FALSE
        keyUsage = nonRepudiation, digitalSignature, keyEncipherment
        subjectAltName = @alt_names
        # Add a new [ alt_names ] section and specify the database endpoints to protect after DNS.
        [ alt_names ]
        DNS.1 = pgm-bpxxxxx.pg.rds.aliyuncs.com
        DNS.2 = pgm-bpxxxxx.pg.rds.aliyuncs.com
      4. Pressione a tecla Esc para sair do modo de edição. Em seguida, insira :wq para salvar as alterações e sair.

      5. Gere o arquivo CSR do servidor (server.csr) e o arquivo de chave privada do servidor (server.key).

        openssl req -new -nodes -text -out server.csr -keyout server.key -config /tmp/openssl.cnf

        Ao gerar o arquivo CSR (server.csr), o OpenSSL solicitará os seguintes parâmetros.

        Parâmetro

        Descrição

        Exemplo

        Country name

        Código do país com duas letras no padrão ISO.

        CN

        State or province name

        A província ou estado.

        Zhejiang

        Locality name

        A cidade.

        Hangzhou

        Organization name

        O nome da empresa.

        Alibaba

        Organizational unit name

        O nome do departamento.

        Aliyun

        Common name

        O nome de domínio para o qual você está solicitando o certificado SSL. Esse campo já está pré-configurado no arquivo openssl.cnf e pode ser ignorado.

        -

        Email address

        Não obrigatório.

        -

        A challenge password

        Não obrigatório.

        -

        An optional company name

        Não obrigatório.

        -

  3. Gere o certificado do servidor (server.crt).

    • Para proteger um único endpoint, execute o comando a seguir.

      openssl x509 -req -in server.csr -text -days 365 -CA server-ca.crt -CAkey server-ca.key -CAcreateserial  -out server.crt
    • Para proteger vários endpoints, execute o comando a seguir.

      openssl x509 -req -in server.csr -text -days 365 -CA server-ca.crt -CAkey server-ca.key -CAcreateserial  -out server.crt -extensions v3_req -extfile /tmp/openssl.cnf

Execute o comando ls para visualizar os arquivos gerados:

# ls
server-ca.crt  server-ca.key  ca.srl  server.crt  server.csr  server.key

Arquivos principais:

  • server.crt: O certificado do servidor.

  • server.key: A chave privada do servidor.

  • server-ca.crt: O certificado autoassinado.

  • server-ca.key: A chave privada do certificado autoassinado.

Etapa 2: Ativar SSL com um certificado personalizado

Nota

Após configurar um certificado personalizado, o Status muda para Modifying SSL Settings por aproximadamente três minutos. Aguarde até que o status mude para Running antes de prosseguir.

  1. Acesse a página Instances. Na barra de navegação superior, selecione a região onde a instância RDS está localizada. Em seguida, localize a instância RDS e clique em seu ID.

  2. No painel de navegação à esquerda, escolha Data Security > SSL.

  3. Defina Custom Certificate como Custom Certificate. Ao lado de Configure Database Certificate (to Prevent Database Disguise), clique em Configuration. Insira o certificado do servidor e sua chave privada e clique em OK.

    Observação: após modificar o certificado do servidor, o sistema o atualiza automaticamente e reinicia a instância do banco de dados.

    Parâmetro

    Valor

    Server certificate

    Cole o conteúdo completo do arquivo server.crt obtido na Etapa 1: Obter um certificado personalizado, incluindo todo o conteúdo de -----BEGIN CERTIFICATE----- até -----END CERTIFICATE-----.

    Server certificate private key

    Cole o conteúdo completo do arquivo server.key obtido na Etapa 1: Obter um certificado personalizado, incluindo todo o conteúdo de -----BEGIN PRIVATE KEY----- até -----END PRIVATE KEY-----.

    Se você especificou vários endpoints para o certificado, vários registros serão exibidos em Protected Host. A página também exibe outros detalhes, como o validity period, além de opções para View Certificate Details e View Private Key Details. Para atualizar o certificado, clique em Modify.

Etapa 3: Conectar-se ao banco de dados

O ApsaraDB RDS for PostgreSQL é compatível com conexões SSL a partir de clientes remotos. Consulte Conectar-se a uma instância do ApsaraDB RDS for PostgreSQL via SSL para obter as instruções de conexão.

Etapa 4: (Opcional) Atualizar o certificado

Nota

Atualizar o certificado reinicia a instância. Prossiga com cautela.

Na página SSL, na seção Configure Database Certificate (to Prevent Database Disguise), clique em Modify . Em seguida, insira o novo certificado do servidor e a chave privada.

Etapa 5: (Opcional) Desativar a criptografia SSL

Nota

Desativar a criptografia SSL reinicia a instância. Prossiga com cautela.

Para desativar a criptografia SSL, na página SSL, clique em Disable SSL.