cloudformation-coverage-roadmap icon indicating copy to clipboard operation
cloudformation-coverage-roadmap copied to clipboard

AWS::EC2::VPNConnection VpnTunnelOptionsSpecification - All tunnel settings ( like Phase1 / Phase2 / ike etc) should be configurable through cf

Open goyertp opened this issue 5 years ago • 23 comments

Instructions for CloudFormation Coverage New Issues Template

  1. Title AWS::EC2::VPNConnection VpnTunnelOptionsSpecification - Alle Tunnel Settings ( like Phase1 / Phase2 / ike etc) should be configurable through cf

  2. Scope of request -> AWS::Service::ResourceType::TheResource-ExistingAttribute supports A and B today, but not new C feature.

AWS Resource supports only following attributes:

{ "PreSharedKey" : String, "TunnelInsideCidr" : String } Would really like to have { "PreSharedKey" : String, "TunnelInsideCidr" : String "DPDTimeoutSeconds": Integer "IKEVersions": String "Phase1DHGroupNumbers": String "Phase1EncryptionAlgorithms": String "Phase1IntegrityAlgorithms": String "Phase1LifetimeSeconds": Integer "Phase2DHGroupNumbers: Integer "Phase2EncryptionAlgorithms: String "Phase2IntegrityAlgorithms: String "Phase2LifetimeSeconds: Integer "RekeyFuzzPercentage: String "RekeyMarginTimeSeconds: Integer "ReplayWindowSize: Integer } 3. Expected behavior -> Can Set Tunneloptions via CF

  1. Test case recommendation (optional) -> Cloud Formation Sets Code

  2. Links to existing API doc (optional)

https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ModifyVpnTunnelOptionsSpecification.html

  1. Category tag (optional)

Cloud Formation

goyertp avatar Apr 01 '20 13:04 goyertp

This is required to allow VPN connections to be created with third parties where they cannot just use the defaults chosen by AWS. I always try to do things the correct way (using CloudFormation) and am often frustrated by the lack of support.

reidca avatar Aug 04 '20 14:08 reidca

This feature should be relatively easy to be implemented?

rkno82 avatar Sep 14 '20 14:09 rkno82

Seems like Security First is something to write on slides, but not to prioritize features.

andreaswittig avatar Nov 18 '20 08:11 andreaswittig

@reidca For a lot of those options, the AWS side of the VPN Connection will accept more values than what's in the generated configuration file (iirc Phase1EncryptionAlgorithms is one of those). Are there any specific combinations that are giving you trouble?

benbridts avatar Nov 18 '20 10:11 benbridts

@reidca For a lot of those options, the AWS side of the VPN Connection will accept more values than what's in the generated configuration file (iirc Phase1EncryptionAlgorithms is one of those). Are there any specific combinations that are giving you trouble?

These settings simply are not in the CloudFormation resource type therefore cannot be set. I had to write my own Custom resource to set them using Boto3 which whilst working wasted a lot of time for something that should have just been there.

reidca avatar Nov 19 '20 11:11 reidca

@reidca I know, I meant that in a lot of cases you do not have to change them - the defaults will work with multiple configurations, even if the generated configuration only contains one value for each setting.

benbridts avatar Nov 19 '20 11:11 benbridts

Hi,

im writing my own CRs too and for this this is ridiculous. AWS is providing so many cf features. But these security features cannot be set via cf? Thats sad!

I would realy appreciate the integration of this cf coverage.

goyertp avatar Nov 19 '20 13:11 goyertp

Hi,

im writing my own CRs too and for this this is ridiculous. AWS is providing so many cf features. But these security features cannot be set via cf? Thats sad!

I would realy appreciate the integration of this cf coverage.

I have not added this as a repo since it was not in GitHub but in case it's useful I have put the lambda function into a gist which you can find here: https://gist.github.com/reidca/c181d2e959ea070bb902073a690a7c22

The CR uses crhelper which you will need to get from pip.

You may also need to bring your own version of boto3 and botocore since the version in AWS lambda (at the time of writing the CR did not support updating the VPN connection).

boto3==1.14.34 botocore==1.17.35

reidca avatar Nov 19 '20 13:11 reidca

It's absolutely frustrating that resources that have existed for ages aren't properly supported by CF.

CarlosDomingues avatar Sep 01 '21 20:09 CarlosDomingues

Was more than a little surprised to find that this isn't supported by CloudFormation. Apart from being what I'd think most network engineers would consider a critical part of the configuration, many of the defaults (and thus, what you are forced to use without manual intervention) are well below what modern cryptographic security standards recommend. For example:

  • IKE Phase 1 enables DH group 2 (1024-bit MODP Group)
  • IKE Phase 2 enables the above and DH group 5 (1536-bit MODP Group)
  • SHA-1 is enabled for IKE Phase 1 & 2

ralish avatar Jan 31 '22 09:01 ralish

The problem with this being unsupported is, that download configuration defaults to the least secure settings allowed in the tunnel options. If it were to use the highest, it would matter less to limit it to only secure options.

autarchprinceps avatar Jul 13 '22 07:07 autarchprinceps

Why is there a "cloudformation-coverage-roadmap" repository If no one is checking issues and comments here?

srknc avatar Aug 03 '22 11:08 srknc

+1

dxciberaws avatar Aug 10 '22 07:08 dxciberaws

Glad i found this thread after i wasted a day trying to put a vpn in cloudformer, this is a ridiculous omission

nosrepmodnar avatar Aug 24 '22 22:08 nosrepmodnar

+1

laurentlgm avatar Oct 19 '22 19:10 laurentlgm

+1

Mark-CloudNation avatar Jan 26 '23 12:01 Mark-CloudNation

This would also be very useful to setup connection logging, can't fathom why this is unsupported while the API is there ...

shouldn't be this tagged "coverage" ?

bplessis-swi avatar Jan 30 '23 10:01 bplessis-swi

+1 - This makes for a lot of manual configuration

MikeKroell avatar Jan 30 '23 22:01 MikeKroell

Adding my voice and vote. I see I came at an opportune time, with the upgrade to Coming Soon on the roadmap. Is there any timeline that can be provided as to possible release?

createchange avatar Mar 14 '23 15:03 createchange

It has been almost 4 years since the issue was raised. For us this stops us from investigating futher into using AWS all together and are probably switching to Azure.

DaRealMcCloud avatar Apr 09 '24 09:04 DaRealMcCloud

+1 on this

atownsend247 avatar Apr 09 '24 14:04 atownsend247