Cisco ASA: basado en políticas
Este tema proporciona una configuración basada en políticas para un Cisco ASA que está ejecutando la versión de software 8.5 en 9.7.0.
Oracle proporciona instrucciones de configuración para un conjunto probado de proveedores y dispositivos. Utilice la configuración correcta para su proveedor y versión de software.
Si el dispositivo o la versión de software que Oracle utiliza para verificar que la configuración no coincide exactamente con el dispositivo o el software, es posible que pueda crear la configuración necesaria en el dispositivo. Consulte la documentación del proveedor y realice los ajustes necesarios.
Si el dispositivo es para un proveedor que no está en la lista de proveedores y dispositivos verificados o si ya está familiarizado con la configuración del dispositivo para IPSec, consulte la lista de parámetros admitidos de IPSec y consulte la documentación del proveedor para obtener ayuda.
Como recordatorio, Oracle proporciona diferentes configuraciones basadas en el software ASA:
- 9.7.1 o posterior: configuración basada en rutas
- 8.5 a 9.7.0: configuración basada en políticas (este tema)
- Anteriores a 8.5: no se admiten en las instrucciones de configuración de Oracle. Piense en actualizar a una versión más reciente.
Oracle recomienda utilizar una configuración basada en rutas para evitar los problemas de interoperabilidad y lograr la redundancia de túneles con un único dispositivo Cisco ASA.
Cisco ASA no admite la configuración basada en rutas para versiones de software anteriores a 9.7.1. Para obtener los mejores resultados, si el dispositivo lo permite, Oracle recomienda la actualización a una versión de software que admita la configuración basada en rutas.
Con la configuración basada en políticas, solo se puede configurar un único túnel entre Cisco ASA y el Dynamic Routing Gateway (DRG).
VPN de offersSite a sitio de Oracle Cloud Infrastructure, una conexión IPSec segura entre la red local y una red virtual en la nube (VCN).
El siguiente diagrama muestra una conexión básica de IPSec con Oracle Cloud Infrastructure con túneles redundantes. Las direcciones IP de este diagrama son solo ejemplos y no están pensados para su uso literal.
Oracle proporciona instrucciones de configuración para un conjunto probado de proveedores y dispositivos. Utilice la configuración correcta para su proveedor y versión de software.
Si el dispositivo o la versión de software que Oracle utiliza para verificar que la configuración no coincide exactamente con el dispositivo o el software, es posible que pueda crear la configuración necesaria en el dispositivo. Consulte la documentación del proveedor y realice los ajustes necesarios.
Si el dispositivo es para un proveedor que no está en la lista de proveedores y dispositivos verificados o si ya está familiarizado con la configuración del dispositivo para IPSec, consulte la lista de parámetros admitidos de IPSec y consulte la documentación del proveedor para obtener ayuda.
Mejores prácticas
En esta sección se tratan las mejores prácticas y consideraciones para utilizar la VPN de sitio a sitio.
Específico de Cisco ASA: filtros de VPN
Los filtros de VPN permiten filtrar el tráfico antes de que entre en un túnel o después de que salga de él. Utilice los filtros de la VPN si necesita una granularidad adicional para filtrar distintos tipos de tráfico o flujos de origen/destino. Para obtener más información, consulte la documentación del filtro de VPN de Cisco.
La configuración del filtro de VPN no se incluye en la plantilla de configuración que aparece en la sección Configuración de CPE. Para utilizar filtros de VPN, agregue los siguientes elementos de configuración manualmente.
-
Lista de control de acceso (ACL): cree una ACL que el filtro de VPN pueda utilizar para restringir el tráfico permitido a través de los túneles. Si ya ha utilizado una ACL para un filtro de la VPN, no lo utilice tampoco para un grupo de acceso de interfaz.
access-list ${vpnFilterAclName} extended permit ip ${VcnCidrNetwork} ${VcnCidrNetmask} ${onPremCidrNetwork} ${onPremCidrNetmask}
-
Política de grupo: aplique el filtro de la VPN a la política de grupo.
group-policy oracle-vcn-vpn-policy attributes vpn-filter value ${vpnFilterAclName}
-
Grupo de túneles: aplique la política de grupo al grupo de túneles.
tunnel-group ${oracleHeadend1} general-attributes default-group-policy oracle-vcn-vpn-policy
Tráfico interesante
Oracle recomienda mantener el tráfico interesante que se ejecuta a través de los túneles IPSec en todo momento si el CPE lo admite. Cisco ASA requiere que configure la supervisión de SLA, que mantiene el tráfico interesante que se ejecuta a través de los túneles IPSec. En muchos casos en los que Cisco ASA actúa como iniciador, la fase 2 no aparece hasta que no hay tráfico interesante, lo que hace que la SA esté inactiva, ya sea cuando se abre el túnel o después de una nueva clave de asociación de seguridad. Para evitar tales situaciones, se puede utilizar tráfico de interés continuo o funciones como el SLA de IP. Para obtener más información, consulte la sección" Configuración de SLA IP" en la plantilla de configuración basada en políticas de Cisco ASA.
Configuración de todos los túneles para cada conexión de IPSec
Oracle despliega dos extremos de IPSec para cada una de las conexiones para proporcionar una alta disponibilidad para las cargas de trabajo críticas. En el lado de Oracle, estos dos extremos están en enrutadores diferentes para fines de redundancia. Oracle recomienda configurar todos los túneles disponibles para obtener la máxima redundancia. Esta es una parte clave de la filosofía "Diseño para fallo".
Disponibilidad de CPE redundantes en las ubicaciones de redes locales
Cada una de las direcciones que se conectan con IPSec a Oracle Cloud Infrastructure debe tener dispositivos de perímetro redundantes (también conocidos como "equipos locales de cliente" [CPE]). Agregue cada CPE a la consola de Oracle y cree una conexión de IPSec independiente entre el gateway de direccionamiento dinámico (DRG) y cada CPE. Para cada conexión de IPSec, Oracle aprovisiona dos túneles en las cabeceras de IPSec geográficamente redundantes. Para obtener más información, consulte la Guía de redundancia de conectividad (PDF).
Consideraciones del protocolo de enrutamiento
Al crear una conexión IPSec de VPN de sitio a sitio, esta tiene dos túneles de IPSec redundantes. Oracle le recomienda configurar su CPE para que utilice ambos túneles (si su CPE lo admite). En el pasado Oracle creaba conexiones IPSec con hasta cuatro túneles de IPSec.
Los tres tipos siguientes de enrutamiento están disponibles y puede seleccionar el tipo de enrutamiento por separado para cada túnel de la VPN de sitio a sitio:
- Enrutamiento dinámico de BGP: las rutas disponibles se aprenden de forma dinámica mediante BGP. DRG aprende de forma dinámica las rutas de su red local. En el lado de Oracle, DRG anuncia las subredes de la VCN.
- Enrutamiento estático: al configurar la conexión de IPSec con DRG, debe especificar las rutas específicas a la red local de la que desea que se conozca la VCN. También debe configurar su dispositivo CPE con rutas estáticas a las subredes de la VCN. Estas rutas no se aprenden dinámicamente.
- Enrutamiento basado en política: al configurar la conexión IPSec al DRG, debe especificar las rutas específicas a la red local que desea que conozca la VCN. También debe configurar su dispositivo CPE con rutas estáticas a las subredes de la VCN. Estas rutas no se aprenden dinámicamente.
Para obtener más información sobre el enrutamiento con la VPN de sitio a sitio, incluidas las recomendaciones de Oracle sobre cómo manipular el algoritmo de selección de la mejor ruta de acceso de BGP, consulte Enrutamiento de la VPN de sitio a sitio.
Otras configuraciones importantes de CPE
Asegúrese de que las listas de acceso de su CPE estén configuradas correctamente para no bloquear el tráfico necesario desde o hasta Oracle Cloud Infrastructure.
Si tiene varios túneles activos simultáneamente, puede que experimente un enrutamiento asimétrico. Para permitir el enrutamiento asimétrico, asegúrese de que su CPE esté configurado para gestionar el tráfico que procede de su VCN en cualquiera de los túneles. Por ejemplo, debe desactivar la inspección ICMP y configurar la omisión del estado TCP. Para obtener más información sobre la configuración adecuada, póngase en contacto con el soporte del proveedor de CPE. Para configurar el enrutamiento para que sea simétrico, consulte Enrutamiento de la VPN de sitio a sitio.
Específico de Cisco ASA: advertencias y limitaciones
En esta sección, se tratan las características y limitaciones importantes que son específicas de Cisco ASA.
Consulte la sección Límites de servicio para obtener una lista de límites aplicables e instrucciones para solicitar un aumento del límite.
Descubrimiento de la MTU del túnel y la MTU de la ruta
Tiene dos opciones para abordar el descubrimiento de la MTU del túnel y el de la MTU de la ruta con Cisco ASA:
Opción 1: ajuste de TCP MSS
La unidad de transmisión máxima (tamaño del paquete) a través del túnel de IPSec es inferior a 1500 bytes. Puede fragmentar paquetes demasiado grandes para ajustarlos a través del túnel. O bien, puede señalar de nuevo a los hosts que se comunican a través del túnel que necesitan para enviar paquetes más pequeños.
Puede configurar Cisco ASA para cambiar el tamaño máximo del segmento (MSS) de cualquier flujo de TCP nuevo a través del túnel. ASA busca paquetes TCP donde el indicador SYN está configurado y cambia el valor MSS al valor configurado. Esta configuración puede ayudar a los nuevos flujos TCP a evitar el uso del descubrimiento de la unidad de transmisión máxima de la ruta (PMTUD).
Utilice los siguientes comandos para cambiar el MSS. Este comando no forma parte de la configuración de ejemplo en la sección Configuración de CPE de este tema. Aplique el comando de ajuste TCP MSS manualmente, si es necesario.
sysopt connection tcpmss 1387
Opción 2: borrar/definir el bit de No fragmentar
El descubrimiento de la MTU de la ruta requiere que todos los paquetes TCP tengan definido el bit No fragmentar (DF). Si el bit de DF está configurado y un paquete es demasiado grande para pasar por el túnel, ASA anula el paquete en cuanto este llega. ASA envía un paquete ICMP nuevamente al remitente que indica que el paquete recibido era demasiado grande para el túnel. ASA ofrece tres opciones para gestionar el bit de DF. Seleccione una de las opciones y aplíquela a la configuración:
-
Definir el bit de DF (recomendado): los paquetes tienen el bit de DF configurado en la cabecera IP. ASA aún puede fragmentar el paquete si el paquete recibido original ha borrado el bit de DF.
crypto ipsec df-bit set-df ${outsideInterface}
-
Borrar el bit de DF: el bit de DF se borra del encabezado IP del paquete. Permite que el paquete se fragmente y se envíe al host final en Oracle Cloud Infrastructure para volver a ensamblarlo.
crypto ipsec df-bit clear-df ${outsideInterface}
-
Ignorar (copiar) el bit de DF: ASA observa la información de encabezado IP del paquete original y copia la configuración de bits de DF.
crypto ipsec df-bit copy-df ${outsideInterface}
El tráfico de la VPN puede entrar en un túnel y salir por otro
Si el tráfico de VPN introduce una interfaz con el mismo nivel de seguridad que una interfaz hacia el siguiente salto del paquete, debe permitir ese tráfico. Por defecto, los paquetes entre las interfaces con niveles de seguridad idénticos en ASA se anulan.
Agregue el siguiente comando manualmente si necesita permitir el tráfico entre interfaces con los mismos niveles de seguridad. Este comando no forma parte de la configuración de ejemplo en la sección Configuración de CPE.
same-security-traffic permit inter-interface
Advertencias y limitaciones generales
En esta sección se tratan las características y las limitaciones generales de la VPN de sitio a sitio.
Consulte la sección Límites de servicio para obtener una lista de límites aplicables e instrucciones para solicitar un aumento del límite.
Enrutamiento asimétrico
Oracle utiliza el enrutamiento asimétrico en varios túneles que forman la conexión de IPSec. Configure los firewalls según corresponda. De lo contrario, las pruebas de ping o el tráfico de aplicaciones a través de la conexión no funcionan de forma fiable.
Cuando utilice varios túneles a Oracle Cloud Infrastructure, Oracle recomienda configurar el enrutamiento para direccionar de forma determinista el tráfico a través del túnel preferido. Si desea utilizar un túnel de IPSec como principal y otro como de copia de seguridad, configure más rutas específicas para el túnel principal (BGP) y rutas menos específicas (resumen o ruta predeterminada) para el túnel de copia de seguridad (BGP/estático). De lo contrario, si da a conocer la misma ruta (por ejemplo, una ruta por defecto) a través de todos los túneles, devolverá el tráfico de su VCN a sus rutas de red locales a cualquiera de los túneles disponibles. Esto se debe a que Oracle utiliza el enrutamiento asimétrico.
Para obtener recomendaciones específicas de enrutamiento de Oracle sobre cómo forzar un enrutamiento simétrico, consulte Enrutamiento de la VPN de sitio a sitio.
Conexión IPSec basada en rutas o en políticas
El protocolo IPSec utiliza asociaciones de seguridad (SA) para determinar cómo cifrar paquetes. Dentro de cada SA, se definen dominios de cifrado para asignar el tipo de protocolo y la dirección IP de origen y destino de un paquete a una entrada de la base de datos de SA para definir cómo cifrar o descifrar un paquete.
Otros proveedores o documentación del sector pueden utilizar el término ID de servidor proxy, índice de parámetros de seguridad (SPI) o selector de tráfico al hacer referencia a dominios de cifrado o SA.
Existen dos métodos generales para implantar túneles de IPSec:
- Túneles basados en rutas: también denominados túneles basados en el próximo salto. Se realiza una consulta de tabla de rutas en la dirección IP de destino de un paquete. Si la interfaz de salida de esa ruta es un túnel de IPSec, el paquete se cifra y se envía al otro extremo del túnel.
- Túneles basados en políticas: la dirección IP de origen y de destino del paquete coincide con una lista de sentencias de política. Si se encuentra una coincidencia, el paquete se cifra según las reglas de esa sentencia de política.
Los extremos de la VPN de sitio a sitio de Oracle utilizan túneles basados en rutas, pero pueden trabajar con túneles basados en políticas con algunas advertencias que se enumeran en las siguientes secciones.
Si su CPE admite túneles basados en rutas, utilice ese método para configurar el túnel. Es la configuración más simple con la mayor interoperabilidad con el encabezado de VPN de Oracle.
IPSec basado en rutas utiliza un dominio de cifrado con los siguientes valores:
- Dirección IP de origen: cualquiera (0.0.0.0/0)
- Dirección IP de destino: cualquiera (0.0.0.0/0)
- Protocolo: IPv4
Si necesita ser más específico, puede utilizar una única ruta de resumen para los valores de dominio de cifrado en lugar de una ruta predeterminada.
Al utilizar túneles basados en políticas, cada entrada de política (un bloque de CIDR en un lado de la conexión IPSec) que defina genera una asociación de seguridad (SA) IPSec con cada entrada elegible en el otro extremo del túnel. Este par se conoce como dominio de cifrado.
En este diagrama, el extremo de Oracle DRG del túnel IPSec tiene entradas de política para tres bloques de CIDR IPv4 y un bloque de CIDR IPv6. El extremo de CPE local del túnel tiene entradas de política con dos bloques de CIDR IPv4 y dos bloques de CIDR IPv6. Cada entrada genera un dominio de cifrado con todas las entradas posibles en el otro extremo del túnel. Ambos lados de un par de SA deben usar la misma versión de IP. El resultado es un total de ocho dominios de cifrado.
Si el CPE solo soporta túneles basados en políticas, tenga en cuenta las siguientes restricciones.
- La VPN de sitio a sitio soporta varios dominios de cifrado, pero tiene un límite superior de 50 dominios de cifrado.
- Si tuvo una situación similar al ejemplo anterior y solo configuró tres de los seis posibles dominios de cifrado IPv4 en el lado del CPE, el enlace se mostraría en el estado "Activo parcial", porque todos los posibles dominios de cifrado siempre se crean en el lado del DRG.
- En función de cuándo se haya creado un túnel, es posible que no pueda editar un túnel existente para utilizar el enrutamiento basado en políticas y que necesite sustituir el túnel por un nuevo túnel IPSec.
- Los bloques de CIDR que se utilizan en el extremo de Oracle DRG del túnel no pueden solapar los bloques de CIDR que se utilizan en el extremo del CPE local del túnel.
- Debe haber siempre un dominio de cifrado entre dos bloques de CIDR de la misma versión IP.
Si su CPE está detrás de un dispositivo NAT
En general, el identificador IKE de CPE configurado al final de la conexión debe coincidir con el identificador IKE de CPE que utiliza Oracle. De forma predeterminada, Oracle utiliza la dirección IP pública de CPE, que se proporciona al crear el objeto CPE en la consola de Oracle. Sin embargo, si su CPE está detrás de un dispositivo NAT, el identificador IKE de CPE configurado en su extremo puede ser la dirección IP privada del CPE, como se muestra en el diagrama siguiente.
Algunas plataformas de CPE no permiten cambiar el identificador de IKE local. Si no puede, debe cambiar el ID de IKE remoto en la consola de Oracle para que coincida con el ID de IKE local de su CPE. Puede proporcionar el valor al configurar la conexión de IPSec o más tarde, editando la conexión de IPSec. Oracle espera que el valor sea una dirección IP o un nombre de dominio completo (FQDN), como cpe.example.com. Para obtener instrucciones, consulte Cambio del identificador IKE de CPE que Oracle utiliza.
Parámetros de IPSec admitidos
Para obtener una lista neutra de proveedores de los parámetros de IPSec admitidos para todas las regiones, consulte Parámetros de IPSec admitidos.
El ASN de BGP de Oracle para el dominio de nube comercial es 31898. Si configura la VPN de sitio a sitio para la nube del Gobierno de EE. UU., consulte Parámetros de VPN de sitio a sitio necesarios para Government Cloud y también ASN de BGP de Oracle. Para ver la nube del Gobierno de Reino Unido, consulte Regiones.
Configuración de CPE
Oracle Cloud Infrastructure proporciona las instrucciones de configuración de esta sección para su CPE. Si necesita asistencia técnica o adicional, póngase en contacto con el soporte del proveedor de CPE directamente.
En la siguiente figura se muestra el diseño básico de la conexión de IPSec.
La plantilla de configuración proporcionada es para un Cisco ASA que ejecute la versión 8.5 del software (o posterior).
Las versiones de Cisco ASA 9.7.1 y las nuevas admiten la configuración basada en rutas, que es el método recomendado para evitar problemas de interoperabilidad.
Si desea redundancia de túnel con un único dispositivo Cisco ASA, debe utilizar la configuración basada en ruta. Con la configuración basada en políticas, solo se puede configurar un único túnel entre Cisco ASA y el Dynamic Routing Gateway (DRG).
La plantilla de configuración hace referencia a estos elementos que debe proporcionar:
- Dirección IP pública de CPE: dirección IP que permite el enrutamiento por internet que se asigna a la interfaz externa del CPE. Usted o el administrador de Oracle proporcionan este valor a Oracle al crear el objeto CPE en la consola de Oracle.
- Interfaz de túnel interna (necesaria si se utiliza BGP): las direcciones IP para CPE y Oracle terminan en la interfaz de túnel interna. Estos valores se proporcionan al crear la conexión de IPSec en la consola de Oracle.
- ASN de BGP (necesario si se utiliza BGP): su ASN de BGP.
Además, debe:
- Configure el enrutamiento interno que direcciona el tráfico entre el CPE y la red local.
- Asegúrese de permitir el tráfico entre ASA y la VCN de Oracle (la siguiente plantilla de configuración hace referencia a esta lista de acceso con la variable
${outboundAclName}
). - Identifique la política del grupo de la VPN interno (la siguiente plantilla de configuración hace referencia a esta política de grupo como
oracle-vcn-vpn-policy
). - Identifique el conjunto de transformaciones utilizado para el mapa criptográfico (la siguiente plantilla de configuración hace referencia a este conjunto de transformaciones como
oracle-vcn-transform
). - Identifique el nombre del mapa criptográfico y el número de secuencia (la siguiente plantilla de configuración hace referencia al nombre de mapa como
oracle-vpn-map-v1
y el número de secuencia 1). - Identifique el número de operación para el ping continuo de SLA de IP (la siguiente plantilla de configuración utiliza el número de operación 1).
La plantilla siguiente de configuración de Oracle Cloud Infrastructure es un punto de partida para lo que tiene que aplicar a su CPE. La sintaxis de cada configuración de dispositivo CPE puede ser diferente y depende del modelo y de las versiones del software. Asegúrese de comparar su modelo y versión de CPE con la plantilla de configuración adecuada.
Algunos de los parámetros a los que se hace referencia en la plantilla deben ser únicos en el CPE, y la unicidad solo se puede determinar accediendo al CPE. Asegúrese de que los parámetros son válidos en su CPE y no sobrescriban los valores configurados anteriormente. En concreto, asegúrese de que los siguientes valores son únicos:
- Nombres o números de política
-
Nombres de mapa criptográfico y números de secuencia
- Nombre de la interfaz
- Nombres o números de lista de acceso (si corresponde)
Oracle admite la versión 1 (IKEv1) y la versión 2 (IKEv2) de Internet Key Exchange. Si configura la conexión IPSec en la consola para utilizar IKEv2, debe configurar el CPE para que utilice solo IKEv2 y los parámetros de cifrado de IKEv2 relacionados que admite el CPE. Para obtener una lista de los parámetros admitidos por Oracle para IKEv1 o IKEv2, consulte Parámetros de IPSec admitidos.
Oracle proporciona una plantilla de configuración independiente para IKEv1 frente a IKEv2.
Oracle también proporciona una herramienta que puede generar la plantilla con parte de la información rellenada automáticamente. Para obtener más información, consulte Uso del asistente de configuración de CPE.
Consulte la plantilla de configuración de IKEv1 en pantalla completa para facilitar la lectura.
!-------------------------------------------------------------------------------------------------------------------------------------------------------------
! IKEv1 Configuration Template
! The configuration consists of a single IPSec tunnel.
!-------------------------------------------------------------------------------------------------------------------------------------------------------------
! The configuration template involves setting up the following:
! Access Lists
! ISAKMP Policy
! Base VPN Policy
! IPSec Configuration
! IPSec Tunnel Group Configuration
! IP Routing (BGP or Static)
! Optional: Disable NAT for VPN Traffic
!-------------------------------------------------------------------------------------------------------------------------------------------------------------
! The configuration template has various parameters that you must define before applying the configuration.
!-------------------------------------------------------------------------------------------------------------------------------------------------------------
! PARAMETERS REFERENCED:
! ${OracleInsideTunnelIpAddress1} = Inside tunnel IP address of Oracle-side for the first tunnel. You provide these values when creating the IPSec connection in the Oracle Console.
! ${bgpASN} = Your BGP ASN
! ${cpePublicIpAddress} = The public IP address for the CPE. This is the IP address of your outside interface
! ${outboundAclName} = ACL used to control traffic out of your inside and outside interfaces
! ${oracleHeadend1} = Oracle public IP endpoint obtained from the Oracle Console.
! ${sharedSecret1} = You provide when you set up the IPSec connection in the Oracle Console, or you can use the default Oracle-provided value.
! ${outsideInterface} = The public interface or outside of tunnel interface which is configured with the CPE public IP address.
! ${vcnCidrNetwork} = VCN IP range
! ${vcnCidrNetmask} = Subnet mask for VCN
! ${onPremCidrNetwork} = On-premises IP range
! ${onPremCidrNetmask} = ON-premises subnet mask
! ${cryptoMapAclName} = Name of ACL which will be associated with the IPSec security association.
! ${vcnHostIp} = IP address of a VCN host. Used for IP SLA continuous ping to maintain tunnel UP state.
!-------------------------------------------------------------------------------------------------------------------------------------------------------------
! Access Lists
! Permit Traffic Between Your ASA and Your Oracle VCN
! Assuming there is an access-list controlling traffic in and out of your Internet facing interface, you will need to permit traffic between your CPE and the Oracle VPN Headend
! WARNING: The new ACL entry you add to permit the traffic between your ASA and VPN headend needs to be above any deny statements you might have in your existing access-list
access-list ${outboundAclName} extended permit ip host ${oracleHeadend1} host ${cpePublicIpAddress}
! Crypto ACL
! Create an ACL named ${cryptoMapAclName} which will later be associated with the IPSec security association using the 'crypto-map' command. This will define which source/destination traffic needs to be encrypted and sent across the VPN tunnel.
! Keep this ACL to a single entry. In a policy based configuration each ACL line will establish a separate encryption domain.
! The encryption domain used in this configuration sample will have a source/destination of any/VCN CIDR. Refer to the 'Encryption domain for policy-based tunnels' subsection for supported alternatives.
access-list ${cryptoMapAclName} extended permit ip any ${vcnCidrNetwork} ${vcnCidrNetmask}
! ISAKMP Policy
! ISAKMP Phase 1 configuration.
! IKEv1 is enabled on the outside interface.
! IKEv1 policy is created for Phase 1 which specifies to use a Pre-Shared Key, AES256, SHA1, Diffie-Hellman Group 5, and a Phase 1 lifetime of 28800 seconds (8 hours).
! If different parameters are required, modify this template before applying the configuration.
! WARNING: The IKEv1 group policy is created with a priority of 10. Make sure this doesn't conflict with any pre-existing configuration on your ASA.
crypto ikev1 enable outside
crypto ikev1 policy 10
authentication pre-share
encryption aes-256
hash sha
group 5
lifetime 28800
! Base VPN Policy
! An internal VPN group policy named 'oracle-vcn-vpn-policy' is created to define some basic VPN tunnel settings
! Idle and session timeouts are disabled to maintain the tunnel UP state and tunnel protocol is set to IKEv1
group-policy oracle-vcn-vpn-policy internal
group-policy oracle-vcn-vpn-policy attributes
vpn-idle-timeout none
vpn-session-timeout none
vpn-tunnel-protocol ikev1
! IPSec Configuration
! Create an IKEv1 transform set named 'oracle-vcn-transform' which defines a combination of IPSec (Phase 2) policy options. Specifically, AES256 for encryption and SHA1 for authentication.
! If different parameters are required, modify this template before applying the configuration.
crypto ipsec ikev1 transform-set oracle-vcn-transform esp-aes-256 esp-sha-hmac
! A crypto map is used to tie together the important traffic that needs encryption (via crypto map ACL) with defined security policies (from the transform set along with other crypto map statements), and the destination of the traffic to a specific crypto peer.
! In this configuration example, a single crypto map is created named 'oracle-vpn-map-v1' This crypto map references the previously created crypto map ACL, the 'oracle-vcn-transform' transform set and further defines PFS Group 5 and the security association lifetime to 3600 seconds (1 hour).
! WARNING: Make sure your crypto map name and sequence numbers do not overlap with existing crypto maps.
! WARNING: DO NOT use the 'originate-only' option with an Oracle IPSec tunnel. It causes the tunnel's traffic to be inconsistently blackholed. The command is only for tunnels between two Cisco devices. Here's an example of the command that you should NOT use for the Oracle IPSec tunnels: crypto map <map name> <sequence number> set connection-type originate-only
crypto map oracle-vpn-map-v1 1 match address ${cryptoMapAclName}
crypto map oracle-vpn-map-v1 1 set pfs group5
crypto map oracle-vpn-map-v1 1 set peer ${oracleHeadend1}
crypto map oracle-vpn-map-v1 1 set ikev1 transform-set oracle-vcn-transform
crypto map oracle-vpn-map-v1 1 set security-association lifetime seconds 3600
! WARNING: The below command will apply the 'oracle-vpn-map-v1' crypto map to the outside interface. The Cisco ASA supports a single crypto map per interface. Make sure no other crypto map is applied to the outside interface before using this command.
crypto map oracle-vpn-map-v1 interface outside
! IPSec Tunnel Group Configuration
! This configuration matches the group policy 'oracle-vcn-vpn-policy' with an Oracle VPN headend endpoint.
! The pre-shared key for each Oracle VPN headend is defined in the corresponding tunnel group.
tunnel-group ${oracleHeadend1} type ipsec-l2l
tunnel-group ${oracleHeadend1} general-attributes
default-group-policy oracle-vcn-vpn-policy
tunnel-group ${oracleHeadend1} ipsec-attributes
ikev1 pre-shared-key ${sharedSecret1}
! IP SLA Configuration
! The Cisco ASA doesn't establish a tunnel if there's no interesting traffic trying to pass through the tunnel.
! You must configure IP SLA on your device for a continuous ping so that the tunnel remains up at all times.
! You must allow ICMP on the outside interface.
! Make sure that the SLA monitor number used is unique.
sla monitor 1
type echo protocol ipIcmpEcho ${vcnHostIp} interface outside
frequency 5
sla monitor schedule 1 life forever start-time now
icmp permit any ${outsideInterface}
! IP Routing
! Pick either dynamic (BGP) or static routing. Uncomment the corresponding commands prior to applying configuration.
! Border Gateway Protocol (BGP) Configuration
! Uncomment below lines if you want to use BGP.
! router bgp ${bgpASN}
! address-family ipv4 unicast
! neighbor ${OracleInsideTunnelIpAddress1} remote-as 31898
! neighbor ${OracleInsideTunnelIpAddress1} activate
! network ${onPremCidrNetwork} mask ${onPremCidrNetmask}
! no auto-summary
! no synchronization
! exit-address-family
! Static Route Configuration
! Uncomment below line if you want to use static routing.
! route outside ${VcnCidrNetwork} ${VcnCidrNetmask} ${OracleInsideTunnelIpAddress1}
! Disable NAT for VPN Traffic
! If you are using NAT for traffic between your inside and outside interfaces, you might need to disable NAT for traffic between your on-premises network and the Oracle VCN.
! Two objects are created for this NAT exemption. 'obj-OnPrem' represents the on-premises network as a default route, and 'obj-oracle-vcn-1' represents the VCN CIDR block used in Oracle Cloud Infrastructure.
! If different address ranges are required, modify this template before applying the configuration.
! object network obj-onprem
! subnet 0.0.0.0 0.0.0.0
! object network obj-oracle-vcn-1
! subnet ${vcnCidrNetwork} ${vcnCidrNetmask}
! nat (inside,outside) source static obj-onprem obj-onprem destination static obj-oracle-vcn-1 obj-oracle-vcn-1
Consulte la plantilla de configuración de IKEv2 en pantalla completa para facilitar la lectura.
!-------------------------------------------------------------------------------------------------------------------------------------------------------------
! IKEv2 Configuration Template
! The configuration consists of a single IPSec tunnel.
!-------------------------------------------------------------------------------------------------------------------------------------------------------------
! The configuration template involves setting up the following:
! Access Lists
! IKEv2 Policy
! Base VPN Policy
! IPSec Configuration
! IPSec Tunnel Group Configuration
! IP Routing (BGP or Static)
! Optional: Disable NAT for VPN Traffic
!-------------------------------------------------------------------------------------------------------------------------------------------------------------
! The configuration template has various parameters that you must define before applying the configuration.
!-------------------------------------------------------------------------------------------------------------------------------------------------------------
! PARAMETERS REFERENCED:
! ${OracleInsideTunnelIpAddress1} = Inside tunnel IP address of Oracle-side for the first tunnel. You provide these values when creating the IPSec connection in the Oracle Console.
! ${bgpASN} = Your BGP ASN
! ${cpePublicIpAddress} = The public IP address for the CPE. This is the IP address of your outside interface
! ${outboundAclName} = ACL used to control traffic out of your inside and outside interfaces
! ${oracleHeadend1} = Oracle public IP endpoint obtained from the Oracle Console.
! ${sharedSecret1} = You provide when you set up the IPSec connection in the Oracle Console, or you can use the default Oracle-provided value.
! ${outsideInterface} = The public interface or outside of tunnel interface which is configured with the CPE public IP address.
! ${vcnCidrNetwork} = VCN IP range
! ${vcnCidrNetmask} = Subnet mask for VCN
! ${onPremCidrNetwork} = On-premises IP range
! ${onPremCidrNetmask} = ON-premises subnet mask
! ${cryptoMapAclName} = Name of ACL which will be associated with the IPSec security association.
! ${vcnHostIp} = IP address of a VCN host. Used for IP SLA continuous ping to maintain tunnel UP state.
!-------------------------------------------------------------------------------------------------------------------------------------------------------------
! Access Lists
! Permit Traffic Between Your ASA and Your Oracle VCN
! Assuming there is an access-list controlling traffic in and out of your Internet facing interface, you will need to permit traffic between your CPE and the Oracle VPN Headend
! WARNING: The new ACL entry you add to permit the traffic between your ASA and VPN headend needs to be above any deny statements you might have in your existing access-list
access-list ${outboundAclName} extended permit ip host ${oracleHeadend1} host ${cpePublicIpAddress}
! Crypto ACL
! Create an ACL named ${cryptoMapAclName} which will later be associated with the IPSec security association using the 'crypto-map' command. This will define which source/destination traffic needs to be encrypted and sent across the VPN tunnel.
! Keep this ACL to a single entry. In a policy based configuration each ACL line will establish a separate encryption domain.
! The encryption domain used in this configuration sample will have a source/destination of any/VCN CIDR. Refer to the 'Encryption domain for policy-based tunnels' subsection for supported alternatives.
access-list ${cryptoMapAclName} extended permit ip any ${vcnCidrNetwork} ${vcnCidrNetmask}
! IKEv2 Policy
! IKEv2 is enabled on the outside interface.
! IKEv2 policy is created and specifies use of a Pre-Shared Key, AES256, SHA1, Diffie-Hellman Group 5, and a lifetime of 28800 seconds (8 hours).
! If different parameters are required, modify this template before applying the configuration.
! WARNING: The IKEv2 group policy is created with a priority of 10. Make sure this doesn't conflict with any pre-existing configuration on your ASA.
crypto ikev2 enable outside
crypto ikev2 policy 10
encryption aes-256
integrity sha384
group 5
prf sha
lifetime seconds 28800
! Base VPN Policy
! An internal VPN group policy named 'oracle-vcn-vpn-policy' is created to define some basic VPN tunnel settings
! Idle and session timeouts are disabled to maintain the tunnel UP state and tunnel protocol is set to IKEv2
group-policy oracle-vcn-vpn-policy internal
group-policy oracle-vcn-vpn-policy attributes
vpn-idle-timeout none
vpn-session-timeout none
vpn-tunnel-protocol ikev2
! IPSec Configuration
! Create an IKEv2 IPSec proposal named 'oracle_v2_ipsec_proposal' which defines AES256 for encryption and SHA1 for authentication.
! If different parameters are required, modify this template before applying the configuration.
crypto ipsec ikev2 ipsec-proposal oracle_v2_ipsec_proposal
protocol esp encryption aes-256
protocol esp integrity sha-1
! A crypto map is used to tie together the important traffic that needs encryption (via crypto map ACL) with defined security policies (from the IPSec proposal along with other crypto map statements), and the destination of the traffic to a specific crypto peer.
! In this configuration example, a single crypto map is created named 'oracle-vpn-map-v2' This crypto map references the previously created crypto map ACL, the 'oracle_v2_ipsec_proposal' IPSec proposal and further defines PFS Group 5 and the security association lifetime to 3600 seconds (1 hour).
! WARNING: Make sure your crypto map name and sequence numbers do not overlap with existing crypto maps.
! WARNING: DO NOT use the 'originate-only' option with an Oracle IPSec tunnel. It causes the tunnel's traffic to be inconsistently blackholed. The command is only for tunnels between two Cisco devices. Here's an example of the command that you should NOT use for the Oracle IPSec tunnels: crypto map <map name> <sequence number> set connection-type originate-only
crypto map oracle-vpn-map-v2 1 match address ${cryptoMapAclName}
crypto map oracle-vpn-map-v2 1 set pfs group5
crypto map oracle-vpn-map-v2 1 set peer ${oracleHeadend1}
crypto map oracle-vpn-map-v2 1 set ikev2 ipsec-proposal oracle_v2_ipsec_proposal
crypto map oracle-vpn-map-v2 1 set security-association lifetime seconds 3600
! WARNING: The below command will apply the 'oracle-vpn-map-v2' crypto map to the outside interface. The Cisco ASA supports a single crypto map per interface. Make sure no other crypto map is applied to the outside interface before using this command.
crypto map oracle-vpn-map-v2 interface outside
! IPSec Tunnel Group Configuration
! This configuration matches the group policy 'oracle-vcn-vpn-policy' with an Oracle VPN headend endpoint.
! The pre-shared key for each Oracle VPN headend is defined in the corresponding tunnel group.
tunnel-group ${oracleHeadend1} type ipsec-l2l
tunnel-group ${oracleHeadend1} general-attributes
default-group-policy oracle-vcn-vpn-policy
tunnel-group ${oracleHeadend1} ipsec-attributes
ikev2 local-authentication pre-shared-key ${sharedSecret1}
ikev2 remote-authentication pre-shared-key ${sharedSecret1}
! IP SLA Configuration
! The Cisco ASA doesn't establish a tunnel if there's no interesting traffic trying to pass through the tunnel.
! You must configure IP SLA on your device for a continuous ping so that the tunnel remains up at all times.
! You must allow ICMP on the outside interface.
! Make sure that the SLA monitor number used is unique.
sla monitor 1
type echo protocol ipIcmpEcho ${vcnHostIp} interface outside
frequency 5
sla monitor schedule 1 life forever start-time now
icmp permit any ${outsideInterface}
! IP Routing
! Pick either dynamic (BGP) or static routing. Uncomment the corresponding commands prior to applying configuration.
! Border Gateway Protocol (BGP) Configuration
! Uncomment below lines if you want to use BGP.
! router bgp ${bgpASN}
! address-family ipv4 unicast
! neighbor ${OracleInsideTunnelIpAddress1} remote-as 31898
! neighbor ${OracleInsideTunnelIpAddress1} activate
! network ${onPremCidrNetwork} mask ${onPremCidrNetmask}
! no auto-summary
! no synchronization
! exit-address-family
! Static Route Configuration
! Uncomment below line if you want to use static routing.
! route outside ${VcnCidrNetwork} ${VcnCidrNetmask} ${OracleInsideTunnelIpAddress1}
! Disable NAT for VPN Traffic
! If you are using NAT for traffic between your inside and outside interfaces, you might need to disable NAT for traffic between your on-premises network and the Oracle VCN.
! Two objects are created for this NAT exemption. 'obj-OnPrem' represents the on-premises network as a default route, and 'obj-oracle-vcn-1' represents the VCN CIDR block used in Oracle Cloud Infrastructure.
! If different address ranges are required, modify this template before applying the configuration.
! object network obj-onprem
! subnet 0.0.0.0 0.0.0.0
! object network obj-oracle-vcn-1
! subnet ${vcnCidrNetwork} ${vcnCidrNetmask}
! nat (inside,outside) source static obj-onprem obj-onprem destination static obj-oracle-vcn-1 obj-oracle-vcn-1
Verificación
Se incluyen los siguientes comandos de ASA para la solución básica de problemas. Para obtener más información, consulte el documento de Cisco Solución de problemas de IPSec.
Utilice el comando siguiente para verificar que las asociaciones de seguridad de ISAKMP se están creando entre los dos peers.
show crypto isakmp sa
Utilice el comando siguiente para verificar el estado de todas sus conexiones BGP.
show bgp summary
Utilice el comando siguiente para verificar la tabla de rutas de ASA.
show route
Un servicio de supervisión también está disponible en Oracle Cloud Infrastructure para supervisar de forma activa y pasiva los recursos en la nube. Para obtener información sobre cómo supervisar la VPN de sitio a sitio, consulte Métricas de VPN de sitio a sitio.
Si tiene alguna incidencia, consulte Solución de problemas de VPN de sitio a sitio.