# Túnel VPN sitio a sitio

### Conectar software autohospedado mediante VPN sitio a sitio

Permita que Violet se conecte directamente a sus herramientas de software autohospedadas estableciendo un túnel de Red Privada Virtual (VPN) sitio a sitio. Esto proporciona una conexión segura, cifrada y punto a punto que oculta su dirección IP. Las VPN sitio a sitio utilizan el protocolo IPsec para cifrar los datos.

Las siguientes instrucciones describen la configuración para una VPN sitio a sitio con una instancia VioletGov (alojada en AWS GovCloud).

#### Paso 1. Intercambio de información

**Primero, proporcione lo siguiente a su punto de contacto de Violet:**

* IP pública estática de su dispositivo VPN (no debe estar detrás de NAT)
* Su ASN (si usa BGP) o la lista de bloques CIDR internos (si enrutamiento estático)

**Violet proporcionará lo siguiente:**

* IP(s) pública(s) de AWS de los extremos del túnel VPN (2 túneles, redundantes)
* Claves precompartidas (una por túnel)
* Direcciones IP internas del túnel (para BGP o enrutamiento estático)
* ASN de AWS (predeterminado 64512 a menos que se anule)
* Rangos CIDR de la VPC

Tenga en cuenta que su configuración debe permitir UDP 500/4500 y ESP a través de su firewall externo (consulte la sección siguiente sobre requisitos mínimos de AWS GovCloud para más información).

***

#### Paso 2. Creación del túnel VPN

Primero, el equipo de Violet:

1. Creará un **Customer Gateway** objeto (apuntando a la IP pública y ASN del cliente)
2. Creará un **VPN Gateway** (VGW) o utilizará un **Transit Gateway** adjunto a la VPC
3. Creará un **Conexión VPN** entre el VGW/TGW y el Customer Gateway
4. Compartirá el **archivo de configuración VPN** (XML o texto) que genera AWS, adaptado a proveedores comunes (Cisco, Palo Alto, Fortinet, etc.)

***

#### Paso 3. Configure su dispositivo

A continuación, deberá configurar su dispositivo (firewall/enrutador) de la siguiente manera:

* Importe o configure manualmente los dos túneles utilizando las IPs, las PSK y los parámetros proporcionados por AWS.
* Asegúrese de que el dominio de cifrado (su CIDR interno) coincida con lo acordado.
* Configure cualquiera de los siguientes:
  * **BGP**: anuncie sus prefijos y acepte los CIDR de la VPC de AWS.
  * **Rutas estáticas**: agregue los CIDR de la VPC de AWS en las ACL criptográficas de la VPN.

***

#### Paso 4. Verificación

La conexión ahora debería estar lista para ser probada y verificada. Para ello, necesitaremos:

* Hacer ping entre subredes internas
* Confirmar que su túnel aparece como **ACTIVO** en su dispositivo
* Probar la conmutación por error bajando un túnel (AWS mantiene dos para redundancia)

***

#### Recursos adicionales

<details>

<summary>Requisitos mínimos de AWS GovCloud</summary>

GovCloud requiere criptografía más fuerte que AWS comercial. Los requisitos mínimos son los siguientes:

* **IKE (Fase 1)**
  * AES-128 o AES-256
  * SHA-256 o más fuerte (SHA-1 no permitido)
  * Grupo DH 14 (2048 bits) o superior
  * Tiempo de vida: 28.800 s (8 h)
* **IPsec (Fase 2)**
  * AES-128 o AES-256
  * SHA-256 o más fuerte
  * PFS (Grupo DH 14+) requerido
  * Tiempo de vida: 3.600 s (1 h)
* **Puertos/protocolos:** UDP 500, UDP 4500, protocolo IP 50 (ESP) - necesario para el intercambio de claves entre túneles

</details>
