Terraform:允许 aws 安全组内的所有内部流量

Terraform: Allow all internal traffic inside aws security group

我试图允许实例之间的所有 tcp 流量,否则拒绝所有入口和出口流量。

“cidr_blocks”的问题,在 aws 控制台中我可以 select 安全组但是在 terraform 中如何实现类似的东西。

resource "aws_security_group" "default" {

  name = "terraform_example" 

  ingress {
    from_port   = 0
    to_port     = 0
    protocol    = "-1"
    cidr_blocks =  ????
  }

}

在您的入口规则规范中设置 self = true to allow traffic inside your Security Group. To allow traffic from a different Security Group, use the security_groups 参数。在这两种情况下,您都可以省略 cidr_blocks 参数。

  • 如果您的要求是允许来自互联网的所有流量,您可以使用
    cidr_blocks      = ["0.0.0.0/0"] 
    ipv6_cidr_blocks = ["::/0"]

  • 如果您想允许来自已在 AWS 中创建的指定 VPC 的流量,您可以提供该 cidr 的变量
    cidr_blocks      = [aws_vpc.main.cidr_block]
    ipv6_cidr_blocks = [aws_vpc.main.ipv6_cidr_block]

  • 如果您的要求是允许来自特定安全组,我们也可以这样做
    security_groups = [ "aws_security_group.main_sg1.name", "aws_security_group.main_sg2.name" ]