내맘대로 Study/AWS의 모든것

[실전 무료 AWS] 4. EC2 instance간 통신 (부제:security group 설정)

jinkwon.kim 2021. 9. 16. 00:17
728x90
반응형

[실전 무료 AWS] 목차

 

EC2 instance 간 통신 방법

핵심

    각 EC2 instance를 보호하고 있는 Security group(가상 방화벽)에 rule을 넣어 서로 허용해주거나 Security group(가상 방화벽) 같게  하면 됩니다. 

 

AWS에서의 Security group의 정의 

[원문]

A security group acts as a virtual firewall for your EC2 instances to control incoming and outgoing traffic. Inbound rules control the incoming traffic to your instance, and outbound rules control the outgoing traffic from your instance.

 

[요약] 

EC2 instances를 보호하고 있는 가상의 방화벽(=security-group)이다. 

security group이 할 수 있는 일은 inbound/outbound rule 설정을 통해서 inbound/outbound 트래픽을 제어할 수 있다. 

https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-security-groups.html

 

Amazon EC2 security groups for Linux instances - Amazon Elastic Compute Cloud

Thanks for letting us know this page needs work. We're sorry we let you down. If you've got a moment, please tell us how we can make the documentation better.

docs.aws.amazon.com

 

Security group의 도식 표현

 

왜 Security group에 rule을 추가하거나 같은 Security gorup에 있어야지만 통신이 가능 한가?

     security group는 가상 방화벽이라고 했습니다.

EC2 instance는 처음 생성될 때 security group을 정해 주지 않으면 개별 Security group을 생성하고 EC2 instance를  Security group안으로 넣어 보호합니다. 그렇기 때문에 EC2 instance 각각의 security group을 rule을 통하여 서로 허용시켜주거나  EC2 instance의 security group을 통일하지 않으면 통신이 안 되는 것입니다. 

 

아래 그림은 실제로 [실전 무료 AWS] 3. AWS에 내 PC 만들기(EC2)를 통해서 생성한 2개의 아무런 설정도 하지 않은 EC2 instance의 secutiry group 정보입니다. 실제로도 security group이 다름을 확인할 수 있습니다. 

 

Security group을 rule을 통하여 방화벽을 해제 후  EC2 instance 간 통신 하기

총 2단계로 연결할 수 있습니다. 

1단계 : 서로 연결할 instance의 security group 정보 확인

2단계 : 각 security group의 inbound에 접속을 허용할 seurity group을 추가

 

1단계.  서로 연결할 instance의 security group 정보 확인

    - instance를 선택 후 security group의 link를 누르면 상세 항목을 볼 수 있습니다.

instance의 상세 security group 정보 

 

위 과정을 통해서 instance들의 상세 security group 정보를 보겠습니다.

표 해석 : 아래 표의 security group 상태는 inbound로는 ssh 만 열러 있고 outbound로는 모든 게 열려있는 상태입니다.

항목 EC2 instance 1 EC2 instance 2
security groups name launch-wizard-2 launch-wizard-3
security groups ID sg-019ac3b683cdeee84 sg-06105f06e4a4407b0
inboud rule Security group rule ID
    - sgr-06298180b72ad27b9
IP version
    - IPv4
Type
    - SSH
Protocol
    - TCP
Port range
    - 22
Source
    - 0.0.0.0/0
Security group rule ID
    - sgr-0d1d99e2739150dc8
IP version
    - IPv4
Type
    - SSH
Protocol
    - TCP
Port range
    - 22
Source
    - 0.0.0.0/0
outbound rule Security group rule ID
    - sgr-0f6917bfe2b581309
IP version
    - IPv4
Type
    - All traffic
Protocol
    - All
Port range
    - All
Source
    - 0.0.0.0/0
Security group rule ID
    - sgr-03bfdc933f06cb39b
IP version
    - IPv4
Type
    - All traffic
Protocol
    - All
Port range
    - All
Source
    - 0.0.0.0/0

2단계. 각 security group의 inbound에 접속을 허용할 seurity group을 추가

룰 설정 선택

EC2 instance1에 접근을 허용할 security group rule 추가

rule 추가 완료된 화면

ping test 화면 

EC2 instance 2에서 EC2 instance 1로 ping이 잘 되는 것이 확인할 수 있습니다.

 

Security group을 같게 설정하여 EC2 instance 간 통신 하기

총 3단계로 진행됩니다. 

1단계 : 신규 security group 생성 

2단계 : 신규 security group에 룰 추가 

3단계 : 각 instance의 security group 변경

 

1단계. 신규 security group 생성 

2단계. 신규 security group에 룰 추가 

    mygroup으로부터 오는 traffic은 모두 허용하게 rule을 추가합니다.

3단계. 각 instance의 security group 변경

    각 instance의 acttion->networking->change Security Groups를 선택하여 Security Group을 변경합니다.

변경할 security group 선택, 같은 security group에 포함할 instance는 모두 변경해 줍니다.

 

통신 테스트 결과 쌍방 간 통신이 아주 잘 됩니다.

 

728x90
반응형