AWS를 본격적으로 사용하기 전에 사용 요금 걱정부터 됩니다. 그 다음 걱정되는 게 해킹 입니다. “나도 모르게 해킹되서 과금이 되면 어떻하지?” 걱정이 되고, 특히 루트 계정의 보안이 걱정됩니다. 공유되는 IAM 사용자 계정의 보안도 걱정되는데요. 이런 상황에서 우리를 안심시켜 줄 수 있는 게 AWS MFA 와 암호 정책 입니다.
AWS MFA (Multi-Factor Authentication) 및 암호 정책은 사용자를 다양한 형태로 확인하고 강력한 암호 표준을 준수하도록 요구함으로써 무단 액세스 및 데이터 침해의 위험을 줄이는 보안 조치입니다.
이번 포스트에서는 AWS MFA 와 암호 정책이 무엇인지 공부하고 실제 어떻게 적용할 수 있는 건지 정리해보았습니다.
Password policy
AWS는 password policy를 통해서 강력한 암호(Strong password)를 설정할 수 있도록 할 수 있습니다.
- 최소 암호 길이
- 특정 문자 타입 요구 (대/소문자 포함, 숫자, 특수문자)
- 모든 IAM 사용자가 자신의 비밀번호를 변경할 수 있도록 허락
- 정해진 기간 이후에 암호를 바꾸도록 요구
- 암호 재사용 방지
Multi-Factor Authentication (MFA)
다른 사용자에게 계정이 도용 된다면 여러분의 계정에서 많은 걸 할 수 있습니다.
특히 관리자라면 구성을 바꾸거나 리소스를 삭제할 수도 있죠. 때문에 AWS에선 필수로 MFA를 사용하도록 권장하고 있습니다.
“MFA = 비밀번호 + 물리적 보안 장치”
MFA는 여러분이 아는 암호와 여러분 소유의 보안 장치 조합을 사용합니다. 이 둘을 합치면 기존 암호보다 훨씬 더 큰 보안을 갖게 되는 겁니다.
MFA의 장점은 사용자가 비밀번호를 잃어버려도 계정이 도난되거나 해킹당해서 손상되지 않는다는 겁니다. 해커는 사용자의 물리적 장치도 손에 넣어야 하거든요.
MFA 장치들


Password policy 설정하기
비밀번호 정책을 찾아서 수정하기 위해서 왼쪽 메뉴에 있는 계정 설정을 클릭합니다.

IAM 기본 암호 정책으로 설정되어 있는 것을 볼 수 있습니다.

사용자 지정으로 가면 암호정책을 조금 더 세밀하게 조정할 수 있습니다.
암호 기간 만료나, 재사용 제한, 최소 길이 제한 등을 설정할 수 있습니다.

MFA 설정하기
장치가 꼭 필요합니다. 장치의 분실 위험이 있는 경우, MFA 설정을 하는 것이 위험이 될 수 있음에 유의해주세요.
우상단의 메뉴를 누른 뒤, 보안 자격 증명을 클릭합니다.

MFA 할당 버튼을 클릭합니다.

디바이스를 선택하고 다음 버튼을 누릅니다.

“호환되는 애플리케이션 목록 참조”를 클릭해서 스마트폰에 설치할 인증 앱을 선택하고 스마트폰에 설치합니다.
이후 앱을 통해서 QR 코드 인식을 하여 인증 과정을 진행합니다.

MFA 설정이 완료되면 보안 자격 증명 페이지에서 MFA가 추가됨을 확인 할 수 있습니다.

이제 새롭게 로그인을 하려고하면 MFA 코드를 입력하는 과정이 추가됨을 확인 할 수 있습니다.
이제 아까 앱을 설치했던 장치에서 앱을 실행하면 MFA 코드를 화면에 출력해주는 것을 확인 할 수 있습니다.
해당 코드를 입력하면 로그인이 진행되는 것을 확인할 수 있습니다.

참고하면 좋은 글
