Security Groups (보안 그룹) 알아보기

Security Group 소개

  • SG(Security Group)는 AWS 클라우드에서 네트워크 보안을 실행하는 핵심이다.
  • EC2 인스턴스에 들어오고 나가는 트래픽을 제어함.
  • SG는 오직 allow 규칙만 포함된다.
  • SG 규칙은 다른 SGIP 주소를 참조해서 만들수 있음.

 

좀더 알아보기

  • SG는 EC2 인스턴스의 방화벽으로 생각하면 됨.
  • SG 규칙
    • 포트들로 액세스 통제
    • 인증된 IP 주소 범위를 확인해 IPv4, IPv6인지 확인
    • 외부에서 인스턴스로 들어오는 인바운드 네트워크 통제
    • 인스턴스에서 외부로 나가는 아웃바운드 네트워크 통제

 

Security Group에서 알아야 할 점

  • SG는 여러 인스턴스에 연결이 가능. 인스턴스에도 여러 SG 연결 가능
  • SG는 Region 과 VPC 결합으로 통제 - Region을 전환하면 새로운 SG를 생성하거나 다른 VPC를 생성해야 함
  • SG는 EC2 외부의 방화벽 → 트래픽이 차단되면 EC2 인스턴스는 확인 할수 없음
  • SSH 액세스를 위해 하나의 별도 SG를 유지하는것이 좋음
  • 만약 어플리케이션에 타임아웃으로 접근이 불가 → SG 이슈
  • 만약 어플리케이션에서 “connection refused” 에러 발생 → SG 이슈가 아니라 어플리케이션 문제 또는 실행되지 않는 문제 발생
  • 기본적으로 모든 인바운드는 차단, 모든 아웃바운드는 허용된다.

 

 

 

 

알고있어야할 기본 포트

  • 22 : SSH (Secure shell)
  • 21: FTP (파일 전송)
  • 22 : SFTP (SSH를 사용하여 업로드)
  • 80 : HTTP (보안되지 않는 사이트)
  • 443 : HTTPS (보안된 사이트)
  • 3389 : RDP (Remote Desktop Protocol)

 

EC2 인스턴스 연결

  • 22번 포트 오픈
  • 인스턴스 생성시 할당한 키파일을 이용해 ssh로 접속
    • ssh -i 키파일 계정@아이피
    • 처음 카파일의 권한때문에 에러가 남. (0644 → 0400) 권한 수정 필요
    • SSH 연결 문제 해결
    • Connection Timeout 이슈 (SG 또는 방화벽 관련 문제)
      • SG 의 inbound 설정 확인
      • 방화벽 확인
    • Connection refused 이슈
      • 인스턴스는 연결할 수 있지만 인스턴스에서 실행 중인 SSH 유틸이 없음
      • 인스턴스 다시 시작 시도
      • 작동하지 않으면 인스턴스를 종료하고 아마존 리눅스2를 사용하여 새 인스턴스 사용