Criando uma política de IPsec
É possível usar políticas IPsec personalizadas para definir os parâmetros de segurança utilizados durante a Fase 2 da negociação. Nessa fase, a VPN e o dispositivo de peer usam a associação de segurança que é estabelecida durante a Fase 1 para negociar qual tráfego enviar e como autenticar e criptografar esse tráfego.
Para garantir a seleção consistente de algoritmos, faça a correspondência exata entre os algoritmos IKE e IPsec e sua ordem de prioridade no gateway IBM Cloud VPN e no gateway par. Para obter mais informações sobre os fatores que afetam a seleção do algoritmo, consulte Como os algoritmos de criptografia são escolhidos para IKE e IPsec em uma conexão VPN site a site?
Criação de uma política IPsec no console
Para criar uma política IPsec no console, siga estas etapas:
-
Na página da lista de VPNs para VPC, selecione Gateways site a site > Políticas de IPsec.
-
Clique em “Criar” e forneça as seguintes informações:
- Localização- Selecione uma região para esta política de IPsec.
- Nome - Insira um nome para a política de IPsec.
- Grupo de recursos - Selecione o grupo de recursos para esta política do IPsec.
- Encryption (Criptografia )- Selecione o algoritmo de criptografia a ser usado na Fase 2. Por padrão, é selecionado o algoritmo de menor intensidade. Você pode selecionar vários valores para cada campo e reordená-los por prioridade. O gateway VPN negocia com o gateway par para selecionar o melhor algoritmo com suporte mútuo.
- Authentication (Autenticação )- Selecione o algoritmo de autenticação a ser usado na Fase 2. Por padrão, é selecionado o algoritmo de menor intensidade. Você pode selecionar vários algoritmos de autenticação e reordená-los por prioridade.
- Perfect Forward Secrecy- Ative essa opção para realizar uma nova troca de Diffie-Hellman durante cada rechaveamento da Fase 2, de modo que, se uma chave for comprometida, o tráfego criptografado anteriormente permanecerá seguro.
- Grupo Diffie-Hellman (se o PFS estiver ativado) — Selecione o grupo DH a ser usado para a troca de chaves da Fase 2. Por padrão, o grupo DH mais baixo é selecionado. Você pode selecionar vários grupos de DH e reordená-los por prioridade.
- Tempo de vida da chave- Selecione o tempo de vida, em segundos, para o túnel da Fase 2.
-
Clique em Criar.
-
Na página Detalhes da conexão VPN, configure o campo Políticas de IPsec para usar a política de IPsec desejada.
Para garantir o sucesso da negociação IKE/IPsec, configure os dois pares com pelo menos um algoritmo correspondente em cada categoria (autenticação, criptografia e grupos PF). O alinhamento dessas configurações entre pares ajuda a evitar falhas de conexão.
Criação de uma política IPsec pela CLI
Antes de iniciar, configure o seu ambiente da CLI.
Para criar uma política IPsec pela CLI, digite o seguinte comando:
ibmcloud is ipsec-policy-create IPSEC_POLICY_NAME AUTHENTICATION_ALGORITHMS ENCRYPTION_ALGORITHMS PFSGS [--key-lifetime KEY_LIFETIME] [--resource-group-id RESOURCE_GROUP_ID | --resource-group-name RESOURCE_GROUP_NAME] [--output JSON] [-q, --quiet]
Em que:
- IPSEC_POLICY_NAME- O nome da política IPsec.
- AUTHENTICATION_ALGORITHMS- Os algoritmos de autenticação. Deve ser desativado somente se ENCRYPTION_ALGORITHMS contiver algoritmos de modo combinado (
aes128gcm16,aes192gcm16,aes256gcm16). Um de:disabled,sha256,sha384,sha512, ou uma lista de algoritmos de autenticação separados por vírgula (sha384,sha256,sha512). A ordem dos algoritmos determina sua prioridade durante a negociação. - ENCRYPTION_ALGORITHMS- Os algoritmos de criptografia. Um de:
aes128,aes128gcm16,aes192,aes192gcm16,aes256,aes256gcm16, ou uma lista de algoritmos de criptografia separados por vírgula (aes128,aes192,aes256). A ordem dos algoritmos determina sua prioridade durante a negociação. - PFSGS – Grupos de Sigilo Perfeito para Transmissão. Um de:
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, ou uma lista de grupos PFS separados por vírgula (group_14,group_15,group_16). A ordem dos grupos determina sua prioridade durante a negociação. - --key-lifetime value - o tempo de vida da chave em segundos. Máximo:
86400, mínimo:1800. O valor padrão é3600. - --resource-group-id valor- O ID do grupo de recursos. Essa opção é mutuamente exclusiva com --resource-group-name.
- --resource-group-name valor- O nome do grupo de recursos. Essa opção é mutuamente exclusiva com --resource-group-id.
- --output value - especifica a saída no formato JSON.
- -q, --quiet - Suprimir saída detalhada.
md5 e os algoritmos de autenticação sha1, os grupos DH group_2 e group_5 e o algoritmo de criptografia triple_des foram descontinuados em 20 de setembro de 2022 e não têm mais
suporte no console.
O número de AUTHENTICATION_ALGORITHMS deve ser disabled se, e somente se, ENCRYPTION_ALGORITHMS for aes128gcm16, aes192gcm16 ou aes256gcm16.
Atualização de uma política IPsec na CLI
Antes de iniciar, configure o seu ambiente da CLI.
Para atualizar uma política IPsec pela CLI, digite o seguinte comando:
ibmcloud is ipsec-policy-update IPSEC_POLICY [--name NEW_NAME] [--authentication-algorithms AUTHENTICATION_ALGORITHMS] [--pfsgs PFSGS] [--encryption-algorithms ENCRYPTION_ALGORITHMS] [--authentication-algorithm AUTHENTICATION_ALGORITHM] [--pfs 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] [--encryption-algorithm aes128 | aes128gcm16 | aes192 | aes192gcm16 | aes256 | aes256gcm16] [--key-lifetime KEY_LIFETIME] [--output JSON] [-q, --quiet]
Em que:
-
--name- O nome da política IPsec.
-
--authentication-algorithms- Uma lista separada por vírgulas de algoritmos de autenticação (recomendado). A ordem dos algoritmos determina sua prioridade durante a negociação.
-
--authentication-algorithm- O algoritmo de autenticação (obsoleto). Deve ser desativado apenas se --encryption_algorithm for
aes128gcm16,aes192gcm16ouaes256gcm16. Um de:disabled,sha256,sha384,sha512 -
--encryption-algorithms- Uma lista separada por vírgulas de algoritmos de criptografia (recomendado). A ordem dos algoritmos determina sua prioridade durante a negociação.
-
--encryption-algorithm- O algoritmo de criptografia (obsoleto). Uma de:
aes128,aes128gcm16,aes192,aes192gcm16,aes256,aes256gcm16. -
--pfsgs- Uma lista separada por vírgulas de grupos de Perfect Forward Secrecy. A ordem dos grupos determina sua prioridade durante a negociação.
-
--pfs- O grupo Perfect Forward Secrecy (obsoleto). Uma de: 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.Não misture propriedades singulares e baseadas em matriz para a mesma categoria de algoritmo em um único comando.
Exemplos de comando
Os valores singulares para authentication algorithms, pfsgs e encryption algorithms, para criar a política IPsec a partir da CLI, estão obsoletos. Em vez disso, use vários valores separados por vírgula.
-
Crie uma política IPsec usando algoritmos de autenticação separados por vírgula (SHA 512 e SHA 256), algoritmos de criptografia (AES 256, AES 192 e AES 128) e grupos de sigilo de encaminhamento perfeito ( group_14 e group_15 ):
ibmcloud is ipsec-policy-create my-ipsec-policy sha512,sha256 aes256,aes192,aes128 group_14,group_15 -
Crie uma política IPsec usando um único algoritmo de autenticação (SHA 256), um único algoritmo de criptografia (AES 128) e o DH Group 14:
ibmcloud is ipsec-policy-create my-ipsec-policy sha256 aes128 group_14 -
Criar uma política de IPsec com os mesmos parâmetros e um tempo de vida de 3600 segundos:
ibmcloud is ipsec-policy-create my-ipsec-policy sha256 aes128 group_14 --key-lifetime 3600 -
Criar uma política de IPsec com os mesmos parâmetros e um ID do grupo de recursos:
ibmcloud is ipsec-policy-create my-ipsec-policy sha256 aes128 group_14 --resource-group-id fee82deba12e4c0fb69c3b09d1f12345 --output JSON -
Atualize uma política IPsec para alterar o nome, os algoritmos de autenticação para SHA 512 e SHA 256, os algoritmos de criptografia para AES 256, AES 192 e os grupos de perfect forward secrecy para group_15 e group_16:
ibmcloud is ipsec-policy-update my-ipsec-policy --name new-ipsec-policy --authentication-algorithms sha512,sha256 --encryption-algorithms aes256,aes192 --pfsgs group_15,group_16 --output JSON -
Atualize a política IPsec com a criptografia GCM (autenticação desativada):
ibmcloud is ipsec-policy-update $ipsec_policy \ --authentication-algorithms disabled \ --encryption-algorithms aes128gcm16,aes256gcm16O
authentication_algorithmsdeve ser definido comodisabledse e somente se a listaencryption_algorithmscontiver algum algoritmo baseado em GCM (aes128gcm16,aes192gcm16ouaes256gcm16). GCM fornecem criptografia e integridade de dados incorporada (autenticação) como parte de uma única operação; portanto, não é necessário especificar um algoritmo de autenticação separado (comosha256ousha512).
Criação de uma política IPsec por meio da API
As propriedades singulares authentication_algorithm, dh_group, encryption_algorithm e pfs para negociação IPsec estão obsoletas. Use as propriedades baseadas em matriz para criar a política
IPsec. Para saber mais sobre as propriedades do algoritmo singular e baseado em matriz para a política IPsec ao usar a API, consulte Atualização para vários algoritmos IKE e IPsec.
Para criar uma política IPsec com vários algoritmos usando as propriedades baseadas em matriz (recomendado), siga estas etapas:
-
Configure o seu Ambiente de API com as variáveis direitas.
-
Armazene qualquer variável adicional a ser usada nos comandos da API, por exemplo:
ResourceGroupId - Localize o ID do grupo de recursos usando o comando get resource groups e, em seguida, preencha a variável:
export ResourceGroupId=<your_resourcegroup_id>
-
Crie a política IPsec:
curl -X POST "$vpc_api_endpoint/v1/ipsec_policies?version=$api_version&generation=2" \ -H "Authorization: Bearer $iam_token" \ -d '{ "name": "my-new-ipsec-policy", "authentication_algorithms": ["sha256", "sha512"], "encryption_algorithms": ["aes128", "aes256"], "pfs_groups": ["group_14", "group_15", "group_16", "group_17", "group_18"], "resource_group": { "id": "'$ResourceGroupId'" } }'
Crie uma política IPsec com encryption_algorithms definido como GCM-based algorithms e authentication_algorithms definido como disabled:
curl -X POST "$vpc_api_endpoint/v1/ipsec_policies?version=$api_version&generation=2" \
-H "Authorization: Bearer $iam_token" \
-d '{
"name": "gcm-ipsec-policy",
"encryption_algorithms": ["aes128gcm16","aes192gcm16","aes256gcm16"],
"authentication_algorithms": ["disabled"],
"pfs_groups": ["group_14","group_15","group_16","group_17","group_18"],
"resource_group": {
"id": "'$ResourceGroupId'"
}
}'
A propriedade authentication_algorithms deve ser definida como disabled se e somente se a lista encryption_algorithms contiver algum algoritmo baseado em GCM (aes128gcm16, aes192gcm16 ou aes256gcm16). GCM fornecem criptografia e integridade de dados incorporada (autenticação) como parte de uma única operação; portanto, não é necessário especificar um algoritmo de autenticação separado (como sha256 ou sha512).
Para criar uma política IPsec com a API usando propriedades singulares (obsoletas), siga estas etapas:
-
Configure o seu Ambiente de API com as variáveis direitas.
-
Armazene qualquer variável adicional a ser usada nos comandos da API, por exemplo:
ResourceGroupId - Localize o ID do grupo de recursos usando o comando get resource groups e, em seguida, preencha a variável:
export ResourceGroupId=<your_resourcegroup_id>
- Crie a política IPsec:
curl -X POST "$vpc_api_endpoint/v1/ipsec_policies?version=$api_version&generation=2" \
-H "Authorization: Bearer $iam_token" \
-d '{
"name": "my-new-ipsec-policy",
"authentication_algorithm": "sha256",
"encryption_algorithm": "aes128",
"pfs": "group_14",
"resource_group": {
"id": "'$ResourceGroupId'"
}
}'
Atualização de uma política IPsec com a API
Para atualizar uma política IPsec com a API usando as propriedades baseadas em matriz (recomendado), siga estas etapas:
-
Configure o seu Ambiente de API com as variáveis direitas.
-
Armazene qualquer variável adicional a ser usada nos comandos da API, por exemplo:
ResourceGroupId - Localize o ID do grupo de recursos usando o comando get resource groups e, em seguida, preencha a variável:
export ResourceGroupId=<your_resourcegroup_id>
- Atualizar a política IPsec:
curl -X PATCH "$vpc_api_endpoint/v1/ipsec_policies/$ipsec_policy_id?version=$api_version&generation=2" \
-H "Authorization: Bearer $iam_token" \
-d '{
"name": "my-updated-ipsec-policy",
"authentication_algorithms": ["sha512", "sha384", "sha256"],
"encryption_algorithms": ["aes256", "aes128"],
"pfs_groups": ["group_18", "group_17", "group_16", "group_15", "group_14"],
}'
Para atualizar uma política IPsec com a API usando propriedades singulares (obsoletas), siga estas etapas:
Você pode atualizar as políticas IPsec usando propriedades singulares obsoletas ou propriedades baseadas em matriz. Ambas as formas são aceitas, mas você não deve misturar propriedades singulares e baseadas em matriz para a mesma categoria de algoritmo em uma única solicitação.
-
Configure o seu Ambiente de API com as variáveis direitas.
-
Armazene qualquer variável adicional a ser usada nos comandos da API, por exemplo:
ResourceGroupId - Localize o ID do grupo de recursos usando o comando get resource groups e, em seguida, preencha a variável:
export ResourceGroupId=<your_resourcegroup_id>
- Atualizar a política IPsec:
curl -X PATCH "$vpc_api_endpoint/v1/ipsec_policies/$ipsec_policy_id?version=$api_version&generation=2" \
-H "Authorization: Bearer $iam_token" \
-d '{
"name": "my-updated-ipsec-policy",
"authentication_algorithm": "sha512",
"encryption_algorithm": "aes256",
"pfs": "group_18",
}'
Para ver o conjunto completo de APIs para gateways de VPN site a site, consulte a referência da API VPC.
Criando uma política IPsec usando o Terraform
No exemplo a seguir, é possível criar uma política IPsec usando o Terraform:
resource "ibm_is_ipsec_policy" "is_ipsec_policy" {
name = "my-ipsec-policy"
authentication_algorithm = "sha256"
encryption_algorithm = "aes128"
pfs = "group_14"
}
- No exemplo a seguir, é possível criar uma política IPsec com propriedades baseadas em matriz (recomendado) usando o Terraform:
resource "ibm_is_ipsec_policy" "is_ipsec_policy" {
name = "my-ipsec-policy"
authentication_algorithms = ["sha512", "sha384"]
encryption_algorithms = ["aes128", "aes192"]
pfs_groups = ["group_14", "group_15"]
}
- No exemplo a seguir, é possível criar uma política IPsec com propriedades individuais (obsoleta) usando o Terraform:
resource "ibm_is_ipsec_policy" "is_ipsec_policy" {
name = "my-ipsec-policy"
authentication_algorithm = "sha256"
encryption_algorithm = "aes128"
pfs = "group_14"
}
Não misture propriedades no singular e baseadas em matriz para a mesma categoria de algoritmo em uma única solicitação.
Para obter mais informações, consulte o registro do Terraform.
Próximas etapas
Depois de criar uma política IPsec, conclua as seguintes tarefas, conforme necessário:
- Crie uma política IKE se você decidir usar uma política IKE personalizada em vez de uma política IKE negociada automaticamente.
- Se você não criou uma conexão VPN durante a criação do gateway VPN, poderá criar uma depois que o gateway for provisionado. Para obter mais informações, consulte Incluindo conexões em um gateway da VPN.
- Para uma VPN baseada em rota, selecione ou crie uma tabela de roteamento. Em seguida, crie uma rota usando o tipo de conexão da VPN.