VPN AWS Site-to-site
Tags: aws, vpn, tutorial
Published: 2023-09-13 20:56:33

1- Caso não exista para a VPC que será fechada a conexão , crie um “Virtual private gateway”.


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1f98ttfpaen52w1r5f2l.png)

1.1 - Apos criar atache-o a sua vpc

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ydcaklwrue0qeebbgaez.png)


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/b5ug0mio9hqa22hq8nr9.png)


2 - Customer gateways - O Customer gateway sera o IP publico do Firewall que fechara a VPN com a AWS (deve ser fornecido pelo cleinte). 
Após ter essa informação crie o Customer gateway para a sua conexão.

OBS:

* So pode ser usado 1 Customer gateway por conexão de VPN.

*É possível trocar o Customer gateway configurado em um túnel por um novo.

- Criando um Customer gateway:


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/s14h5o56s2nfisib11cd.png)

3- Criando o tunel de VPN

- Va em VPN-Site-to-site  e clique em Create VPN connection

Nesse caso iremos utilizar o Privete gateway que criamos. (É possível criar um tunel utilizando Transity Gateway ao invés do virtual private gateway, (mas isso é feito apenas em ambientes maiores, o mais utilizado e o VPG). 
Iremos utilizar também o Costumer Gateway  que criamos.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ud02x79ryy7ttojwgyjg.png)

- Em rota iremos definir como statica, raramente sera utilziada Dynamic.
- Satic IP prefixes e os ranges de IP privado da rede que fechara o tunel, pode ser inserido mais de um.
- Nesse exemplo sera utilizado o 192.168.1.0/24 e 192.168.10.0/24
- Em casos em que o cliente tiver mais de um range de IP privado, na opção  “Local IPv4 network CIDR”, pode ser colocado 0.0.0.0/0, mas se for somente um range de IP privado pode inserir ele ao invez do 0.0.0.0/0.
- Nesse caso iremos utilziar somente uma VPC com somente um range de IP 172.31.0.0/16, então em
 “ Remote IPv4 network CIDR” iremos colocar somente ele. Mas em casos que tenha mais de um range na VPC ou seja um ambiente com Transity Gateway pode colacado como 0.0.0.0/0


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/k9onpdq617kimkj2nywg.png)


- Nesse formato ja é possível criar a VPN nas configurações Default, basta da um Create VPN Conection e baixar o arquivo de configurações para a outra ponta direto do console AWS. Porem caso o cliente deseja uma configuração personalizada de Private Key e Criptografia basta expandir as configurações do Tunel 1 e Tunel 2 e aplica-las conforme for necessário.

4- Definindo configurações personalizadas para o Tunel. 

- Pre-shared key - A pre-shared key pode ser personalizada, porém o console da AWS não aceita caracteres especiais

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/880aatadbh0q4t4iq7jt.png)

- Edit tunnel 1 options - Por padrão, todas as opções de criptografia já vêm habilitadas, permitindo que a outra ponta possa usar qualquer uma para fechar o túnel. No entanto, o cliente pode solicitar uma criptografia específica. Caso isso ocorra, basta seguir o exemplo e selecionar as opções desejadas.


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/2d1uffx2oa46xgbyjxy6.png)

- É possível também definir um Lifetime personalizado para a phase 1 e phase 2 (respeitando os limites impostos pela AWS)


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/voy7i8w8sdp9bjisgdlb.png)

Pronto, agora basta replicar as configurações do Tunel 1 para o Tunel 2 (redundância AWS). 

Obs:

Caso o túnel não se feche, pode-se validar junto à outra ponta as configurações personalizadas aplicadas, todas elas são editáveis após a criação do túnel.


Após a criação do tunel va na Route table das subnetes que deseja que comunique com essa vpn e habilite a propagação de rotas.


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ut0v45lyc2it02726irw.png)



![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/n2na2msdokprker5314g.png)