본문 바로가기

AWS

AWS 0. 소개, IAM, MFA

AWS

AWS(Amazon Web Services)는 클라우드 컴퓨팅 플랫폼이다. AWS는 분산된 데이터 센터를 이용해 인프라를 제공하고, 고객은 제공된 인프라를 쉽고 빠르게 설정, 관리할 수 있다.

AWS에서 제공하는 주요 서비스는 컴퓨팅, 데이터베이스, 스토리지, 네트워킹, 보안 등이 있다. 여기서 우리가 사용하게 될 EC2는 클라우드 컴퓨팅에 속한다.

Region & Availability Zone(AZ)

Region은 말 그대로 북미-동북부, 아시아-태평양 등의 지역을 의미한다. 한 region에는 여러개의 availavility zone이 존재가능한데, 이것은 하나의 데이터 센터들이라고 보면 된다. 기본적으로 내가 배포한 서비스와 같은 지역에 있는 사용자는 더 빠른 속도를 경험할 수 있다.

각 서비스 마다 지원하는 region이 다를 수 있으며, 일부 서비스는 asia-pacific(seoul)에서는 지원하지 않아 글로벌 region을 사용해야할 수도 있다.

AWS 콘솔 로그인 후 메인화면


왼쪽 위에는 자신이 최근에 방문한 서비스들의 모음이 보인다. 왼쪽 아래에는 현재 동작중인 내 인스턴스등의 상태가 보인다. 오른쪽 아래는 비용이 얼마나 청구될 것인지에 대한 내용이다.

 

1. IAM이란

AWS Identity and Access Management (IAM)은 AWS 리소스에 대한 액세스를 안전하게 제어하는 서비스다. 사용자, 그룹 및 역할을 생성하고 관리하여 리소스에 대한 액세스를 제어할 수 있다.

  1. 인증: 사용자를 만들고, 사용자가 AWS 리소스에 액세스할 때 사용자가 사용자이름과 비밀번호로 로그인가능.
  2. 권한 부여: '정책'을 통해 사용자와 그룹에 대한 권한을 지정할 수 있다. 권한은 AWS 리소스에서 수행할 수 있는 작업을 말한다.
  3. 권한 검증: 사용자가 리소스에 대한 액세스를 요청할 때 허용 여부를 '정책'을 통해 결정할 수 있다.

2. Users, Groups, Policies

  • 사용자(User): 계정에 액세스하는 개별 인물 또는 서비스. 사용자마다 별도의 보안 자격 증명을 생성할 수 있다.
  • 그룹(Group): 사용자들에게 공통된 권한을 부여하는 데 사용된다.
  • 정책(Policy): AWS 리소스에 대한 액세스 권한을 지정한다. 즉 허용 또는 거부할 수 있는 작업 및 AWS 리소스에 대한 액세스 수준을 지정한다. 사용자 또는 그룹과 연결한다. JSON 형식으로 작성된다.

최소 권한 원칙: 꼭 필요한 권한만 부여하고, 불필요한 권한은 제거해야한다는 원칙이며 보안을 강화하기 위해 권장된다.

루트 사용자는 굉장히 많은 권한을 가지고 있다. 따라서 루트 사용자는 처음 서버를 구축할 때 사용하고, 이후로는 IAM 사용자를 이용하여 안전하게 개발을 진행할 수 있다.

정책의 구조

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "*",
            "Resource": "*"
              "Condition": {
                "condition-operator": {
                      "condition-key": "condition-value"
                }
              }
        }
    ]
}
  • Version: 정책의 버전
  • Statement: 정책의 규칙의 배열
    • Effect: 규칙의 적용 여부. "allow" / "deny"
    • Action: 규칙이 적용되는 작업의 종류.
    • Resource: 규칙이 적용되는 리소스의 ARN (Amazon Resource Name).
    • Condition: 규칙이 적용되는 조건을 나타냅니다. (옵션) 다양한 조건 연산자를 사용할 수 있다. 예) "IpAddress" - 특정 IP 주소에서만 작업을 수행 가능

3. 유저 생성화면


유저 이름을 지정하고, I want to create an IAM user 를 선택하고 비밀번호를 지정한다. Users must create a new password at next sign-in 은 사용자가 최초 로그인후 비밀번호를 다시 설정할지를 결정한다.

MFA 설정

MFA는 Multi-Factor Authentication의 약어로, 다중 인증 요소 인증 방식을 의미한다. 사용자 ID와 비밀번호 입력 외에 추가적인 인증 요소를 요구하여 보안을 강화하는 방법이다.

예를 들어, 비밀번호 이외에 OTP인증을 통해 추가적인 인증을 할 수 있다. 이는 일반적으로 사용자의 소유물인 스마트폰 또는 하드웨어 보안 토큰 등을 사용하여 구현된다.

구글 OTP 이용하기


루트 사용자에 MFA를 적용하지 않으면 위의 초록색 체크 모양이 아닌 붉은 경고 표시가 뜰 것이다.


add MFA를 클릭한다.


assign MFA 를 클릭한다.


가장 위의 옵션을 선택하고, 핸드폰에는 google OTP 앱을 깐다.


앱에서는 오른쪽 아래의 + 버튼을 눌러 QR스캔을 진행한다.


QR을 스캔 한 뒤, 시간이 흐름에 따라 변하는 코드를 연달아 2개를 순서대로 입력하면 MFA를 등록한다.

'AWS' 카테고리의 다른 글

AWS 5. VPC, S3  (0) 2023.05.05
AWS 4. DNS, route53  (0) 2023.05.04
AWS 3. RDS  (0) 2023.05.03
AWS 2. 확장성/가용성, ELB  (0) 2023.05.03
AWS 1. EC2  (0) 2023.05.03