Configurando Conjuntos de Cifras
Os conjuntos de cifras são uma combinação de algoritmos e protocolos que ajudam a proteger as conexões de rede durante o handshake TLS. O site IBM Cloud® Internet Services protege as conexões de rede usando conjuntos de cifras de borda e de origem.
Conjuntos de cifras de borda
As cifras a seguir são suportadas na borda da nuvem. Você pode restringir as cifras usadas em seu domínio por meio do plug-in CIS CLI para a CLI IBM Cloud. Consulte a opção ciphers no comando de configurações de domínio.
| Nome do OpenSSL | TLS 1.0 | TLS 1.1 | TLS 1.2 | TLS 1.3 | Nome IANA |
|---|---|---|---|---|---|
| ECDHE-ECDSA-AES128-GCM-SHA256 | TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 | ||||
| ECDHE-ECDSA-CHACHA20-POLY1305 | TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256 | ||||
| ECDHE-RSA-AES128-GCM-SHA256 | TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 | ||||
| ECDHE-RSA-CHACHA20-POLY1305 | TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256 | ||||
| ECDHE-ECDSA-AES128-SHA256 | TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 | ||||
| ECDHE-ECDSA-AES128-SHA | TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA | ||||
| ECDHE-RSA-AES128-SHA256 | TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 | ||||
| ECDHE-RSA-AES128-SHA | TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA | ||||
| AES128-GCM-SHA256 | TLS_RSA_WITH_AES_128_GCM_SHA256 | ||||
| AES128-SHA256 | TLS_RSA_WITH_AES_128_CBC_SHA256 | ||||
| AES128-SHA | TLS_RSA_WITH_AES_128_CBC_SHA | ||||
| ECDHE-ECDSA-AES256-GCM-SHA384 | TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 | ||||
| ECDHE-ECDSA-AES256-SHA384 | TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384 | ||||
| ECDHE-RSA-AES256-GCM-SHA384 | TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 | ||||
| ECDHE-RSA-AES256-SHA384 | TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 | ||||
| ECDHE-RSA-AES256-SHA | TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA | ||||
| AES256-GCM-SHA384 | TLS_RSA_WITH_AES_256_GCM_SHA384 | ||||
| AES256-SHA256 | TLS_RSA_WITH_AES_256_CBC_SHA256 | ||||
| AES256-SHA | TLS_RSA_WITH_AES_256_CBC_SHA | ||||
| DES-CBC3-SHA | TLS_RSA_WITH_3DES_EDE_CBC_SHA | ||||
| AEAD-AES128-GCM-SHA256 | TLS_AES_128_GCM_SHA256 | ||||
| AEAD-AES256-GCM-SHA384 | TLS_AES_256_GCM_SHA384 | ||||
| AEAD-CHACHA20-POLY1305-SHA256 | TLS_CHACHA20_POLY1305_SHA256 |
Conjuntos de cifras de origem
As cifras a seguir são suportadas na origem. Você pode restringir as cifras usadas em seu domínio por meio do plug-in CIS CLI para a CLI IBM Cloud. Consulte a opção ciphers no comando de configurações de domínio.
| Nome do OpenSSL | TLS 1.0 | TLS 1.1 | TLS 1.2 | TLS 1.3 | Nome IANA |
|---|---|---|---|---|---|
| AEAD-AES128-GCM-SHA256 [1] | TLS_AES_128_GCM_SHA256 | ||||
| AEAD-AES256-GCM-SHA384 [2] | TLS_AES_256_GCM_SHA384 | ||||
| AEAD-CHACHA20-POLY1305-SHA256 [3] | TLS_CHACHA20_POLY1305_SHA256 | ||||
| ECDHE-ECDSA-AES128-GCM-SHA256 | TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 | ||||
| ECDHE-RSA-AES128-GCM-SHA256 | TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 | ||||
| ECDHE-RSA-AES128-SHA | TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA | ||||
| AES128-GCM-SHA256 | TLS_RSA_WITH_AES_128_GCM_SHA256 | ||||
| AES128-SHA | TLS_RSA_WITH_AES_128_CBC_SHA | ||||
| ECDHE-ECDSA-AES256-GCM-SHA384 | TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 | ||||
| ECDHE-RSA-AES256-SHA384 | TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 | ||||
| AES256-SHA | TLS_RSA_WITH_AES_256_CBC_SHA | ||||
| DES-CBC3-SHA | TLS_RSA_WITH_3DES_EDE_CBC_SHA |
Gerenciando conjuntos de cifras por meio da CLI
Você pode gerenciar os pacotes de criptografia na CLI.
Obtendo os pacotes de criptografia da CLI
Para listar a variável cipher, execute o seguinte comando:
ibmcloud cis domain-settings DNS_DOMAIN_ID [-g, --group GROUP | -f, --feature FEATURE] [-i, --instance INSTANCE] [--output FORMAT]
Opções de comando
DNS_DOMAIN_ID- A ID do domínio DNS. Essa opção é necessária.
-f, --feature- Especifica o recurso de configuração de domínio a ser verificado. Essa opção é mutuamente exclusiva de -g, --group. Defina essa opção como a seguinte variável:
ciphers: Define uma lista de permissões de conjuntos de cifras TLS para terminação de borda TLS, usando o formato de cifraBoringSSL. Esse comando lista apenas os pacotes de cifras que os clientes permitiram explicitamente. Se nenhum pacote de criptografia estiver na lista de permissões, o comando retornará uma lista vazia e usará os pacotes de criptografia padrão. Para obter a lista de suítes de cifras padrão, consulte Suítes de cifras do Edge.
Exemplo
Obtenha configurações ciphers para o domínio 31984fea73a15b45779fa0df4ef62f9b.
ibmcloud cis domain-settings 31984fea73a15b45779fa0df4ef62f9b --feature "ciphers" --instance "cis-demo"
Para obter mais informações, consulte ibmcloud cis domain-settings.
Atualização dos pacotes de criptografia na CLI
Para atualizar a variável cipher, execute o seguinte comando:
ibmcloud cis domain-settings-update DNS_DOMAIN_ID (-f, --feature FEATURE) (-v, --value VALUE) [-i, --instance INSTANCE] [--output FORMAT]
Opções de comando
DNS_DOMAIN_ID-
A ID do domínio DNS. Essa opção é necessária.
-f, --feature-
Recurso de configurações de domínio a ser atualizado. Essa opção é necessária. O valor válido em
cipheré:cipherslista de permissões de cifras para a terminação TLS. Essas cifras devem estar no formatoBoringSSL.
-v, --value-
Especifica o valor a ser definido para o recurso no domínio. Essa opção é necessária.
- Os valores válidos para
tls_client_authsãooneoff. - Os valores válidos para cifras são:
ECDHE-ECDSA-AES128-GCM-SHA256ECDHE-ECDSA-CHACHA20-POLY1305ECDHE-RSA-AES128-GCM-SHA256ECDHE-RSA-CHACHA20-POLY1305ECDHE-ECDSA-AES128-SHA256ECDHE-ECDSA-AES128-SHAECDHE-RSA-AES128-SHA256ECDHE-RSA-AES128-SHAAES128-GCM-SHA256AES128-SHA256AES128-SHAECDHE-ECDSA-AES256-GCM-SHA384ECDHE-ECDSA-AES256-SHA384ECDHE-RSA-AES256-GCM-SHA384ECDHE-RSA-AES256-SHA384ECDHE-RSA-AES256-SHAAES256-GCM-SHA384AES256-SHA256AES256-SHADES-CBC3-SHAdefault
- Os valores válidos para
-
Por exemplo, use
-v defaultpara redefinir as suítes de cifras configuradas específicas, como-v AES256-SHA256,AES256-SHA, para o valor padrão.
Exemplo
Habilite tls_client_auth para o domínio 31984fea73a15b45779fa0df4ef62f9b.
ibmcloud cis domain-settings-update 31984fea73a15b45779fa0df4ef62f9b --feature tls_client_auth --value on --instance "cis-demo"
Para obter mais informações, consulte ibmcloud cis domain-settings-update.
Para reverter para a lista de cifras padrão, especifique -v default após -f ciphers.
Gerenciando conjuntos de cifras com a API
É possível gerenciar conjuntos de criptografia com a API.
Obtenção de cifras com a API
Para obter cifras com a API, execute as seguintes etapas.
- Configure seu ambiente com as variáveis corretas.
- Armazena todas as variáveis a serem usadas nos comandos da API. Por exemplo,
crn(string): O nome completo do recurso de nuvem (CRN) codificado em URL da instância do recurso.zone_identifier(sequência): o identificador da zona.
- Quando todas as variáveis forem iniciadas, obtenha as cifras:
curl -X GET https://api.cis.cloud.ibm.com/v1/:crn/zones/:zone_id/settings/ciphers -H 'content-type: application/json' -H 'accept: application/json' -H 'x-auth-user-token: Bearer xxxxxx'
Atualização de cifras com a API
Para atualizar cifras com a API, execute as seguintes etapas.
- Configure seu ambiente com as variáveis corretas.
- Armazena todas as variáveis a serem usadas nos comandos da API. Por exemplo,
crn(string): O nome completo do recurso de nuvem (CRN) codificado em URL da instância do recurso.zone_identifier(sequência): o identificador da zona.value(sequência): os conjuntos de criptografia que você deseja incluir.
- Quando todas as variáveis forem iniciadas, obtenha as cifras:
curl -X PATCH https://api.cis.cloud.ibm.com/v1/:crn/zones/:zone_id/settings/ciphers -H 'content-type: application/json' -H 'x-auth-user-token: Bearer xxxxxx' -d '{"value": ["AES256-GCM-SHA384", "AES256-SHA256"]}'
-
Embora TLS 1.3 use o mesmo espaço de suíte de cifras que as versões anteriores de TLS, TLS 1.3 as suítes de cifras são definidas de forma diferente, especificando apenas as cifras simétricas, e não podem ser usadas para TLS 1.2. Da mesma forma, TLS 1.2 e suítes de cifras inferiores não podem ser usadas com TLS 1.3 (IETF TLS 1.3 draft 21). BoringSSL também codifica as preferências de cifra nessa ordem para TLS 1.3. ↩︎
-
Embora TLS 1.3 use o mesmo espaço de suíte de cifras que as versões anteriores de TLS, TLS 1.3 as suítes de cifras são definidas de forma diferente, especificando apenas as cifras simétricas, e não podem ser usadas para TLS 1.2. Da mesma forma, TLS 1.2 e suítes de cifras inferiores não podem ser usadas com TLS 1.3 (IETF TLS 1.3 draft 21). BoringSSL também codifica as preferências de cifra nessa ordem para TLS 1.3. ↩︎
-
Embora TLS 1.3 use o mesmo espaço de suíte de cifras que as versões anteriores de TLS, TLS 1.3 as suítes de cifras são definidas de forma diferente, especificando apenas as cifras simétricas, e não podem ser usadas para TLS 1.2. Da mesma forma, TLS 1.2 e suítes de cifras inferiores não podem ser usadas com TLS 1.3 (IETF TLS 1.3 draft 21). BoringSSL também codifica as preferências de cifra nessa ordem para TLS 1.3. ↩︎