The way to create a Website-to-Website VPN in Terraform


To create a site-to-site VPN utilizing Terraform, you should utilize the aws_vpn_gateway and aws_vpn_connection sources from the AWS supplier. Right here’s an instance Terraform configuration to create a site-to-site VPN:

useful resource "aws_vpn_gateway" "vpn_gateway" {
  vpc_id       = "<VPC_ID>"
  tags = {
    Title = "SiteToSiteVPN"
  }
}

useful resource "aws_vpn_connection" "vpn_connection" {
  customer_gateway_id = "<CUSTOMER_GATEWAY_ID>"
  vpn_gateway_id     = aws_vpn_gateway.vpn_gateway.id
  kind               = "ipsec.1"
  static_routes_only = true

  tags = {
    Title = "SiteToSiteVPNConnection"
  }
}

useful resource "aws_vpn_connection_route" "vpn_connection_route" {
  destination_cidr_block = "<DESTINATION_CIDR_BLOCK>"
  vpn_connection_id     = aws_vpn_connection.vpn_connection.id
}

Within the above Terraform configuration, you might want to exchange <VPC_ID> with the ID of the VPC the place the VPN gateway can be connected, <CUSTOMER_GATEWAY_ID> with the ID of the client gateway representing the distant web site, and <DESTINATION_CIDR_BLOCK> with the CIDR block of the distant community you need to hook up with.

This configuration creates a VPN gateway (aws_vpn_gateway), a VPN connection (aws_vpn_connection), and a VPN connection route (aws_vpn_connection_route). The VPN gateway is connected to the desired VPC, and the VPN connection is related to the client gateway and the VPN gateway. The VPN connection route specifies the vacation spot CIDR block that ought to be routed via the VPN connection.

After you have the Terraform configuration prepared, you’ll be able to initialize the Terraform challenge, plan the infrastructure adjustments, and apply them utilizing the Terraform CLI. The VPN sources can be provisioned primarily based on the configuration supplied.

Related Articles

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Latest Articles