| Name | Version |
|---|---|
| aws | 3.35.0 |
| Name | Version |
|---|---|
| aws | 3.35.0 |
No modules.
| Name | Type |
|---|---|
| aws_security_group.security_group | resource |
| Name | Description | Type | Default | Required |
|---|---|---|---|---|
| description | Description of Security group | string |
n/a | yes |
| egress | List of egress rules | map(object({ |
n/a | yes |
| ingress | List of ingress rules | map(object({ |
n/a | yes |
| name | Name of Security group | string |
n/a | yes |
| tags | Mention the tags | any |
n/a | yes |
| vpc_cidr | CIDR block for the VPC | string |
n/a | yes |
| vpc_id | ID of the VPC where to create security group | string |
n/a | yes |
| Name | Description |
|---|---|
| arn | The ARN of the security group |
| id | The ID of the security group |
Here is examples of how you can use this module, we created 2 different type of groups i.e. open to public access, and DB security groups.
module "sg_public" {
source = "../sg/"
vpc_cidr = var.vpc_cidr
vpc_id = var.vpc_id
ingress = {
"http_rules_ingress" = {
description = "For HTTP"
from_port = 80
to_port = 80
protocol = "tcp"
cidr_blocks = ["0.0.0.0/0"]
security_groups = []
},
"ssh_rules_ingress" = {
description = "For SSH"
from_port = 22
to_port = 22
protocol = "tcp"
cidr_blocks = ["0.0.0.0/0"]
security_groups = []
}
}
egress = {
"Internet_open_egress" = {
description = "Internet open egress"
from_port = 0
to_port = 0
protocol = "-1"
cidr_blocks = ["0.0.0.0/0"]
security_groups = []
}
}
name = "Public security group"
description = "Public secuirty group"
tags = {
Terraform = "true"
Environment = "dev"
}
}
module "sg_rds" {
source = "../sg/"
vpc_cidr = var.vpc_cidr
vpc_id = var.vpc_id
ingress = {
"http_rules_ingress" = {
description = "For HTTP"
from_port = 3306
to_port = 3306
protocol = "tcp"
cidr_blocks = []
security_groups = ["sg-035962aecd67def34"]
}
}
egress = {
"Internet_open_egress" = {
description = "Internet RDS egress"
from_port = 0
to_port = 0
protocol = "-1"
cidr_blocks = ["0.0.0.0/0"]
security_groups = []
}
}
name = "RDS security group"
description = "RDS secuirty group"
tags = {
Terraform = "true"
Environment = "rds_dev"
}
}