Terraform (AWS) создает соединение VPN IPSec с параметрами, отличными от параметров по умолчанию

Я использую Terraform для развертывания моей инфраструктуры на AWS и сохранения состояния в файле .tfstate. В моем приложении мне нужно подключиться к VPN в другие сети, где администратор другой сети определил параметры соединения IPSec ESP, которым должно придерживаться VPN-соединение на моем конце.

Используя Terraform, я создаю VPN-шлюз и клиентский шлюз с параметрами удаленной сети, насколько это возможно. Затем я создаю VPN-соединение и соответствующий маршрут. Вот мой код VPN в Terraform:

resource "aws_vpn_gateway" "vpn_gw" {
    vpc_id = "${aws_vpc.default.id}"

    tags {
        Name = "default"
        Terraform = true
    }
}

resource "aws_customer_gateway" "customer_gw" {
    bgp_asn = 65000
    ip_address = "172.0.0.1"
    type = "ipsec.1"
}

resource "aws_vpn_connection" "default" {
    vpn_gateway_id = "${aws_vpn_gateway.vpn_gw.id}"
    customer_gateway_id = "${aws_customer_gateway.customer_gw.id}"
    type = "ipsec.1"
    static_routes_only = true
}

resource "aws_vpn_connection_route" "office" {
    destination_cidr_block = "192.168.10.0/24"
    vpn_connection_id = "${aws_vpn_connection.default.id}"
}

Я должен иметь возможность установить следующие параметры в моем VPN-туннеле для фазы 1 и фазы 2 соединения:

Фаза 1

  • Метод аутентификации, например Предварительно общий секрет
  • Схема шифрования, например АЙК
  • Группа Диффи-Хеллмана например Группа 2
  • Алгоритм шифрования, например AES-256
  • Алгоритм хеширования, например SHA-1
  • Основной или агрессивный режим, например Основной режим
  • Срок службы (для повторных переговоров) например 86400

Фаза 2

  • Инкапсуляция (ESP или AH) например ESP
  • Алгоритм шифрования, например. AES-256
  • Алгоритм аутентификации, например SHA-1
  • Совершенная прямая секретность, например NO-PFS
  • Срок службы (для повторных переговоров) например 3600

Документы по клиентскому шлюзу VPN показывают, что вы не можете самостоятельно установить такое количество параметров: https://www.terraform.io/docs/providers/aws/r/customer_gateway.html Boto API также не позволяет устанавливать какие-либо дополнительные параметры.

Есть ли способ установить эти параметры (программно)?


person Loek Janssen    schedule 06.11.2016    source источник


Ответы (1)


К сожалению, ответ на ваш вопрос отрицательный. Это не проблема Terraform как таковая, это ограничение услуги, предоставляемой AWS. Вы не получите такого уровня конфигурации с базовым решением AWS.

Чтобы достичь того, что вы ищете, вам нужно развернуть экземпляр EC2 и либо

  • Создайте свой собственный с помощью OpenSwan, VyOS и т. Д., Например, https://aws.amazon.com/marketplace/pp/B00JK5UPF6 (только расходы на AWS)
  • Используйте устройство VPN из торговой площадки AWS, например https://aws.amazon.com/marketplace/pp/B00OCG4OAA (вам нужно будет заплатить поставщику лицензионный сбор, а также ваши расходы на AWS)
person Bill Burroughs    schedule 16.04.2017
comment
Для полноты картины AWS предлагает 4 варианта: docs.aws .amazon.com / AmazonVPC / latest / UserGuide / - person Bill Burroughs; 16.04.2017