Creazione di una politica IPsec
È possibile utilizzare criteri IPsec personalizzati per definire i parametri di sicurezza utilizzati durante la Fase 2 della negoziazione. In questa fase, la VPN e il dispositivo peer utilizzano l'associazione di sicurezza stabilita durante la fase 1 per negoziare quale traffico inviare e come autenticare e codificare tale traffico.
Per garantire una selezione coerente degli algoritmi, è necessario che gli algoritmi IKE e IPsec e il loro ordine di priorità corrispondano esattamente sia sul gateway IBM Cloud VPN che sul gateway peer. Per ulteriori informazioni sui fattori che influenzano la selezione dell'algoritmo, vedere Come vengono scelti gli algoritmi di crittografia per IKE e IPsec in una connessione VPN site-to-site?
Creazione di un criterio IPsec nella console
Per creare un criterio IPsec nella console, procedere come segue:
-
Nella pagina dell'elenco VPN per VPC, selezionare Gateway sito-sito > Criteri IPsec.
-
Fare clic su " Crea " e specificare le seguenti informazioni:
- Posizione- Selezionare una regione per questo criterio IPsec.
- Nome- Inserire un nome per la politica IPsec.
- Gruppo di risorse- Selezionare il gruppo di risorse per questa politica IPsec.
- Crittografia- Selezionare l'algoritmo di crittografia da utilizzare per la Fase 2. Per impostazione predefinita, viene selezionato l'algoritmo a più bassa resistenza. È possibile selezionare più valori per ogni campo e riordinarli in base alla priorità. Il gateway VPN negozia con il gateway peer per selezionare il miglior algoritmo supportato reciprocamente.
- Autenticazione- Selezionare l'algoritmo di autenticazione da utilizzare per la Fase 2. Per impostazione predefinita, viene selezionato l'algoritmo a più bassa resistenza. È possibile selezionare più algoritmi di autenticazione e riordinarli in base alla priorità.
- Perfect Forward Secrecy- Abilitare questa opzione per eseguire un nuovo scambio Diffie-Hellman durante ogni rekey di Fase 2, in modo che se una chiave è compromessa, il traffico precedentemente crittografato rimane sicuro.
- Gruppo Diffie-Hellman (se PFS è abilitato)- Selezionare il gruppo DH da utilizzare per lo scambio di chiavi di fase 2. Per impostazione predefinita, viene selezionato il gruppo DH più basso. È possibile selezionare più gruppi DH e riordinarli per priorità.
- Durata della chiave- Selezionare la durata, in secondi, per il tunnel di Fase 2.
-
Fai clic su Crea.
-
Dalla pagina Dettagli connessione VPN, imposta il campo Politiche IPsec per utilizzare la politica IPsec desiderata.
Per garantire il successo della negoziazione IKE/IPsec, configurare entrambi i peer con almeno un algoritmo corrispondente in ciascuna categoria (autenticazione, crittografia e gruppi PF). L'allineamento di queste impostazioni tra i peer aiuta a evitare le interruzioni di connessione.
Creazione di una politica IPsec dalla CLI
Prima di iniziare, configura il tuo ambiente CLI.
Per creare una politica IPsec dalla CLI, immetti il seguente 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]
Dove:
- IPSEC_POLICY_NAME- Il nome della politica IPsec.
- AUTHENTICATION_ALGORITHMS- Gli algoritmi di autenticazione. Deve essere disabilitato solo se ENCRYPTION_ALGORITHMS contiene algoritmi in modalità combinata (
aes128gcm16,aes192gcm16,aes256gcm16). Uno di:disabled,sha256,sha384,sha512, o un elenco separato da virgole di algoritmi di autenticazione (sha384,sha256,sha512). L'ordine degli algoritmi determina la loro priorità durante la negoziazione. - ENCRYPTION_ALGORITHMS- Gli algoritmi di crittografia. Uno di:
aes128,aes128gcm16,aes192,aes192gcm16,aes256,aes256gcm16, o un elenco separato da virgole di algoritmi di crittografia (aes128,aes192,aes256). L'ordine degli algoritmi determina la loro priorità durante la negoziazione. - PFSGS- Gruppi di segretezza perfetta in avanti. Uno di:
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, o un elenco separato da virgole di gruppi PFS (group_14,group_15,group_16). L'ordine dei gruppi determina la loro priorità durante la negoziazione. - --key-lifetime: la durata della chiave, espressa in secondi. Massimo:
86400, Minimo:1800. Il valore predefinito è3600. - --resource-group-id: valore- L'ID del gruppo di risorse. Questa opzione è reciprocamente esclusiva con --resource-group-name.
- --resource-group-name valore- Il nome del gruppo di risorse. Questa opzione è reciprocamente esclusiva con --resource-group-id.
- -- output value- Specifica l'output in formato JSON.
-
- q, --quiet- Sopprime l'output verboso.
md5 e sha1, i gruppi DH group_2 e group_5 e l'algoritmo di crittografia triple_des sono stati deprecati il 20 settembre 2022 e non sono più supportati dalla console.
L' AUTHENTICATION_ALGORITHMS e deve essere disabled se e solo se ENCRYPTION_ALGORITHMS è aes128gcm16, aes192gcm16 o aes256gcm16.
Aggiornamento di un criterio IPsec dalla CLI
Prima di iniziare, configura il tuo ambiente CLI.
Per aggiornare un criterio IPsec dalla CLI, immettere il comando seguente:
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]
Dove:
-
--name- Il nome della politica IPsec.
-
--authentication-algorithms- Un elenco separato da virgole di algoritmi di autenticazione (consigliato). L'ordine degli algoritmi determina la loro priorità durante la negoziazione.
-
--authentication-algorithm- L'algoritmo di autenticazione (obsoleto). Deve essere disabilitato solo se --encryption_algorithm è impostato su
aes128gcm16,aes192gcm16oaes256gcm16. Uno di:disabled,sha256,sha384,sha512 -
--encryption-algorithms- Un elenco separato da virgole di algoritmi di crittografia (consigliato). L'ordine degli algoritmi determina la loro priorità durante la negoziazione.
-
--encryption-algorithm- L'algoritmo di crittografia (obsoleto). Uno tra:
aes128,aes128gcm16,aes192,aes192gcm16,aes256,aes256gcm16. -
--pfsgs- Un elenco separato da virgole di gruppi Perfect Forward Secrecy. L'ordine dei gruppi determina la loro priorità durante la negoziazione.
-
--pfs- Il gruppo Perfect Forward Secrecy (deprecato). Uno di: disabili,
group_14,group_15,group_16,group_17,group_18,group_19,group_20,group_21,group_22,group_23,group_24,group_31.Non mischiare proprietà singolari e basate su array per la stessa categoria di algoritmi in un unico comando.
Esempi di comando
I valori singolari per authentication algorithms, pfsgs, e encryption algorithms, per creare criteri IPsec dalla CLI, sono deprecati. Utilizzare invece più valori separati da virgole.
-
Creare un criterio IPsec utilizzando algoritmi di autenticazione separati da virgole (SHA 512 e SHA 256), algoritmi di crittografia (AES 256, AES 192 e AES 128) e gruppi di perfect forward secrecy ( group_14 e group_15 ):
ibmcloud is ipsec-policy-create my-ipsec-policy sha512,sha256 aes256,aes192,aes128 group_14,group_15 -
Creare un criterio IPsec utilizzando un singolo algoritmo di autenticazione (SHA 256), un singolo algoritmo di crittografia (AES 128) e il Gruppo DH 14:
ibmcloud is ipsec-policy-create my-ipsec-policy sha256 aes128 group_14 -
Creare una politica IPsec con gli stessi parametri e una durata di 3600 secondi:
ibmcloud is ipsec-policy-create my-ipsec-policy sha256 aes128 group_14 --key-lifetime 3600 -
Creare una politica IPsec con gli stessi parametri e un ID gruppo di risorse:
ibmcloud is ipsec-policy-create my-ipsec-policy sha256 aes128 group_14 --resource-group-id fee82deba12e4c0fb69c3b09d1f12345 --output JSON -
Aggiornare un criterio IPsec per cambiare il nome, gli algoritmi di autenticazione in SHA 512 e SHA 256, gli algoritmi di crittografia in AES 256, AES 192 e i gruppi di segretezza in avanti perfetta in 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 -
Aggiornare il criterio IPsec con la crittografia GCM (autenticazione disabilitata):
ibmcloud is ipsec-policy-update $ipsec_policy \ --authentication-algorithms disabled \ --encryption-algorithms aes128gcm16,aes256gcm16authentication_algorithmsdeve essere impostato sudisabledse e solo se l'elencoencryption_algorithmscontiene algoritmi basati su GCM (aes128gcm16,aes192gcm16oaes256gcm16). GCM fornisce sia la crittografia che l'integrità dei dati (autenticazione) come parte di una singola operazione, quindi non è necessario specificare un algoritmo di autenticazione separato (comesha256osha512).
Creazione di una politica IPsec con l'API
Le proprietà singolari authentication_algorithm, dh_group, encryption_algorithm e pfs per la negoziazione IPsec sono deprecate. Utilizzare le proprietà basate su array per creare un criterio
IPsec. Per saperne di più sulle proprietà degli algoritmi singolari e basati su array per i criteri IPsec quando si utilizza l'API, vedere Aggiornamento a più algoritmi IKE e IPsec.
Per creare un criterio IPsec con più algoritmi utilizzando le proprietà basate su array (consigliate), procedere come segue:
-
Configura il tuo ambiente API con le variabili corrette.
-
Memorizzare eventuali variabili aggiuntive da utilizzare nei comandi API, ad esempio:
ResourceGroupId- Trova l'ID gruppo di risorse utilizzando il comando get resource groups e popola la variabile:
export ResourceGroupId=<your_resourcegroup_id>
-
Creare il criterio 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'" } }'
Creare un criterio IPsec con encryption_algorithms impostato su GCM- algoritmi basati e authentication_algorithms impostato su 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'"
}
}'
La proprietà authentication_algorithms deve essere impostata su disabled se e solo se l'elenco encryption_algorithms contiene algoritmi basati su GCM (aes128gcm16, aes192gcm16,
o aes256gcm16). GCM fornisce sia la crittografia che l'integrità dei dati (autenticazione) come parte di una singola operazione, quindi non è necessario specificare un algoritmo di autenticazione separato (come sha256 o sha512).
Per creare un criterio IPsec con l'API utilizzando le proprietà singolari (deprecate), procedere come segue:
-
Configura il tuo ambiente API con le variabili corrette.
-
Memorizzare eventuali variabili aggiuntive da utilizzare nei comandi API, ad esempio:
ResourceGroupId- Trova l'ID gruppo di risorse utilizzando il comando get resource groups e popola la variabile:
export ResourceGroupId=<your_resourcegroup_id>
- Creare il criterio 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'"
}
}'
Aggiornamento di un criterio IPsec con l'API
Per aggiornare un criterio IPsec con l'API utilizzando le proprietà basate su array (consigliate), procedere come segue:
-
Configura il tuo ambiente API con le variabili corrette.
-
Memorizzare eventuali variabili aggiuntive da utilizzare nei comandi API, ad esempio:
ResourceGroupId- Trova l'ID gruppo di risorse utilizzando il comando get resource groups e popola la variabile:
export ResourceGroupId=<your_resourcegroup_id>
- Aggiornare il criterio 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"],
}'
Per aggiornare un criterio IPsec con l'API utilizzando le proprietà singolari (deprecate), procedere come segue:
È possibile aggiornare i criteri IPsec utilizzando proprietà singolari deprecate o proprietà basate su array. Entrambe le forme sono accettate, ma non si devono mischiare proprietà singolari e basate su array per la stessa categoria di algoritmi in una singola richiesta.
-
Configura il tuo ambiente API con le variabili corrette.
-
Memorizzare eventuali variabili aggiuntive da utilizzare nei comandi API, ad esempio:
ResourceGroupId- Trova l'ID gruppo di risorse utilizzando il comando get resource groups e popola la variabile:
export ResourceGroupId=<your_resourcegroup_id>
- Aggiornare il criterio 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",
}'
Per visualizzare il set completo di API per i gateway VPN site-to-site, consultare il riferimento API VPC.
Creazione di una politica IPsec tramite Terraform
Nell'esempio seguente è possibile creare una politica IPsec utilizzando Terraform:
resource "ibm_is_ipsec_policy" "is_ipsec_policy" {
name = "my-ipsec-policy"
authentication_algorithm = "sha256"
encryption_algorithm = "aes128"
pfs = "group_14"
}
- Nell'esempio seguente è possibile creare una policy IPsec con proprietà basate su array (consigliato) utilizzando 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"]
}
- Nell'esempio seguente è possibile creare una policy IPsec con proprietà singole (obsoleta) utilizzando Terraform:
resource "ibm_is_ipsec_policy" "is_ipsec_policy" {
name = "my-ipsec-policy"
authentication_algorithm = "sha256"
encryption_algorithm = "aes128"
pfs = "group_14"
}
Non mescolare proprietà singolari e basate su array appartenenti alla stessa categoria di algoritmi in una singola richiesta.
Per ulteriori informazioni, consultare il registro di Terraform.
Passi successivi
Dopo aver creato un criterio IPsec, completare le seguenti attività, se necessario:
- Creare un criterio IKE se si decide di usare un criterio IKE personalizzato invece di un criterio IKE auto-negoziato.
- Se non è stata creata una connessione VPN durante la creazione del gateway VPN, è possibile crearne una dopo il provisioning del gateway. Per ulteriori informazioni, vedi Aggiunta di connessioni a un gateway VPN.
- Per una VPN basata sull'instradamento, selezionare o creare una tabella di instradamento. Quindi, crea un instradamento utilizzando il tipo connessione VPN.