[GCP 보안 운영 시리즈 ] 사용자 계정에 2단계 인증 적용하기
Jinwon Seo
Security Specialist
클라우드 웹 콘솔 사용자 2단계 인증 적용
Google Cloud 사용자 계정 보안 강화하기
지난 Google Cloud 웹 콘솔 안전하게 접근하기에서 클라우드 콘솔 접속을 위한 보안 통제 방안을 살펴보았습니다. 클라우드 웹 콘솔의 접근 보안 설정은 매우 중요한 항목이므로 관리자들은 꼭 접근 통제를 설정해서 운영하시는 것을 권장합니다. 출발지 IP를 이용해서 접근 지점을 통제했다면 이제 사용자 계정에 추가 인증을 설정하고 더욱 안전한 환경에서 Google Cloud를 운영할 수 있습니다.
패스워드 사용의 한계
대부분의 웹 응용 프로그램은 사용자 인증을 위해서 계정(ID)과 패스워드를 사용합니다. 패스워드는 사용자가 기억하고 있는 값을 입력함으로서 계정에서 식별한 사용자임을 인증하는 효과를 가집니다. 패스워드 입력을 통한 사용자 인증방식은 컴퓨터 초창기부터 지금까지도 그대로 사용되고 있습니다.
문제는 이 기법이 사용자들이 가장 익숙한 방식이면서도 보안에는 가장 취약한 방식이라는 점입니다. 비밀번호는 사용자가 기억하고 있는 값을 입력합니다. 나만 기억하고 있기 때문에 안전하다고 여겨지지만 실상은 그렇지 않습니다. 많은 사용자들이 하나의 패스워드를 다수의 웹 사이트에 사용합니다. 패스워드의 보관을 기억에 의존해야 하기 때문에 웹 사이트별로 다른 패스워드를 적용하기가 쉽지 않기 때문입니다. 때로는 수첩이나 노트에 적기도 하고 메모지에 적어서 컴퓨터 모니터에 붙여 놓기도 합니다.
익숙한 패스워드를 오래 사용할수록 보안에 취약해질 수 있습니다. 사용자 인증을 위해서 패스워드를 사용하는 것은 기억 속의 패스워드를 외부에 노출시키는 것이기 때문입니다. 또한 공격자는 사용자 컴퓨터에 키로거를 설치해서 입력한 키값을 훔쳐갈 수 있습니다. 결국 패스워드를 오래 사용하면 할 수록 패스워드 안전성은 지속적으로 감소한다고 볼 수 있습니다.
보안 관리자들은 이러한 취약점을 개선하고자 패스워드 외에 추가 인증을 도입하기 시작했습니다. 일반적으로 추가 인증은 사용자가 소유한 것으로 인증을 합니다. 우리나라 인터넷 뱅킹에서 사용하는 보안 카드 또는 OTP(One Time Password) 방식은 대표적인 추가 인증입니다. 이러한 방식을 2단계 인증(2 Step Verification) 또는 다중 인증(Multi Factor Authentication)이라고 부릅니다.
Google은 일찍부터 사용자 인증의 취약점을 개선하고자 많은 노력을 기울여 왔습니다. Google은 강력한 사용자 인증을 위해서 Google Authenticator 앱을 보급하고 있습니다. Authenticator 앱은 1분마다 6자리 숫자를 무작위로 생성해서 사용자의 2단계 인증을 지원합니다. Authenticator 앱 이외에도 여러 추가 인증 방식도 제공하고 있습니다. 사용자가 사용하는 많은 Google 제품에 추가 인증을 설정 수 있습니다. Google Cloud 역시 Google 인증을 사용하므로 2단계 인증을 적용할 수 있습니다. 클라우드 콘솔에 로그인하는 모든 사용자는 반드시 2단계 인증을 적용해서 클라우드 환경의 안전성을 강화해야 합니다.
2단계 인증 활성화 설정
먼저 조직 관리자가 사용자의 2단계 인증을 사용하도록 값을 설정합니다. 이후 개별 사용자가 각자 계정 보안 설정으로 이동하여 2단계 인증 방법을 지정하고 활성화시켜서 사용합니다.
2단계 인증 방식으로 Google Authenticator앱을 사용해 보겠습니다.
관리자는 Google Cloud 계정을 관리하는 Admin 콘솔(https://admin.google.com)에 로그인 합니다. 클라우드 웹 콘솔 -> 보안 -> 인증 -> 2단계 인증 메뉴로 이동합니다. 2단계 인증을 지정할 조직 단위를 선택합니다.
‘사용자가 2단계 인증을 사용하도록 허용’ 항목을 선택하면 개별 사용자가 2단계 인증을 활성화시킬 수 있습니다.
적용: 이 메뉴는 클라우드 사용자들에게 2단계 인증을 강제할 것인지를 결정하는 것입니다.
사용 안함: 2단계 인증 사용을 사용자가 선택할 수 있습니다.
사용: 모든 사용자는 2단계 인증을 사용해야 합니다.
다음 날짜에 사용 설정: 설정한 날짜 이후부터는 반드시 2단계 인증을 사용해야 합니다.
새 사용자 등록 기간
2단계 인증을 사용으로 설정하면 모든 사용자가 2단계 인증 설정이 되어 있어야 합니다. 하지만 새로운 사용자는 아직 2단계 설정이 되지 않았기 때문에 로그인이 실패합니다.
이 메뉴는 신규 사용자가 2단계 인증을 설정하도록 유예기간을 설정하는 것입니다. 새로운 사용자는 해당 기간동안 2단계 인증을 설정하도록 우선은 2단계 인증에서 예외가 됩니다. 신규 사용자 등록 후에 지정한 날짜가 지나면 2단계 인증 설정이 강제로 적용됩니다. 만일 지정 날짜 안에 2단계 인증을 설정하지 않으면 로그인을 할 수 없습니다.
방법
모두를 선택하면 문자, 전화 통화, Google Authenticator, 하드웨어 키 등 모든 수단을 사용할 수 있습니다.
설정 후 저장 버튼을 클릭하면 사용자 2단계 인증 설정을 위한 준비는 마무리됩니다. 이제 클라우드 사용자들이 개별적으로 2단계 인증 설정을 진행합니다.
Google Cloud 사용자 2단계 인증 설정하기
Google Cloud에서 발급받은 사용자 계정의 2단계 인증을 설정합니다. 사용자는 계정 설정 페이지(https://myaccount.google.com)로 이동해서 Google Cloud 에서 발급받은 계정과 패스워드를 이용해서 로그인을 합니다.
로그인 후 좌측 메뉴에서 보안을 선택 한 후에 Google에 로그인 메뉴에서 2단계 인증을 선택합니다. 이후 나타나는 화면에서 시작하기를 클릭하고 2단계 인증 활성화 단계를 시작합니다. 계정 로그인을 다시 진행하여 본인 확인을 합니다. 이후 단계는 다음과 같습니다.
2단계 인증에 사용할 휴대 전화 번호 등록
문자 메시지 또는 전화통화를 선택할 수 있습니다. 추가 옵션으로 하드웨어 보안키 또는 Google 메시지를 선택할 수 있습니다.
전화번호를 입력한 후에 문자 메시지를 선택하고 다음 버튼을 클릭합니다.
입력한 전화번호로 문자 메시지가 도착합니다.
문자 메시지에 포함된 인증코드는 G-###### 형식의 6자리 숫자입니다.
전송받은 인증코드를 G-를 포함하여 모두 입력하고 다음을 클릭합니다.
2단계 인증 설정이 완료되었습니다. 사용 버튼을 클릭하면 2단계 인증이 설정 완료됩니다.
사용자 계정에 2단계 인증이 설정되었습니다. 설정한 2단계 인증방식은 문자 메시지로 설정되었기 때문에 향후 Google Cloud에 로그인하는 경우 문자 메시지로 인증코드가 전송됩니다. 인증코드를 문자로 받지 않고 Google Authenticator을 사용하려면 2단계 인증에서 인증 단계를 추가하고 기본 인증 수단을 변경해야 합니다.
OTP 앱으로 인증수단 변경하기
계정 정보의 보안에서 2단계 인증을 선택하면 다음과 같은 화면을 볼 수 있습니다.
화면에서 OTP 앱을 선택합니다. OTP 앱을 선택하기 전에 사용자 휴대전화기에는 Google Authenticator가 이미 설치되어 있어야 합니다. OTP 앱을 선택하면 다음 페이지에서 인증자 설정이라는 버튼을 볼 수 있습니다. 이를 클릭하면 화면에 QR코드가 나타납니다. 휴대전화에서 Google Authenticator 프로그램을 실행하고 + 버튼을 클릭하고 QR코드 스캔을 선택합니다. 휴대전화를 이용해서 컴퓨터 모니터에 보이는 QR코드를 스캔하면 해당 계정이 자동으로 등록됩니다. 컴퓨터 화면에서 다음을 클릭합니다. 인증자 앱 설정 메뉴 화면에서 Google Authenticator에 등록된 계정의 인증 번호(6자리 숫자)를 입력합니다. 입력이 성공했으면 인증 단계 추가가 성공한 것입니다.
이제 2단계 인증 메뉴로 이동하면 ‘사용 가능한 인증 2단계’가 OTP 앱(기본값)과 음성 또는 문자 메시지로 보입니다. OTP 앱을 신규로 추가하면서 OTP 앱이 2단계 인증 기본값이 되었습니다. 이제 사용자는 oogle Cloud에 로그인을 할 때 Google Authenticator을 이용한 2단계 인증을 수행할 수 있게 되었습니다.
사용자 계정을 보호하는 강력한 수단인 2단계 인증 설정은 그리 복잡하지 않습니다. Google Cloud를 사용하는 사용자 분들은 2단계 인증을 활성화시켜서 계정을 보호하는 것을 강력히 권고합니다. 최근 대부분의 포털 서비스나 SNS 사이트 역시 2단계 인증을 지원하므로 이를 적용하여 계정의 안전한 상태를 유지해야 합니다.
지난 글에서 소개해드린 웹 콘솔 접근통제 적용과 사용자 계정의 2단계 인증을 적용하면 매우 강력한 로그인 보안을 구성할 수 있습니다. 안전한 보안 설정을 적용하였더라도 사용자 스스로 계정을 보호해야 하는 것을 잊지 마세요.