강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

zzzzz님의 프로필 이미지
zzzzz

작성한 질문수

비전공자도 이해할 수 있는 AWS 입문/실전

보안그룹질문입니다.

작성

·

24

·

수정됨

0

  1. 로드밸런서용 보안그룹랑 EC2용 보안그룹 인바운드 규칙을 0.0.0.0/0이렇게 두니까 불안해서 혹시 아래처럼 설정하는것 맞자요?

  2. ec2에서 보안그룹을 아래처럼 냅두면 https로 접속이 안되는데요. 근데 0.0.0.0/0으로 풀어놓으면 됩니다. 어떻게 해야하나요?

  3. ec2에서 ssh를 내 ip로 등록하니까 크롬 aws 에서 접속인안되는데 어떻게 해야하나요? 0.0.0.0/0으로 풀어놓으면 됩니다. 요즘 gpt가 할루시네이션 많이 나와서 여쭤봅니다. 요즘 존댓말로 바꾸라고 하면 내용을 다른 내용으로 바꾸는 경우가 있어서 그대로 질문드립니다.

 

가장 많이 쓰는 패턴은:

  1. 로드밸런서용 보안그룹 (LB-SG)

    • 인터넷에서 LB까지만 열어둠.

  2. EC2용 보안그룹 (EC2-SG)

    • 외부는 막고, LB-SG에서만 접속 허용.

    • SSH는 필요하면 내 IP에서만 열기.

즉,
인터넷 → [LB-SG] → 로드밸런서 → [EC2-SG] → EC2 인스턴스
이 구조로 흘러가게 만드는 거야.


2. 로드밸런서 보안그룹 설정 (LB-SG)

사진에 있는 규칙은 사실상 로드밸런서 보안그룹에 붙이는 게 맞음 (단, SSH는 필요 없음).

인바운드 예시 (ALB/NLB 공통)

유형프로토콜포트소스HTTPTCP800.0.0.0/0HTTPSTCP4430.0.0.0/0

  • SSH(22)는 로드밸런서에는 절대 필요 없음, 빼는 게 정답.

  • 아웃바운드는 기본 모든 트래픽 / 0.0.0.0/0 그대로 둬도 무방.

콘솔에서 적용 방법

  1. EC2 콘솔 → 왼쪽 메뉴 보안그룹보안 그룹 생성

  2. 이름: lb-sg 같은 걸로.

  3. 인바운드 규칙에 위 표대로 추가.

  4. 로드밸런서 선택 → 보안 → 보안 그룹 편집 → 방금 만든 lb-sg 선택.


3. EC2 인스턴스 보안그룹 설정 (EC2-SG)

EC2는 직접 인터넷에 안 열고, 로드밸런서 보안그룹에서만 열어주는 게 포인트.

인바운드 예시

유형프로토콜포트소스HTTPTCP80LB-SG (보안 그룹 선택)HTTPS (필요 시)TCP443LB-SGSSHTCP22내 IP주소/32 (예: 123.123.123.123/32)

여기서 중요한 건 소스

  • 0.0.0.0/0가 아니라

  • “보안 그룹” → lb-sg 선택으로 설정하는 거야.

콘솔에서 적용 방법

  1. EC2 콘솔 → 보안그룹 생성 → 이름 ec2-sg

  2. 인바운드 규칙에 위 표대로 추가

    • HTTP/HTTPS 규칙 추가할 때 소스 타입을 “사용자 지정” 말고 “보안 그룹”으로 바꾸고 lb-sg 선택

  3. EC2 인스턴스 선택 → 작업 → 보안 → 보안 그룹 변경ec2-sg 붙이기
    (기존에 0.0.0.0/0 열려있는 보안그룹 있으면 떼버려도 됨).

답변 2

0

JSCODE 박재성님의 프로필 이미지
JSCODE 박재성
지식공유자

안녕하세요 ! 질문 잘해주셨어요 !

답변 알림이 누락되어 늦게 질문 확인한 점 죄송합니다ㅠㅠ!

질문해 주신 내용에 대해 하나씩 답변드려볼게요 ~

 

"1. 로드밸런서용 보안그룹랑 EC2용 보안그룹 인바운드 규칙을 0.0.0.0/0이렇게 두니까 불안해서 혹시 아래처럼 설정하는것 맞자요?"

-> 네 맞아요 ! 말씀해 주신 패턴이 AWS에서 권장하는 방식에요 !

LB-SG에서만 외부 트래픽을 받고, EC2-SG는 LB-SG로부터만 트래픽을 허용하는 구조가 보안상 훨씬 안전해요 :)

 

"2. ec2에서 보안그룹을 아래처럼 냅두면 https로 접속이 안되는데요. 근데 0.0.0.0/0으로 풀어놓으면 됩니다. 어떻게 해야하나요?"

-> EC2 보안그룹의 HTTP/HTTPS 인바운드 규칙 소스를 로드밸런서 보안그룹(LB-SG) 으로 설정하셔야 해요 !

소스 타입을 "사용자 지정"이 아니라 "보안 그룹" 으로 선택하고 거기서 lb-sg를 선택해주시면 돼요 !

이렇게 하면 인터넷 → 로드밸런서 → EC2 순으로 트래픽이 흐르게 되어 0.0.0.0/0으로 안 열어두셔도 정상적으로 접속이 돼요 :)

 

"3.ec2에서 ssh를 내 ip로 등록하니까 크롬 aws 에서 접속인안되는데 어떻게 해야하나요? 0.0.0.0/0으로 풀어놓으면 됩니다."

-> 우선 해당 상황은 정상적인 동작이에요! AWS 콘솔에서 브라우저로 SSH 접속하는 기능(EC2 Instance Connect)은 AWS의 IP 대역에서 접속을 시도하기 때문에, 내 IP만 열어두면 당연히 막히게 돼요 !

해결 방법은 간단해요 ! SSH(22번 포트) 인바운드 규칙의 소스를 0.0.0.0/0으로 변경해 주시는 거예요 !

보안상 SSH를 전체 공개하는 게 걸리실 수도 있는데, SSH 키 인증 방식을 사용하고 계시기 때문에 키 파일 없이는 접속이 불가능해서 충분히 안전해요!! 실무에서도 대부분 SSH 키 인증으로 보안을 유지하면서 0.0.0.0/0으로 열어놓고 사용하는 편이에요:)

 

추가로 궁금하신 점 있으시면 언제든 편하게 질문 주세요~~

0

안녕하세요, 인프런 AI 인턴입니다.

zzzzz님, AWS 환경에서 보안 그룹 설정에 대해 질문을 주셔서 감사드립니다. 질문에 맞는 설정을 설명해드리겠습니다.

  1. 로드밸런서 용 보안 그룹(LB-SG) 설정:

    • HTTP와 HTTPS 트래픽을 인터넷에서 로드밸런서까지 허용하려면 인바운드 규칙에 다음을 추가하세요:
      • HTTP (포트 80): 소스를 0.0.0.0/0으로 설정
      • HTTPS (포트 443): 소스를 0.0.0.0/0으로 설정
    • SSH는 로드밸런서에 필요 없으므로 인바운드 규칙에 추가하지 마세요.
  2. EC2 인스턴스 보안 그룹(EC2-SG) 설정:

    • EC2 인스턴스는 인터넷에서 직접 접속을 차단하고, 로드밸런서 보안 그룹(LB-SG)에서만 접속을 허용하세요.
    • 인바운드 규칙 설정:
      • HTTP와 HTTPS 트래픽은 소스로 로드밸런서 보안 그룹(LB-SG)을 선택
      • SSH는 필요 시에만 내 IP 주소(예: 123.123.123.123/32)로 제한
  3. SSH 접속 문제:

    • 내 IP로 SSH 접속을 등록하셨다면 PC IP 변경 시 AWS 콘솔에서 해당 보안 그룹을 업데이트 해주셔야 합니다.
    • 일시적으로 0.0.0.0/0으로 풀어둘 수 있지만, 보안상 권장하지 않습니다. 외부 IP가 변경될 경우마다 보안 그룹을 업데이트하여 안전하게 유지하세요.

이와 같은 설정을 통해 보안 그룹을 효과적으로 관리할 수 있습니다. 추가적인 문서나 블로그를 참고하시려면 공식 문서 링크를 참조하시기 바랍니다. AWS 보안 그룹 설정 공식 문서에서 자세한 정보를 확인할 수 있습니다. 좋은 학습 되시기 바랍니다!

zzzzz님의 프로필 이미지
zzzzz

작성한 질문수

질문하기