능지차이

[AWS] aws cli / Security Group rule add, remove / 보안그룹 권한 수정 본문

AWS & Server, Network

[AWS] aws cli / Security Group rule add, remove / 보안그룹 권한 수정

ITguny 2021. 10. 14. 00:56

사전 준비

1. AWS CLI를 사용하기 위한 IAM 권한이 부여된 EC2 instance가 필요하다. 

2021.10.14 - [AWS & Server, Network] - [AWS] aws cli EC2 인스턴스에서 사용하기 위한 IAM 설정

 

2. 실습을 진행할 보안그룹이 필요하다. 

2021.10.14 - [분류 전체보기] - [AWS] aws cli / Security Group Create, Delete / 보안그룹 생성, 삭제

 

 

 

사례와 AWS CLI를 통한 Security Group Edit의 장점

 

Amazon Web Service의 대표적인 서비스인 EC2 인스턴스를 사용하다보면, 보안그룹을 수정해야하는 일이 생긴다. 예를 들자면 docker container을 생성하거나, 삭제하는 경우, httpd, nginx와 같은 웹서비스를 운영하는 경우, 등...이 있다.

 

일반적으로 보안그룹을 수정하기 위해서는 AWS의 EC2 대시보드를 통해서 보안그룹으로 이동을 하여 규칙을 추가하거나, 삭제한다. 하지만 이 경우는 꽤나 번거로움을 알 수 있다. 보안그룹을 직접 EC2 terminal 창에서 보안그룹을 수정할 수 있다면 아주 편리하고, 빠르게 작업이 가능하다는 장점이 있다. 

 

AWS CLI를 통한 Security Group Rule Edit

 

*인바운드*

 

*생성 명령어*

aws ec2 authorize-security-group-ingress --group-id <security group id> --protocol <tcp/udp> --port <port number> --cidr <cidr>

*삭제 명령어*

aws ec2 revoke-security-group-ingress --group-id <security group id> --protocol <tcp/udp> --port <port number> --cidr <cidr>

<>는 변수를 의미함.

 

*아웃바운드*

 

*생성 명령어*

aws ec2 authorize-security-group-egress --group-id <security group id> --protocol <tcp/udp> --port <port number> --cidr <cidr>

*삭제 명령어*

aws ec2 revoke-security-group-egress --group-id <security group id> --protocol <tcp/udp> --port <port number> --cidr <cidr>

<>는 변수를 의미함.

 

구성 확인

 

해당 명령어를 입력한뒤 AWS console 또는 그 외의 방법을 이용해서 확인해보면 정상적으로 명령어가 작동되는것을 확인할 수 있다. 처음에는 옵션도 많고, 명령어가 길어서 어렵지만, 하다보면 규칙성도 있고, 익숙해진다면 아주 익숙하게 사용이 가능하다. 

 

+ AWS CLI 명령 중 Security Group ID가 아닌 Security Group Name을 드물게 수정할 일이 있다. (아마 거의 없을것)

만약 AWS VPC가 아닌 AWS Classic을 사용할 경우에는 Security Group Name을 사용해서 작업해야 한다.

 

+ 전체 보안그룹 조회 AWS CLI 명령어

# 전체 보안그룹 조회
aws ec2 describe-security-groups

# 원하는 Security Group만 조회하는것도 가능하다.
aws ec2 describe-security-groups --group-ids <security group id>

해당 명령어를 이용하여 현재 리전의 존재하는 모든 보안그룹의 설정 rule과 ID, Name 등 모든 정보가 확인이 가능하다.

 

AWS CLI Command Reference (AWS 공식문서)

https://docs.aws.amazon.com/cli/latest/reference/ec2/authorize-security-group-ingress.html

https://docs.aws.amazon.com/cli/latest/reference/ec2/authorize-security-group-egress.html