Task 7 Security group생성

Info

- Terraform VPC Security Group Example

- VPC CIDR 은 10.0.0.0/16

- Subnet CIDR 은 10.X.0.0/24

- Subnet 은 본인이 선택한 Region의 Availability Zone 수만큼 생성 (ex. us-east-1 -> 4 Availability Zones -> 4 Subnets)

- 각 Availability Zone 별로 Public Subnet, Private Subnet 페어로 한 개씩 존재하도록 생성

- Internet Gateway 생성 후 VPC에 Attach

- Route Table 은 Public 과 Private Route Table 한 개씩 총 2개 생성

- Public Route Table 은 Internet Gateway 로 통신 가능하도록 Route 추가 후 Public Subnet 4개와 연결 (Associatation)

- Private Route Table 은 Route 추가 없이 Private Subnet 4개와 연결 (Associatation)

- NAT Gateway 용 EIP 생성

- Public Subnet에 NAT Gateway 생성

- Private Route Table에 외부 통신을 위해서 NAT Gateway 로 통신 가능하도록 Route 추가

- SSH 허용을 위한 Admin 용 Security Group 과 HTTP 웹 접속 허용을 위한 Web Security Group, 총 두개 Security Group 생성

- Admin Security Group 에는 SSH(20) 포트를 본인 Cloud9 Public IP 허용하는 Rule 생성

- Web Security Group 에는 HTTP(80) 포트를 모두 허용하는 Rule 생성

1) Security group실습을 진행하기 위해서 06-security-group폴더로 경로 이동

- cd ../06-security-group/

2) 업로드 된 폴더 06-security-group하위 파일인 security_group.tfvars 파일 실행

변수설정

- security_group.tfvars 파일 확인 실행 환경에 맞게 변경

- # security_group.tfvars 파일 prefix = "user**" region = "ap-northeast-2" vpc_cidr = "10.0.0.0/16" public_subnets = [ {cidr = "10.0.1.0/24", availability_zone = "ap-northeast-2a"}, {cidr = "10.0.3.0/24", availability_zone = "ap-northeast-2c"}, ] private_subnets = [ {cidr = "10.0.11.0/24", availability_zone = "ap-northeast-2a"}, {cidr = "10.0.13.0/24", availability_zone = "ap-northeast-2c"}, ] admin_access_cidrs = ["<<YOUR_LOCAL_IP_CIDR>>"]

- Prefix는 알맞게 변경

- Region 은 본인이 사용할 region 코드로 변경

- Subnet의 Availability Zone 값은 Region에 맞게 변경

- SSH 접속 허용할 IP 값 변경

  • Your IP address is:의 copy 클릭

  • copy한 IP값과 /32(CIDR 값)를 입력

3) Init 명령으로 Terraform 수행을 위한 provider plugin 초기화 및 다운로드 수행

- terraform init

4) Plan 명령으로 Terraform 수행 전 실행 시뮬레이션 확인

- terraform plan --var-file=security_group.tfvars

5) Apply 명령으로 Terraform을 통한 Resource 생성 수행

- terraform apply --var-file=security_group.tfvars

6) 실행 내용 확인

- 선택한 Region에 VPC, Subnet, Internet Gateway, Route Table, NAT Gateway, Security Group 생성 내용 확인

7) Resource 삭제

- destroy

- Destroy 명령으로 생성된 VPC 삭제 수행

- terraform destroy --var-file=security_group.tfvars

8) 폴더 삭제

- Cloud9 왼쪽 메뉴에 06-security-group폴더 우 클릭 후 Delete

Last updated