Skip to content

Terraform から AWS の Default Security Group を操作する

Terraform で AWS を構成管理する際、VPC を新規作成した際に自動作成される Default Security Group に設定を行いたい場合があります。 そういったケースでは Resource: aws_default_security_group を利用することで Default Security Group を Terraform で簡単に扱えます。

サンプル .tf ファイル

以下はサンプル .tf ファイルです。 Default Security Group に対してプライベートアドレスを追加しています。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
variable "prefix" { default = "TEST_" }

provider "aws" {
  access_key = "ACCESS-KEY"
  secret_key = "SECRET-KEY"
  region     = "ap-northeast-1"
}

# VPC

resource "aws_vpc" "vpc-1" {
  cidr_block = "10.0.0.0/16"
  tags       = { Name = "${var.prefix}vpc" }
}

# Security Group

resource "aws_default_security_group" "sg-default" {
  vpc_id = aws_vpc.vpc-1.id
  tags   = { Name = "${var.prefix}default" }
}

resource "aws_security_group_rule" "sg_rule1" {
  type              = "ingress"
  protocol          = "all"
  from_port         = 0
  to_port           = 0
  cidr_blocks       = ["10.0.0.0/8", "172.16.0.0/12", "192.168.0.0/16"]
  security_group_id = aws_default_security_group.sg-default.id
}