HTTP

  • 인터넷상에서 정보를 주고받을 수 있는 프로토콜
  • 클라이언트와 서버 사이에 요청/응답을 위한 규칙
  • 주로 일반 텍스트로 이루어진 HTML 문서를 주고받는데에 사용

 

SSL/TLS

  • 데이터를 안전하게 전송하기 위한 인터넷 암호화 통신 프로토콜
  • 전자상거래의 보안을 위해 넷스케이프에서 처음 만듦
  • SSL을 표준화하여 만든것이 TLS
  • SSL/TLS로 함께 묶어 분류

 

HTTPS

  • HTTP의 보안이 강화된 버전
  • SSL/TLS 프로토콜로 세션 데이터 암호화

'AWS' 카테고리의 다른 글

트래픽과 대역폭  (0) 2023.02.09
AWS 리소스 네이밍 컨벤션  (0) 2023.02.09
AWS 서버 인프라의 확장 과정  (0) 2023.02.09
AWS Well-Architecture Framework  (0) 2023.02.09
AWS Developer Associate Quiz - IAM  (0) 2023.02.01

트래픽이란?

트래픽은 서버를 통해 사용자에게 전달된 데이터의 양을 말합니다.
단위는 일반적으로 바이트단위로 (KBytes, MegaBytes, GigaBytes 등등) 표현합니다.
트래픽 = 용량 * 사용자 수 * 개수 
ex) 4GB 영화 * 10명 * 10개 = 400GB

 

네트워크 대역폭이란?

대역폭은 초당 처리할 수 있는 데이터의 양 입니다.
대역폭 단위는 bps로 bit per second 즉, 초당 bit단위의 데이터 처리량을 말합니다.
대역폭 = (용량 * 사용자수 * 8) / 처리 시간 = bps 
참고로 8을 곱하는 이유는 Bytes에서 bit로 변환하기 위함입니다.​

 

예상 트래픽과 대역폭 예측하기

https://kim-dragon.tistory.com/99

'AWS' 카테고리의 다른 글

HTTP/SSL/TLS 개념  (0) 2023.02.09
AWS 리소스 네이밍 컨벤션  (0) 2023.02.09
AWS 서버 인프라의 확장 과정  (0) 2023.02.09
AWS Well-Architecture Framework  (0) 2023.02.09
AWS Developer Associate Quiz - IAM  (0) 2023.02.01

네이밍 컨벤션이란?

식별자를 만들 때 가독성이 좋은 단어를 선택하기 위해 정해 놓은 규칙

 

네이밍 표현 기법

  • 카멜케이스(camelCaseStyle)
  • 스네이크(snake_case_style)
  • 케밥(kebab-case-sytle)
  • 파스칼(PascalCaseStyle)

 

AWS에서 Name은?

  • 리소스 태그의 Name
    • vpc, ec2, subnet등 모든 리소스
    • 상시 변경 가능
  • 리소스 자체의 Name
    • ELB, RDS, Elasticache등
    • 변경 불가

 

네이밍 컨벤션 예시

 

'AWS' 카테고리의 다른 글

HTTP/SSL/TLS 개념  (0) 2023.02.09
트래픽과 대역폭  (0) 2023.02.09
AWS 서버 인프라의 확장 과정  (0) 2023.02.09
AWS Well-Architecture Framework  (0) 2023.02.09
AWS Developer Associate Quiz - IAM  (0) 2023.02.01

첫번째

 

두번째

 

세번째

 

네번째

 

다섯 번째

 

여섯 번째

 

일곱 번째

 

여덟 번째

아홉 번째

'AWS' 카테고리의 다른 글

트래픽과 대역폭  (0) 2023.02.09
AWS 리소스 네이밍 컨벤션  (0) 2023.02.09
AWS Well-Architecture Framework  (0) 2023.02.09
AWS Developer Associate Quiz - IAM  (0) 2023.02.01
AWS 기초 다지기 - Bastion Host, NAT Gateway  (0) 2023.01.26

Well-Architecture Framework 5가지 원칙

 

운영 우수성

  • 운영 작업을 코드로 수행(IAC)
  • 변경작업을 최소 단위로 나누어 수행
  • 롤백을 고려한 변경작업 수행
  • 운영 프로세스를 자주 개선
  • 장애 시나리오 만들기
  • 모든 장애 리뷰 및 레슨 런 하기

 

보안

  • 시스템의 모든 접근에 대한 추적 및 기록
  • 모든 계층(OSI 7Layer)에 대한 보안을 적용
  • 보안을 위한 자동화 구현 설계
  • 모든 데이터를 보호하도록 설계(전송 중인 데이터, 정적 데이터)
  • 보안 이벤트 준비

 

안정성

  • 장애에 대한 자동 복구 구축
  • 장애 복구 훈련 수행
  • 가용성을 높이기 위한 수평 확장 설계
  • 스펙을 추측하지 않고 확장 가능하도록 설계
  • 운영 자동화의 지속적 변경 관리

 

성능 효율성

  • 최신 기술을 습득하고 적용 (e.g 6세대 EC2 인스턴스 m6g)
  • 주기적인 프로토타입 진행
  • 빠른 글로벌 접근 가능한 설계 (e.g. cloudfront, route53)
  • 서버리스 아키텍처 활용 (e.g. Lambda, Fargate, S3)

 

비용 최적화 

  • 알맞는 가격 약정 채택
  • 리소스 Right Sizing 분석
  • 클라우드 마이그레이션을 통해 온프레미스 운영비용 최소화
  • 관리형 서비스를 사용하여 운영비용 최소화
  • 지속적인 월 비용 분석을 통한 최적화 수행

 

Q1. What is a proper definition of an IAM Role? (틀림)

  • IAM Users in multiple User Groups

  • An IAM entity that defines a set of permissions for making requests to AWS services, and will be used by an AWS service

  • An IAM entity that defines a password policy for IAM Users

  • Permissions assigned to IAM Users to perform actions

해설 : IAM 역할은 AWS 서비스에 요청하기 위한 사용 권한 집합을 정의하는 IAM 객체다.

개념 정리:

  • IAM user: IAM 사용자를 사용하여 AWS와 상호 작용하는 사용자 또는 워크로드
  • IAM role: 계정에 생성할 수 있는, 특정 권한을 지닌 IAM 자격 증명
  • User Group:  IAM 사용자의 집합입니다
    • 한 사용자 그룹에 여러 사용자가 포함될 수 있으며 한 사용자가 다중 사용자 그룹에 속할 수 있습니다.
    • 사용자 그룹은 중첩될 수 없습니다. 즉, 사용자 그룹은 사용자만 포함할 수 있으며 다른 그룹은 포함할 수 없습니다.
    • AWS 계정의 모든 사용자를 자동으로 포함하는 기본 사용자 그룹은 없습니다. 이러한 사용자 그룹이 필요한 경우 하나 만들어 새로운 사용자를 각각 해당 그룹에 할당해야 합니다.
    • 그룹 수, 사용자가 멤버가 될 수 있는 그룹 수와 같이 AWS 계정에 있는 IAM 리소스의 수와 크기는 제한되어 있습니다. 
  • Policies : user와 Group에 부여하는 JSON문서로 서비스별 권한을 정의한다.

Q2. Which of the following is an IAM Security Tool?

  • IAM Credentials Report

  • IAM Root Account Manager

  • IAM Services Report

  • IAM Security Advisor

해설 : IAM Security Tool에는 2가지가 있다.

  • 모든 유저들의 상태를 알려주는 IAM Credentials Report
  • IAM이 마지막으로 엑세스한 정보를 볼 수있는 IAM Access Advisor

Q3. Which answer is INCORRECT regarding IAM Users?

  • IAM Users can belong to multiple User Groups

  • IAM Users don't have to belong to a User Group

  • IAM Policies can be attached directly to IAM Users

  • IAM Users access AWS services using root account credentials

해설 : IAM user는 루트 계정의 자격증명을 사용하지 않고 자기 자신의 자격증명을 활용한다 (username & password or Access Keys).


Q4. Which of the following is an IAM best practice?

  • Create several IAM Users for one physical person

  • Share your AWS account credentials with your colleague, so he can perform a task for you

  • Don't use the root user account

  • Do not enable MFA for easier access

해설: 루트계정은 되도록 사용하지 않고 실제 사용자에 한해서 IAM 유저를 만들어 사용하는 것이 바람직하다.


Q5. What are IAM Policies?

  • A set of policies defines how AWS accounts interact with each other

  • JSON documents that define a set of permissions for making requests to AWS services, and can be used by IAM Users, User Groups, and IAM Roles

  • A set of policies that define a password for IAM Users

  • A set of policies defined by AWS that show how customers interact with AWS

해설: IAM Policies는 user, user group과 role에 부여하는 JSON문서로 서비스별 권한을 정의한다.


Q6. Which principle should you apply regarding IAM Permissions?

  • Grant least privilege

  • Grant most privilege

  • Grant more permissions if your employee asks you to

  • Restrict root account permissions

해설: IAM 권한은 가능한 최소의 권한(least privilege)을 부여하여야 한다.


Q7. What should you do to increase your root account security?

  • Remove permissions from the root account

  • Only access AWS services through AWS Command Line Interface (CLI)

  • Enable Multi-Factor Authentication (MFA)

  • Don't create IAM Users, only access your AWS account using the root account

해설 : Multi Factor Authentication을 사용하면 계정의 보안 수준을 높일 수 있다.


Q8. IAM User Groups can contain IAM Users and other User Groups.

  • True

  • False

해설: IAM 유저 그룹은 유저만을 포함하고 유저 그룹은 포함할 수 없다.


Q9. An IAM policy consists of one or more statements. A statement in an IAM Policy consists of the following, EXCEPT:(틀림)

  • Effect

  • Principal

  • Version

  • Action

  • Resource

해설: IAM 정책(Policy)은 Sid, Effect, Principal, Action, Resource, and Condition을 가지고 있다.


Q10. According to the AWS Shared Responsibility Model, which of the following is AWS responsibility?

  • Rotate Access Key for IAM Users

  • Enable MFA for the root account and all IAM Users

  • IAM Users, User Groups, and IAM Policies

  • AWS Infrastructure

해설: AWS는 AWS 인프라만 책임지고 나머지 IAM 사용 방법에 대해서는 책임 지지 않는다.

NAT Gateway란?

NAT Gateway는 Amazon Virtual Private Cloud(Amazon VPC)의 프라이빗 서브넷에 있는 인스턴스에서 인터넷에 쉽게 연결할 수 있도록 지우너하는 가용성이 높은 AWS 관리형 서비스 입니다.

 

NAT Gateway/NAT instance

  • Private 인스턴스가 외부의 인터넷과 통신하기 위한 통로
  • NAT instanc는 단일 EC2 인스턴스/ NAT Gatewa는 AWS에서 제공하는 서비스
  • NAT Gateway/Instance는 모두 서브넷 단위
    • Public Subnet에 있어야 함

 

Bastion Host or Jump Host

외부에서 사설 네트워크에 접속할 수 있도록 경로를 확보해주는 서버
  • Private 인스턴스에 접근하기 위한 EC2 인스턴스
  • Public 서브넷에 위치해야 함

 

문제 만들어 보기

Q. 다음은 Bastion Host와 NAT Gateway에 대한 설명이다. 다음중 옳지않은 것은?

    a. Bastion Host는 프라이빗 서브넷 내의 인스턴스가 외부의 인터넷과 통신하기 위한 통로 역할을 한다.

    b. NAT Gateway는 AWS의 관리형 서비스로 구축한 후에 관리할 필요가 없다.

    c. NAT instance는 퍼블릭 서브넷에 존재하여야 한다.

    d. Bastion Host는 퍼블릭 서브넷에 존재하여야 한다.

    e. NAT Instance는 프라이빗 서브넷과 다른 가용영역에 있다.

 

정답 : a

해설 : Bastion Host는 외부에서 프라이빗 인스턴스에 접근하기 위한 EC2 인스턴스입니다.

보안 그룹

보안 그룹은 인스턴스에 대한 인바운드 및 아웃바운드 트래픽을 제어하는 가상 방화벽 역할을 합니다.
  • Network Acess Control List(NACL)와 함께 방화벽의 역할을 하는 서비스
  • Port 허용
    • 기본적으로 모든 포트는 비활성화
    • 선택적으로 트래피이 지나갈 수 있는 Port와 Source를 설정 가능
    • Deny는 불가능 -> NACL은 가능함
    • 인스턴스 단위
      • 하나의 인스턴스에 하나 이상의 SG(Security Group)설정 가능
      • NACL의 경우 서브넷 단위
      • 설정된 인스턴스는 설정한 모든 SG의 룰을 적용 받음
      • 기본 5개, 최대 16개

 

보안 그룹의 Stateful

  • 보안 그룹은 Stateful하다
    • 들어올땐 마음대로가 아니지만 나갈 땐 마음대로 란다.
  • Inbound로 들어온 트래픽이 별 다른 Outbound설정 없이 나갈 수 있음
  • NACL은 Stateless
    • 들어올 때도 마음대로가 아니고 나갈 때도 마음대로가 아니란다.

 

네트워크 ACL(NACL)

  • 보안그룹처럼 방화벽 역할을 담당
  • 서브넷 단위
  • 포트 및 IP를 직접 Deny 가능
    • 외부 공격을 받는 상황 등 특정 IP를 블록하고 싶을 때 사용
  • 순서대로 규칙 평가(낮은 숫자 부터)

 

NACL 규칙 구성

  • 규칙 번호 : 규칙에 부여되는 고유 숫자이며 규칙이 평가되는 순서(낮은 번호 부터)
  • 유형 : 미리 지정된 프로토콜 선택시 AWS에서 잘 알려진 포트(Well Known Port)가 규칙에 지정됨
  • 프로토콜 : 통신 프로토콜(TCP, UDP, SMP)
  • 포트 범위 : 허용 혹은 거부할 포트 범위
  • 소스 : IP 주소의 CIDR 블록
  • 허용/거부 : 허용 혹은 거부 여부(보안 그룹에는 없는 내용)

 

AWS NACL 규칙 순서

 

정리

 

문제 만들어 보기

Q. 다음은 보안그룹과 NACL에 대한 설명이다. 다음중 옳지않은 것은?

    a. 보안그룹은 인스턴스 단위로 적용된다.

    b. NACL은 서브넷 단위로 적용된다.

    c. 보안그룹은 Statefull한 방화벽으로 트래픽 인바운드 및 아웃바운드 모두 지정 포트로 들어오고 나갔는지 확인한다.

    d. NACL은 특정 소스와 포트로 들어오는 트래픽을 Deny 할 수 있다.

    e. NACL의 규칙 번호는 낮은 순서대로 평가받고 AWS에서는 100단위로 붙이는 것을 권장 한다.

 

정답 : c

해설 : 보안그룹은 Statefull한 방화벽이지만 인바운드시에만 지정된 포트로 들어왔는지 검사하고 아웃바운드 트래픽에 대해서는 검사하지 않는다

+ Recent posts