Actualización de una conexión VPN
Función
Esta API se utiliza para actualizar una conexión VPN con un ID de conexión especificado.
URI
Parámetro |
Tipo |
Obligatorio |
Descripción |
---|---|---|---|
project_id |
String |
Sí |
Especifica un ID de proyecto. Puede obtener el ID del proyecto haciendo referencia a Obtención del ID del proyecto. |
vpn_connection_id |
String |
Sí |
Especifica un ID de conexión VPN. |
Solicitud
- Parámetros de solicitud
Tabla 2 Parámetros de solicitud Parámetro
Tipo
Obligatorio
Descripción
vpn_connection
Sí
Especifica el objeto de conexión VPN.
Tabla 3 UpdateVpnConnectionRequestBodyContent Parámetro
Tipo
Obligatorio
Descripción
name
String
No
- Especifica el estado de una conexión VPN.
- El valor es una cadena de 1 a 64 caracteres, que puede contener dígitos, letras, guiones bajos (_), y guiones (-).
cgw_id
String
No
- Especifica un ID de gateway de cliente.
- El valor es un UUID que contiene 36 caracteres.
peer_subnets
Array of String
No
- Especifica una subred de cliente.
- Restricciones:
Este parámetro no es necesario cuando el modo de asociación del gateway de VPN se establece en er y style se establece en policy o bgp. Este parámetro es obligatorio en otros escenarios.
Los bloques CIDR de VPC reservados como 100.64.0.0/10 y 214.0.0.0/8 no se pueden utilizar como subredes de clientes.
Se puede configurar un máximo de 50 subredes de clientes para cada conexión VPN.
tunnel_local_address
String
No
- Especifica la dirección de la interfaz de túnel configurada en el gateway de VPN en modo basado en ruta, por ejemplo, 169.254.76.1/30.
- Restricciones:
Los primeros 16 bits deben ser 169.254, y el valor no puede ser 169.254.195.xxx.
La longitud de la máscara debe ser 30, y la dirección debe estar en el mismo bloque CIDR que el valor de tunnel_peer_address.
La dirección debe ser una dirección de host en un bloque CIDR.
tunnel_peer_address
String
No
- Especifica la dirección de la interfaz de túnel configurada en el dispositivo de gateway del cliente en modo basado en ruta, por ejemplo, 169.254.76.1/30.
- Restricciones:
Los primeros 16 bits deben ser 169.254, y el valor no puede ser 169.254.195.xxx.
La longitud de la máscara debe ser 30, y la dirección debe estar en el mismo bloque CIDR que el valor de tunnel_local_address.
La dirección debe ser una dirección de host en un bloque CIDR.
psk
String
No
- Especifica una clave previamente compartida. Cuando la versión de IKE es v2 y solo se modifica este parámetro, la modificación no tiene efecto.
- El valor es una string de 8 a 128 caracteres, que debe contener al menos tres tipos de los siguientes: letras mayúsculas, minúsculas, dígitos y caracteres especiales (~!@#$%^()-_+={ },./:;).
policy_rules
Array of PolicyRule
No
- Especifica reglas de política.
- Se puede especificar un máximo de cinco reglas de política. Establezca este parámetro solo cuando style se establezca en policy.
Puede obtener el valor style de una conexión VPN consultando la conexión VPN.
ikepolicy
No
Especifica el objeto de política IKE.
ipsecpolicy
No
Especifica el objeto de política IPsec.
Tabla 4 PolicyRule Parámetro
Tipo
Obligatorio
Descripción
rule_index
Integer
No
- Especifica un ID de regla.
- El valor varía de 0 a 50.
- El valor de rule_index en cada regla de política debe ser único.
source
String
No
- Especifica un bloque CIDR de origen.
- El valor de source en cada regla de política debe ser único.
destination
Array of String
No
Tabla 5 UpdateIkePolicy Parámetro
Tipo
Obligatorio
Descripción
ike_version
String
No
- Especifica la versión de IKE. La modificación de este parámetro interrumpirá la conexión VPN.
- El valor puede ser v1 o v2.
phase1_negotiation_mode
String
No
authentication_algorithm
String
No
- Especifica un algoritmo de autenticación. La modificación de este campo solo tiene efecto después de que se envejecen las SA en la fase 1.
- El valor puede ser sha2-512, sha2-384, sha2-256, sha1 o md5.
Tenga cuidado al usar sha1 y md5 ya que tienen poca seguridad.
encryption_algorithm
String
No
- Especifica un algoritmo de encriptación. La modificación de este campo solo tiene efecto después de que se envejecen las SA en la fase 1.
- El valor puede ser aes-256-gcm-16, aes-128-gcm-16, aes-256, aes-192, aes-128 o 3des.
Tenga cuidado al usar 3des ya que tiene poca seguridad.
dh_group
String
No
- Especifica el grupo DH utilizado para el intercambio de claves en la fase 1. La modificación de este campo solo tiene efecto después de que se envejecen las SA en la fase 1.
- El valor puede ser group1, group2, group5, group14, group15, group16, group19, group20 o group21.
authentication_method
String
No
- Especifica el método de autenticación utilizado durante la negociación IKE.
- El valor solo puede ser pre-share (valor predeterminado).
lifetime_seconds
Integer
No
- Especifica la duración de la SA. Cuando expira la vida útil, una SA de IKE se actualiza automáticamente. La modificación de este campo solo tiene efecto después de que se envejecen las SA en la fase 1.
- The value ranges from 60 to 604800, in seconds.
local_id_type
String
Sí
- Especifica el tipo de ID local.
- El valor puede ser ip o fqdn.
local_id
String
No
- Especifica el ID local.
- El valor puede contener un máximo de 255 caracteres, incluidos solo letras mayúsculas, letras minúsculas, dígitos y puntos (.). Este parámetro es obligatorio cuando local_id_type se establece en fqdn. El valor debe ser el mismo que el de peer_id en el dispositivo del mismo nivel.
peer_id_type
String
Sí
- Especifica el tipo de ID emparejado.
- El valor puede ser ip o fqdn.
peer_id
String
No
- Especifica el ID emparejado.
- El valor puede contener un máximo de 255 caracteres, incluidos solo letras mayúsculas, letras minúsculas, dígitos y puntos (.). Este parámetro es obligatorio cuando peer_id_type se establece en fqdn. El valor debe ser el mismo que el de local_id en el dispositivo del mismo nivel.
dpd
No
Especifica el objeto DPD.
Tabla 7 UpdateIpsecPolicy Parámetro
Tipo
Obligatorio
Descripción
authentication_algorithm
String
No
- Especifica un algoritmo de autenticación. Tenga cuidado al usar SHA1 y MD5 ya que tienen baja seguridad. La modificación de este campo solo tiene efecto después de que se envejecen las SA en la fase 2.
- El valor puede ser sha2-512, sha2-384, sha2-256, sha1 o md5. El valor predeterminado es sha2-256.
encryption_algorithm
String
No
- Especifica un algoritmo de encriptación. Tenga cuidado al usar 3DES, ya que tiene poca seguridad. La modificación de este campo solo tiene efecto después de que se envejecen las SA en la fase 2.
- El valor puede ser aes-256-gcm-16, aes-128-gcm-16, aes-256, aes-192, aes-128 o 3des. El valor predeterminado es aes-128.
pfs
String
No
- Especifica el grupo de claves DH que utiliza PFS.
- El valor puede ser group1, group2, group5, group14, group15, group16, group19, group20, group21 o disable. El valor predeterminado es group14.
transform_protocol
String
No
lifetime_seconds
Integer
No
- Especifica la duración de un túnel establecido a través de una conexión IPsec. La modificación de este campo solo tiene efecto después de que se envejecen las SA en la fase 2.
- El valor oscila entre 30 y 604800, en segundos. El valor predeterminado es 3600.
encapsulation_mode
String
No
- Ejemplo de las solicitudes
1. Actualizar la subred del cliente.
PUT https://{Endpoint}/v5/{project_id}/vpn-connection/{vpn_connection_id} { "vpn_connection": { "peer_subnets": [ "192.168.1.0/24" ] } }
2. Actualizar una regla de política.
PUT https://{Endpoint}/v5/{project_id}/vpn-connection/{vpn_connection_id} { "vpn_connection": { "policy_rules": [{ "rule_index": 1, "source": "10.0.0.0/24", "destination": [ "192.168.1.0/24" ] }] } }
3. Actualizar la vida útil de la SA.
PUT https://{Endpoint}/v5/{project_id}/vpn-connection/{vpn_connection_id} { "vpn_connection": { "ikepolicy": { "lifetime_seconds": 3600 }, "ipsecpolicy": { "lifetime_seconds": 3600 } } }
4. Actualizar el nombre de la conexión.
PUT https://{Endpoint}/v5/{project_id}/vpn-connection/{vpn_connection_id} { "vpn_connection": { "name": "vpn_connection_name" } }
Respuesta
- Parámetros de respuesta
Código de estado devuelto 200: operación exitosa
Tabla 8 Parámetros en el cuerpo de respuesta Parámetro
Tipo
Descripción
vpn_connection
Especifica el objeto de conexión VPN.
request_id
String
Especifica un ID de solicitud.
Tabla 9 ResponseVpnConnection Parámetro
Tipo
Descripción
id
String
- Especifica un ID de conexión VPN.
- El valor es un UUID que contiene 36 caracteres.
name
String
- Especifica un nombre de conexión VPN. Si no se especifica ningún nombre de conexión VPN, el sistema genera uno automáticamente.
- El valor es una cadena de 1 a 64 caracteres, que puede contener dígitos, letras, guiones bajos (_), y guiones (-).
vgw_id
String
- Especifica un ID de gateway de VPN.
- El valor es un UUID que contiene 36 caracteres.
vgw_ip
String
- Especifica un ID de EIP o una dirección IP privada del gateway de VPN.
- El valor es un UUID que contiene 36 caracteres o una dirección IPv4 en notación decimal con puntos (por ejemplo, 192.168.45.7).
style
String
cgw_id
String
- Especifica un ID de gateway de cliente.
- El valor es un UUID que contiene 36 caracteres.
peer_subnets
Array of String
Especifica una subred de cliente. Este parámetro no se devuelve cuando el modo de asociación del gateway de VPN es ER y style es BGP o POLICY.
tunnel_local_address
String
Especifica la dirección de la interfaz de túnel configurada en el gateway VPN en modo basado en ruta. Este parámetro solo es válido cuando style es STATIC o BGP.
tunnel_peer_address
String
Especifica la dirección de la interfaz de túnel configurada en el dispositivo de gateway del cliente en modo basado en ruta. Este parámetro solo es válido cuando style es STATIC o BGP.
enable_nqa
Boolean
- Especifica si NQA está habilitado. Este parámetro solo es válido cuando style es STATIC.
- El valor puede ser true o false.
policy_rules
Array of PolicyRule
Especifica reglas de política. Las reglas de política solo se devuelven cuando style tiene un valor de POLICY.
ikepolicy
Especifica el objeto de política IKE.
ipsecpolicy
Especifica el objeto de política IPsec.
created_at
String
Especifica la hora a la que se crea la conexión VPN.
updated_at
String
Especifica la hora de la última actualización.
enterprise_project_id
String
- Especifica un ID de proyecto de empresa.
- El valor es un UUID que contiene 36 caracteres. El valor debe ser el mismo que el ID del proyecto de empresa del gateway VPN especificada por vgw_id.
Tabla 10 PolicyRule Parámetro
Tipo
Descripción
rule_index
Integer
- Especifica un ID de regla.
- El valor varía de 0 a 50.
source
String
Especifica un bloque CIDR de origen.
destination
Array of String
Especifica un bloque CIDR de destino. Por ejemplo, un bloque CIDR de destino puede ser 192.168.52.0/24. Se puede devolver un máximo de 50 bloques CIDR de destino para cada regla de política.
Tabla 11 IkePolicy Parámetro
Tipo
Descripción
ike_version
String
- Especifica la versión de IKE.
- El valor puede ser v1 o v2.
phase1_negotiation_mode
String
authentication_algorithm
String
- Especifica un algoritmo de autenticación.
- El valor puede ser sha2-512, sha2-384, sha2-256, sha1 o md5.
encryption_algorithm
String
- Especifica un algoritmo de encriptación.
- El valor puede ser aes-256-gcm-16, aes-128-gcm-16, aes-256, aes-192, aes-128 o 3des.
dh_group
String
- Especifica el grupo DH utilizado para el intercambio de claves en la fase 1.
- El valor puede ser group1, group2, group5, group14, group15, group16, group19, group20 o group21.
authentication_method
String
lifetime_seconds
Integer
- Especifica la duración de la SA. Cuando expira la vida útil, una SA de IKE se actualiza automáticamente.
- El valor varía de 60 a 604800, en segundos.
local_id_type
String
- Especifica el tipo de ID local.
- El valor puede ser ip o fqdn.
local_id
String
Especifica el ID local. Cuando local_id_type se establece en ip se devuelve la dirección IP del gateway de VPN correspondiente a la conexión VPN. Cuando local_id_type se establece en fqdn, se devuelve el ID local especificado durante la creación o actualización de la conexión VPN.
peer_id_type
String
- Especifica el tipo de ID emparejado.
- El valor puede ser ip, fqdn o any.
peer_id
String
Especifica el ID emparejado. Cuando peer_id_type se establece en ip, se devuelve la dirección IP del gateway del cliente. Cuando peer_id_type se establece en fqdn, se devuelve el ID emparejado especificado durante la creación o actualización de la conexión VPN. Cuando peer_id_type se establece en any, no se devuelve ningún dato.
dpd
Especifica el objeto DPD.
Tabla 12 Dpd Parámetro
Tipo
Descripción
timeout
Integer
- Especifica el intervalo para retransmitir los paquetes de DPD.
- El valor varía de 2 a 60, en segundos.
interval
Integer
- Especifica el período de tiempo de espera inactivo del DPD.
- El valor varía de 10 a 3600, en segundos.
msg
String
Tabla 13 IpsecPolicy Parámetro
Tipo
Descripción
authentication_algorithm
String
- Especifica un algoritmo de autenticación.
- El valor puede ser sha2-512, sha2-384, sha2-256, sha1 o md5.
encryption_algorithm
String
- Especifica un algoritmo de encriptación.
- El valor puede ser aes-256-gcm-16, aes-128-gcm-16, aes-256, aes-192, aes-128 o 3des.
pfs
String
- Especifica el grupo de claves DH que utiliza PFS.
- El valor puede ser group1, group2, group5, group14, group15, group16, group19, group20, group21 o disable.
transform_protocol
String
lifetime_seconds
Integer
- Especifica la duración de un túnel establecido a través de una conexión IPsec.
- El valor oscila entre 30 y 604800, en segundos.
encapsulation_mode
String
- Ejemplo de las respuestas
1. Responder a la solicitud de actualización de una conexión VPN
{ "vpn_connection": { "id": "98c5af8a-****-****-****-ae2280a6f4c3", "name": "vpn-1655", "vgw_id": "b32d91a4-****-****-****-e907174eb11d", "vgw_ip": "0c464dad-****-****-****-c22bb0eb0bde", "style": "POLICY", "cgw_id": "5247ae10-****-****-****-dd36659a7f5d", "peer_subnets": ["192.168.1.0/24"], "tunnel_local_address": "169.254.56.225/30", "tunnel_peer_address": "169.254.56.226/30", "enable_nqa": false, "policy_rules": [{ "rule_index": 1, "source": "10.0.0.0/24", "destination": [ "192.168.1.0/24" ] }], "ikepolicy": { "ike_version": "v2", "authentication_algorithm": "sha2-256", "encryption_algorithm": "aes-128", "dh_group": "group14", "authentication_method": "pre-share", "lifetime_seconds": 86400, "local_id_type": "ip", "local_id": "10.***.***.134", "peer_id_type": "ip", "peer_id": "88.***.***.164", "dpd": { "timeout": 15, "interval": 30, "msg": "seq-hash-notify" } }, "ipsecpolicy": { "authentication_algorithm": "sha2-256", "encryption_algorithm": "aes-128", "pfs": "group14", "transform_protocol": "esp", "lifetime_seconds": 3600, "encapsulation_mode": "tunnel" }, "created_at": "2022-11-26T13:41:34.626Z", "updated_at": "2022-11-26T13:41:34.626Z", "enterprise_project_id": "0" }, "request_id": "f91082d4-6d49-479c-ad1d-4e552a9f5cae" }
2. Respuesta devuelta cuando no se actualiza una conexión VPN congelada{ "error_code": "VPN.0001", "error_msg": "invalid request: ILLEGAL not allowed update vpnConnection", "request_id": "8c833634-4560-7897-7740-a7462f5bcbd4" }
Códigos de estado
Para obtener más información, véase Códigos de estado.