如何指定安全组中的所有端口 - CloudFormation

Ste*_*ong 15 amazon-web-services aws-cloudformation amazon-vpc

我现在有这样的CloudFormation脚本:

    "SecurityGroupIngress" : [{
      "IpProtocol" : "tcp",
      "FromPort" : "0",
      "ToPort" : "65535",
      "CidrIp" : "0.0.0.0/0"
    }]
Run Code Online (Sandbox Code Playgroud)

它看起来像这样,这很好:

在此输入图像描述

但我想知道如何更新模板以获取此信息:

在此输入图像描述

请注意Ports说全部.我也想知道他们是不是有所不同?

the*_*247 11

如果您希望允许所有协议和所有端口,则可以执行以下操作

{
  "IpProtocol" : "-1"
  "CidrIp" : "0.0.0.0/0"
}
Run Code Online (Sandbox Code Playgroud)


hel*_*loV 10

我发布的原始解决方案(并由原始海报接受)停止工作,因为AWS不再支持它.为了避免一连串的downvotes,我删除了答案.替代方案是:

  • 指定端口0和65535

要么

打开所有端口的所有协议,而不仅仅是TCP(如建议thewire247如下图)

"SecurityGroupIngress" : [{
  "IpProtocol" : "-1",
  "CidrIp" : "0.0.0.0/0"
}]
Run Code Online (Sandbox Code Playgroud)

  • 不幸的是,这似乎不起作用(至少不再).我试过这个并且得到了`TCP/UDP(from)port(-1)超出范围`.我必须明确指定`0`和`65535` :( (20认同)