Atualização para vários algoritmos IKE e IPsec
VPN for VPC permite configurar vários algoritmos para políticas de IKE e IPsec. O uso de vários algoritmos pode melhorar a compatibilidade, a flexibilidade e a segurança.
Siga as instruções a seguir para migrar das propriedades de algoritmo únicas, que estão em desuso, para várias propriedades de algoritmo.
Antes de Iniciar
Analise as informações a seguir antes de atualizar suas políticas de VPN.
Propriedades preteridas do algoritmo singular
A partir de 29 de maio de 2026, as propriedades do algoritmo singular VPN IKE e IPsec serão descontinuadas. As conexões VPN existentes, configuradas com propriedades específicas, continuam funcionando sem alterações. No entanto, recomenda-se atualizar para as propriedades do algoritmo baseado em matriz o mais rápido possível.
| Propriedade singular do IKE (obsoleta) | IKE com várias propriedades (recomendado) |
|---|---|
authentication_algorithm |
authentication_algorithms |
encryption_algorithm |
encryption_algorithms |
dh_group |
dh_groups |
| Propriedade IPsec singular (obsoleta) | Várias propriedades do IPsec (recomendado) |
|---|---|
authentication_algorithm |
authentication_algorithms |
encryption_algorithm |
encryption_algorithms |
pfs |
pfs_groups |
Utilize vários algoritmos quando seu ambiente de VPN exigir compatibilidade com nós que suportem diferentes algoritmos criptográficos ou quando você quiser priorizar uma criptografia mais forte, mantendo a compatibilidade com versões anteriores.
Considerações importantes
- As conexões VPN que utilizam políticas personalizadas de IKE ou IPsec com propriedades de algoritmos específicos que foram descontinuadas podem apresentar falhas na negociação ou problemas de interoperabilidade.
- Novas políticas de IKE e IPsec só podem ser criadas utilizando propriedades de algoritmos baseadas em matriz.
- Quando você atualiza uma política IKE ou IPsec existente, ela pode desconectar temporariamente o túnel VPN enquanto a conexão é restabelecida.
- Se seus procedimentos de recuperação de desastres, automação, scripts, integrações de API ou fluxos de trabalho da CLI fizerem referência a propriedades singulares obsoletas, atualize-os adequadamente.
- Analise suas políticas atuais de IKE e IPsec para identificar os algoritmos em uso.
- Verifique se o gateway de VPN paritário é compatível com os algoritmos que você planeja configurar em IBM Cloud.
- Configure os algoritmos de correspondência no gateway de VPN par para negociação IKE e IPsec antes de atualizar o gateway IBM Cloud VPN.
- Planeje atualizações de políticas durante uma janela de manutenção para minimizar a interrupção do serviço.
Compreensão do comportamento de atualização na API
A API sincroniza automaticamente as propriedades de algoritmos singulares e baseados em matriz. Analise o comportamento e as restrições a seguir antes de atualizar suas políticas.
- Compatibilidade de versão IKE
- As propriedades de algoritmos baseados em matrizes são compatíveis apenas com IKEv2. Se você usar o IKEv1, deverá configurar um único algoritmo para cada categoria utilizando propriedades singulares.
- Use IKEv2 com propriedades baseadas em matriz:
{
"ike_version": 2,
"authentication_algorithms": ["sha512", "sha256"],
"encryption_algorithms": ["aes256", "aes128"]
}
- Use “ IKEv1 ” com propriedades no singular:
{
"ike_version": 1,
"authentication_algorithm": "sha256",
"encryption_algorithm": "aes128"
}
IKEv1 suporta apenas um algoritmo por categoria. As conexões VPN que usam IKEv1 não são compatíveis com propriedades de algoritmo IPsec ou IKE baseadas em matriz. Use o site IKEv2 sempre que possível.
- Sincronização automática
- Quando você atualiza as propriedades baseadas em matriz (
authentication_algorithms,encryption_algorithms,dh_groups,pfs_groups), as propriedades singulares correspondentes (authentication_algorithm,encryption_algorithm,dh_group,pfs) são atualizadas automaticamente. Da mesma forma, a atualização de propriedades singulares atualiza automaticamente as propriedades relacionadas baseadas em matriz. Para obter exemplos, consulte:
- Indicadores somente leitura
- Quando vários algoritmos estão configurados, as propriedades singulares (
authentication_algorithm,encryption_algorithm) retornam valores de indicadores somente para leitura nas respostas da API. Por exemplo:
authentication_algorithmretorna"multiple"encryption_algorithmretorna"multiple"dh_groupretorna65535
Esses valores são retornados somente nas respostas e não podem ser enviados em uma solicitação PATCH.
{
"authentication_algorithms": ["sha256", "sha384", "sha512"],
"authentication_algorithm": "multiple",
"dh_groups": [14, 15, 16],
"dh_group": 65535,
"encryption_algorithms": ["aes128", "aes256"],
"encryption_algorithm": "multiple"
}
Se apenas um algoritmo estiver configurado em uma propriedade baseada em matriz, a propriedade singular retorna o valor configurado, em vez de "multiple"``.
{
"authentication_algorithms": ["sha256"],
"authentication_algorithm": "sha256",
"dh_groups": [14],
"dh_group": 14,
"encryption_algorithms": ["aes128"],
"encryption_algorithm": "aes128"
}
- Restrição de mistura de propriedades
- Não misture propriedades singulares e baseadas em matriz para a mesma categoria de algoritmo em uma única solicitação. Escolha uma abordagem por solicitação.
- Exemplo correto: Esse exemplo inclui as propriedades do algoritmo para IKE, em que somente as propriedades baseadas em matriz são usadas para todas as categorias:
curl -X PATCH "$vpc_api_endpoint/v1/ike_policies/$ike_policy_id?version=$api_version&generation=2" \
-H "Authorization: $iam_token" \
-d '{
"authentication_algorithms": ["sha256", "sha384", "sha512"],
"dh_groups": [14, 15, 16],
"encryption_algorithms": ["aes128", "aes256"]
}'
- Exemplo incorreto: Este exemplo inclui as propriedades do algoritmo para IKE, em que as propriedades singulares e baseadas em matriz são misturadas para a mesma categoria:
curl -X PATCH "$vpc_api_endpoint/v1/ike_policies/$ike_policy_id?version=$api_version&generation=2" \
-H "Authorization: $iam_token" \
-d '{
"authentication_algorithm": "sha512",
"authentication_algorithms": ["sha256", "sha384", "sha512"],
"dh_groups": [14, 15, 16],
"encryption_algorithms": ["aes128", "aes256"]
}'
- GCM Requisitos e restrições do algoritmo
- Se a propriedade
encryption_algorithmscontiver algoritmos baseados em GCM (aes128gcm16,aes192gcm16, ouaes256gcm16), a propriedadeauthentication_algorithmsdeverá ser definida como["disabled"].
- Exemplo correto: Exibe as propriedades do algoritmo IPsec quando a matriz “
encryption_algorithms” inclui algoritmos baseados em “ GCM ”:
curl -X PATCH "$vpc_api_endpoint/v1/ipsec_policies/$ipsec_policy_id?version=$api_version&generation=2" \
-H "Authorization: $iam_token" \
-d '{
"authentication_algorithms": ["disabled"],
"encryption_algorithms": ["aes256gcm16", "aes192gcm16"],
"pfs_groups": ["group_14", "group_15", "group_16"]
}'
- Exemplo incorreto: Mostra as propriedades do algoritmo para o IPsec, em que a matriz “
encryption_algorithms” inclui algoritmos baseados em “ GCM ”:
curl -X PATCH "$vpc_api_endpoint/v1/ipsec_policies/$ipsec_policy_id?version=$api_version&generation=2" \
-H "Authorization: $iam_token" \
-d '{
"authentication_algorithms": ["sha256"],
"encryption_algorithms": ["aes256gcm16", "aes192gcm16"],
"pfs_groups": ["group_14", "group_15", "group_16"]
}'
GCM fornecem criptografia e autenticação incorporada como parte de uma única operação. Não configure algoritmos de autenticação separados, como sha256 ou sha512 com algoritmos de criptografia GCM.
Não misture algoritmos de criptograf GCM es e não GCM es na mesma política. Misturá-los pode causar conflitos de configuração e falhas na negociação.
: Quando a variável authentication_algorithms estiver definida como ["disabled"]``, você também deverá atualizar a variável authentication_algorithms ao mudar
de algoritmos de criptografia GCM para algoritmos que não sejam GCM.
- Exemplo correto: Atualiza as propriedades
encryption_algorithmseauthentication_algorithms:
curl -X PATCH "$vpc_api_endpoint/v1/ipsec_policies/$ipsec_policy_id?version=$api_version&generation=2" \
-H "Authorization: $iam_token" \
-d '{
"authentication_algorithms": ["sha512", "sha256"],
"encryption_algorithms": ["aes256", "aes128"],
"pfs_groups": ["group_14", "group_15", "group_16"]
}'
- Exemplo incorreto: Mostra um caso em que apenas a propriedade
encryption_algorithmsé atualizada com algoritmos que não são GCM (aes128,aes192,aes256):
curl -X PATCH "$vpc_api_endpoint/v1/ipsec_policies/$ipsec_policy_id?version=$api_version&generation=2" \
-H "Authorization: $iam_token" \
-d '{
"authentication_algorithms": ["disabled"],
"encryption_algorithms": ["aes256", "aes128"],
"pfs_groups": ["group_14", "group_15", "group_16"]
}'
- Regras de validação do algoritmo
- Certifique-se de que todos os valores de algoritmo em sua solicitação sejam válidos, exclusivos e não vazios. Use apenas nomes de algoritmos compatíveis, evite duplicatas e forneça pelo menos um valor em cada matriz. Entradas inválidas, duplicadas ou vazias podem resultar em um erro de validação.
- Exemplo correto: Atualiza os valores do algoritmo, onde os algoritmos e valores suportados são usados para todas as categorias:
{
"authentication_algorithms": ["sha512", "sha256"],
"dh_groups": [14, 15],
"encryption_algorithms": ["aes256", "aes192", "aes128"]
}
- Exemplo incorreto: Atualiza os valores do algoritmo, onde valores duplicados são usados na mesma categoria de algoritmo:
{
"authentication_algorithms": ["sha512", "sha256"],
"dh_groups": [14, 15],
"encryption_algorithms": ["aes256", "aes256", "aes128"]
}
Atualização de políticas IKE com a API
Siga estas etapas para atualizar suas políticas IKE, passando de um único algoritmo para vários algoritmos.
Antes de começar, certifique-se de configurar seu ambiente de API.
Para atualizar uma política IKE por meio da API, siga estas etapas:
-
Armazene o ID da política IKE em uma variável, por exemplo:
export ike_policy_id=<your_ike_policy_id>Para localizar o ID da política IKE, use o comando list IKE policies.
-
Atualize a política IKE para usar vários algoritmos. Substitua as propriedades singulares pelas propriedades baseadas em matriz correspondentes.
authentication_algorithms- Conjunto de algoritmos de autenticação. Opções:sha256,sha384,sha512.dh_groups- Matriz de grupos de Diffie-Hellman. Opções:14,15,16,17,18,19,20,21,22,23,24,31.encryption_algorithms- Conjunto de algoritmos de criptografia. Opções:aes128,aes192,aes256.curl -X PATCH "$vpc_api_endpoint/v1/ike_policies/$ike_policy_id?version=$api_version&generation=2" \ -H "Authorization: $iam_token" \ -d '{ "authentication_algorithms": ["sha256", "sha384", "sha512"], "dh_groups": [14, 15, 16], "encryption_algorithms": ["aes128", "aes256"] }'
Exemplos de atualização de política IKE
Quando você atualiza as propriedades baseadas em matriz encryption_algorithms, authentication_algorithms e dh_groups na política IKE, as propriedades singulares correspondentes encryption_algorithm,
authentication_algorithm e dh_group são atualizadas automaticamente. Da mesma forma, quando você atualiza qualquer uma das propriedades singulares, as propriedades baseadas em matriz associadas também são atualizadas
automaticamente.
O exemplo a seguir mostra como as solicitações do PATCH afetam as propriedades singulares e de matriz:
Exemplo 1: Algoritmos únicos para múltiplos
-
Este exemplo mostra o comportamento de aplicação de patches de um único algoritmo para vários algoritmos. O estado atual mostra a propriedade de valor único
encryption_algorithmdefinida comoaes128, e a propriedade baseada em matrizencryption_algorithmstambém contendo apenasaes128.{ "authentication_algorithm": "sha256", "authentication_algorithms": [ "sha256" ], "created_at": "2025-03-09T01:40:25.782663Z", "dh_group": 14, "dh_groups": [ 14 ], "encryption_algorithm": "aes128", "encryption_algorithms": [ "aes128" ], "id": "r006-e98f46a3-1e4e-4195-b4e5-b8155192689d", "ike_version": 2, "key_lifetime": 28800, "name": "my-ike-policy", "negotiation_mode": "main", "resource_group": { "id": "fee82deba12e4c0fb69c3b09d1f12345", "name": "Default" }, "resource_type": "ike_policy" } -
Na solicitação
PATCH, a propriedade baseada em matrizencryption_algorithmsé atualizada para que agora especifique tantoaes128quantoaes256.{ "encryption_algorithms": [ "aes128", "aes256" ] } -
Uma resposta bem-sucedida se parece com o exemplo a seguir. Nesta resposta, a propriedade singular
encryption_algorithmretorna um valor somente leitura"multiple", indicando que vários algoritmos estão agora configurados. Este campo não pode ser modificado diretamente por meio de uma solicitação do tipo “PATCH”. A propriedade baseada em matrizencryption_algorithmsfoi atualizada para incluir tantoaes128quantoaes256``.{ "authentication_algorithm": "sha256", "authentication_algorithms": [ "sha256" ], "created_at": "2025-03-09T01:40:25.782663Z", "dh_group": 14, "dh_groups": [ 14 ], "encryption_algorithm": "multiple", "encryption_algorithms": [ "aes128", "aes256" ], "id": "r006-e98f46a3-1e4e-4195-b4e5-b8155192689d", "ike_version": 2, "key_lifetime": 28800, "name": "my-ike-policy", "negotiation_mode": "main", "resource_group": { "id": "fee82deba12e4c0fb69c3b09d1f12345", "name": "Default" }, "resource_type": "ike_policy" }
Exemplo 2: Vários algoritmos para um único
-
Este exemplo mostra o comportamento de aplicação de patches de vários algoritmos para um único. O estado atual mostra que a propriedade de valor único
encryption_algorithmestá definida como"multiple", e que a propriedade baseada em matrizencryption_algorithmscontémaes128eaes256.{ "authentication_algorithm": "sha256", "authentication_algorithms": [ "sha256" ], "created_at": "2025-03-09T01:40:25.782663Z", "dh_group": 14, "dh_groups": [ 14 ], "encryption_algorithm": "multiple", "encryption_algorithms": [ "aes128", "aes256" ], "id": "r006-e98f46a3-1e4e-4195-b4e5-b8155192689d", "ike_version": 2, "key_lifetime": 28800, "name": "my-ike-policy", "negotiation_mode": "main", "resource_group": { "id": "fee82deba12e4c0fb69c3b09d1f12345", "name": "Default" }, "resource_type": "ike_policy" } -
Na solicitação
PATCH, a propriedade baseada em matrizencryption_algorithmsé atualizada para que agora especifique apenasaes256.{ "encryption_algorithms": [ "aes256" ] } -
Uma resposta bem-sucedida se parece com o exemplo a seguir. Nessa resposta, a propriedade de valor único
encryption_algorithmé definida automaticamente comoaes256, indicando que apenas um único algoritmo está configurado. A propriedade baseada em matriz ` `encryption_algorithms` ` foi atualizada para incluir ` `aes256.{ "authentication_algorithm": "sha256", "authentication_algorithms": [ "sha256" ], "created_at": "2025-03-09T01:40:25.782663Z", "dh_group": 14, "dh_groups": [ 14 ], "encryption_algorithm": "aes256", "encryption_algorithms": [ "aes256" ], "id": "r006-e98f46a3-1e4e-4195-b4e5-b8155192689d", "ike_version": 2, "key_lifetime": 28800, "name": "my-ike-policy", "negotiation_mode": "main", "resource_group": { "id": "fee82deba12e4c0fb69c3b09d1f12345", "name": "Default" }, "resource_type": "ike_policy" }
Atualização de políticas IPsec com a API
Siga estas etapas para atualizar suas políticas IPsec de propriedades de algoritmo singulares para propriedades de algoritmo baseadas em matriz.
Antes de começar, certifique-se de configurar seu ambiente de API.
Para atualizar uma política IPsec por meio da API, siga estas etapas:
-
Armazene o ID da política IPsec em uma variável, por exemplo:
export ipsec_policy_id=<your_ipsec_policy_id>Para localizar o ID da política IPsec, use o comando list IPsec policies.
-
Atualize a política IPsec para usar vários algoritmos. Substitua as propriedades singulares pelas propriedades baseadas em matriz correspondentes.
authentication_algorithms- Conjunto de algoritmos de autenticação. Opções:sha256,sha384,sha512,disabled.encryption_algorithms- Conjunto de algoritmos de criptografia. Opções:aes128,aes192,aes256,aes128gcm16,aes192gcm16,aes256gcm16.pfs_groups- Matriz de grupos de Perfect Forward Secrecy. Opções:disabled,group_14,group_15,group_16,group_17,group_18,group_19,group_20,group_21,group_22,group_23,group_24,group_31.curl -X PATCH "$vpc_api_endpoint/v1/ipsec_policies/$ipsec_policy_id?version=$api_version&generation=2" \ -H "Authorization: $iam_token" \ -d '{ "authentication_algorithms": ["sha256", "sha384", "sha512"], "encryption_algorithms": ["aes128", "aes256"], "pfs_groups": ["group_14", "group_15", "group_16"] }'
Exemplos de atualização de política IPsec
Quando você atualiza as propriedades baseadas em matriz encryption_algorithms, authentication_algorithms e pfs_groups em uma política IPsec, as propriedades de valor único correspondentes encryption_algorithm,
authentication_algorithm e pfs são atualizadas automaticamente. Da mesma forma, quando você atualiza qualquer uma das propriedades de valor único, as propriedades baseadas em matriz associadas também são atualizadas
automaticamente.
O exemplo a seguir mostra como as solicitações do PATCH afetam as propriedades singulares e de matriz:
Exemplo 1: Algoritmos únicos para múltiplos
-
Este exemplo mostra o comportamento de aplicação de patches de um único algoritmo para vários algoritmos. O estado atual mostra a propriedade de valor único
encryption_algorithmdefinida comoaes128, e a propriedade baseada em matrizencryption_algorithmstambém contendo apenasaes128.{ "authentication_algorithm": "sha256", "authentication_algorithms": [ "sha256" ], "connections": [], "created_at": "2025-03-09T01:46:00.785105Z", "encapsulation_mode": "tunnel", "encryption_algorithm": "aes128", "encryption_algorithms": [ "aes128" ], "id": "r006-51eae621-dbbc-4c47-b623-b57a43c19876", "key_lifetime": 3600, "name": "my-ipsec-policy", "pfs": "group_14", "pfs_groups": [ "group_14" ], "resource_group": { "id": "fee82deba12e4c0fb69c3b09d1f12345", "name": "Default" }, "resource_type": "ipsec_policy", "transform_protocol": "esp" } -
Na solicitação
PATCH, a propriedade baseada em matrizencryption_algorithmsé atualizada para que agora especifique tantoaes128quantoaes256.{ "encryption_algorithms": [ "aes128", "aes256" ] } -
Uma resposta bem-sucedida se parece com o exemplo a seguir. Nessa resposta, a propriedade de valor único
encryption_algorithmé automaticamente definida com o valor somente leitura"multiple", indicando que agora há vários algoritmos configurados. Este campo não pode ser modificado diretamente por meio de uma solicitação do tipo “PATCH”. A propriedade baseada em matrizencryption_algorithmsagora inclui tantoaes128quantoaes256``.{ "authentication_algorithm": "sha256", "authentication_algorithms": [ "sha256" ], "connections": [], "created_at": "2025-03-09T01:46:00.785105Z", "encapsulation_mode": "tunnel", "encryption_algorithm": "multiple", "encryption_algorithms": [ "aes128", "aes256" ], "id": "r006-51eae621-dbbc-4c47-b623-b57a43c19876", "key_lifetime": 3600, "name": "my-ipsec-policy", "pfs": "group_14", "pfs_groups": [ "group_14" ], "resource_group": { "id": "fee82deba12e4c0fb69c3b09d1f12345", "name": "Default" }, "resource_type": "ipsec_policy", "transform_protocol": "esp" }
Exemplo 2: Vários algoritmos para um único
-
Este exemplo mostra o comportamento de aplicação de patches de vários algoritmos para um único. O estado atual mostra que a propriedade de valor único
encryption_algorithmestá definida como"multiple", e que a propriedade baseada em matrizencryption_algorithmscontémaes128eaes256.{ "authentication_algorithm": "sha256", "authentication_algorithms": [ "sha256" ], "connections": [], "created_at": "2025-03-09T01:46:00.785105Z", "encapsulation_mode": "tunnel", "encryption_algorithm": "multiple", "encryption_algorithms": [ "aes128", "aes256" ], "id": "r006-51eae621-dbbc-4c47-b623-b57a43c19876", "key_lifetime": 3600, "name": "my-ipsec-policy", "pfs": "group_14", "pfs_groups": [ "group_14" ], "resource_group": { "id": "fee82deba12e4c0fb69c3b09d1f12345", "name": "Default" }, "resource_type": "ipsec_policy", "transform_protocol": "esp" } -
Na solicitação
PATCH, a propriedade baseada em matrizencryption_algorithmsé atualizada para que agora especifique apenasaes256.{ "encryption_algorithms": [ "aes256" ] } -
Uma resposta bem-sucedida se parece com o exemplo a seguir. Nessa resposta, a propriedade de valor único
encryption_algorithmé definida automaticamente comoaes256, indicando que apenas um único algoritmo está configurado. A propriedade baseada em matriz ` `encryption_algorithms` ` foi atualizada para incluir ` `aes256.{ "authentication_algorithm": "sha256", "authentication_algorithms": [ "sha256" ], "connections": [], "created_at": "2025-03-09T01:46:00.785105Z", "encapsulation_mode": "tunnel", "encryption_algorithm": "aes256", "encryption_algorithms": [ "aes256" ], "id": "r006-51eae621-dbbc-4c47-b623-b57a43c19876", "key_lifetime": 3600, "name": "my-ipsec-policy", "pfs": "group_14", "pfs_groups": [ "group_14" ], "resource_group": { "id": "fee82deba12e4c0fb69c3b09d1f12345", "name": "Default" }, "resource_type": "ipsec_policy", "transform_protocol": "esp" }