보안 그룹
- AWS 클라우드에서 네트워크 보안을 실행하는데 핵심
- EC2 인스턴스에 들어오고 나가는 트래픽을 제어
- 허용 규칙만 포함
- IP 주소를 참조해 규칙을 만들 수 있음

컴퓨터에서 공공 인터넷을 사용해 EC2 인스턴스에 액세스하려고 할 경우
EC2 인스턴스 주변에 보안 그룹을 생성해야 하는데
바로 방화벽을 생성하는 것
그러면 보안 그룹은 규칙을 가지게 됨
그 규칙은 바로 인바운드 트래픽의 여부인데
외부에서 EC2 인스턴스로 들어오는 것이 허용되면
아웃바운드 트래픽도 수행할 수 있는 것
즉, 현재 위치에서 인터넷으로 들어오는 것이 가능해짐
-
보안 그룹 = EC2 인스턴스의 방화벽
- 포트의 접근을 통제
- 인증 된 IP 주소의 범위를 확인 - IPv4 and IPv6
- 외부에서 인스턴스로 들어오는 인바운드 네트워크도 통제
- 인스턴스에서 외부로 나가는 아웃바운드 네트워크도 통제

- 보안 그룹 규칙은 위 사진과 같은 형식으로 확인 가능
- 프로토콜은 TCP 사용
- 포트 범위는 트래픽이 인스턴스에서 통과하는 위치
- 소스는 IP 주소의 범위, 0.0.0.0 / 0 은 전체 IP를 뜻함
보안 그룹의 특징

EC2 인스턴스가 있고 인바운드 규칙과 아웃바운드 규칙이 있는
1개의 보안 그룹이 있고 이 도표에 분리해둠
우리의 컴퓨터는 포트 22에서 허용
그러면 트래픽은 컴퓨터에서 EC2 인스턴스로 이동할 수 있음
하지만, 내가 있는 위치에 없고 내 IP를 사용하지 않는 다른 사람의 컴퓨터가
내 EC2 인스턴스에 액세스하려고 하면 방화벽이 차단하기 때문에
액세스할 수 없고 타임아웃이 발생
- 여러 인스턴스에 연결 가능
- 인스턴스도 여러 보안 그룹과 연결 가능
- 지역과 VPC 결합으로 통제되어 있음
- VPC(Virtual Private Cloud) : 퍼블릭 클라우드 환경에서 사용할 수 있는 고객 전용 사설 네트워크
- 즉, 지역을 전환하면 새 보안 그룹 생성 혹은 다른 VPC 생성
- 보안 그룹은 EC2 외부에 존재
- 때문에 트래픽 차단 시 EC2 인스턴스 확인 불가능
-
기본적으로 모든 인바운드 트래픽은 차단되어 있음
-
모든 아웃바운드 트래픽은 허용
보안 그룹의 다른 보안 그룹 참조 방법

-
기본 적인 인바운드 규칙 : 보안 그룹 1의 인바운드를 보안 그룹 2에 허용 하는 것
다른 EC2 인스턴스를 생성하고 보안 그룹 2를 연결한 경우
방금 설정한 보안 그룹 규칙으로
첫 번째 EC2 인스턴스로 정한 포트를 통해서
EC2 인스턴스가 바로 연결되도록 허용합
마찬가지로 보안 그룹 1에 연결된 다른 EC2 인스턴스가 있다면
이 인스턴스도 우리의 인스턴스와 바로 통신하도록 허용
EC2 인스턴스의 IP와는 상관없는 것
올바른 보안 그룹에 연결되어 있기 때문에
다른 인스턴스를 통해서 바로 통신할 수 있는 것
IP는 신경 쓰지 않아도 되는 점이 장점
또 다른 EC2 인스턴스는 보안 그룹 3에 연결되어 있음
보안 그룹 1의 인바운드 규칙으로
보안 그룹 3과 연결되어 있지 않아서 거부되고 실행되지 않음
포트 종류(시험 출제)
- SSH ( Secure Shell) : 22 Port, Linux에서 EC2 인스턴스로 로그인하도록 함
- FTP ( File Transfer Protocol) : 21 Port , 파일 공유 시스템에 파일 업로드할 때 사용
- SFTP ( Secure File Transfer Protocol) : 22 Port , SSH를 사용해서 업로드하므로 22번 포트 사용, 보안 파일 전송 프로토콜
- HTTP : 80 Port , 보안이 되지 않은 사이트에 접근
- HTTPS : 443 Port , 현재 표준, 보안 사이트에 접근
- RDP(Remote Desktop Protocol) : 3389 Port , 윈도우 인스턴스에 로그인할 때 사용
- 즉, 22번 Port는 Linux 인스턴스 , 3389 Port는 Window 인스턴스
보안그룹 실습
- Network & Security > Security Groups

- 인바운드 규칙 편집에서 웹 서버 접근 규칙 확인할 수 있음
- EC2 인스턴스에 대한 접속 시 무한 로딩(타임아웃)이 되면, 100% EC2 보안 그룹 때문
- 인바운드 규칙에서 확인하면 됨
