Google OTP(Google Authenticator)를 사용한 웹액세스 2차 인증

웹액세스 로그인 시 비밀번호와 더불어 Google OTP 번호를 함께 사용합니다. OTP 번호는 임시 비밀번호로 OTP를 소유한 사용자만이 생성할 수 있으므로 매우 안전한 웹액세스 로그인이 가능해집니다.

웹액세스 설정

Web.config 파일의 AppSettings에서 아래와 같이 UseOTP 값을 true로 지정합니다.

Web.config
<add key="UseOTP" value="true" />

OTP 사용을 활성화시키면 로그인 화면에 OTP 번호 입력란이 추가로 표시되며 로그인 암호 검증 후 OTP 번호(6자리 숫자)까지 검증되어야 로그인이 가능해집니다.

OTP를 등록하지 않은 사용자는 계정과 암호만으로 로그인이 가능합니다. 로그인 후 OTP 미등록 경고가 출력되며 자동으로 환경 설정에 있는 OTP 설정 페이지로 이동됩니다. [OTP 등록] 버튼을 눌러 OTP를 등록하도록 합니다.

Google OTP 설치

Google OTP는 스마트폰에 설치해서 사용할 수 있는 OTP 앱입니다.

구글 Play 스토어 또는 애플 앱스토어에서 Google OTP(Google Authenticator)로 검색한 후 설치합니다.

OTP 등록

최초 OTP 등록 방법은 아래와 같습니다.

  1. 웹액세스에 계정과 암호로 로그인합니다.

  2. 로그인 후 OTP 미등록 경고가 출력되며 환경 설정에 있는 OTP 설정 페이지로 이동할 것을 권장합니다.

  3. 계정 정보 페이지의 구글 OTP에서 [OTP 등록] 버튼을 누릅니다.

  4. OTP 등록을 위한 QR 코드가 출력되는 것을 확인합니다.

  5. 스마트폰에서 Google OTP 앱을 실행한 후 [+] 버튼을 누릅니다.

  6. [QR 코드 스캔] 버튼을 눌러 출력된 QR 코드를 읽으면 메일 주소로 OTP 등록이 됩니다.

  7. 웹액세스 QR 코드 화면에서 [등록] 버튼을 눌러 OTP를 서버에 등록합니다.

OTP를 등록하지 않을 경우 지속적으로 경고 창을 띄워 웹액세스 사용을 매우 불편하게 만듭니다.

  Note

웹모바일은 OTP 등록 기능을 제공하지 않습니다. 웹액세스에서 OTP를 먼저 등록하고 해당 OTP를 사용해야 웹모바일에 로그인할 수 있습니다.

OTP 등록 이후 로그인

OTP가 등록되면 로그인 과정이 변경됩니다.

  1. 웹액세스/웹모바일의 로그인 페이지에서 계정과 암호로 로그인합니다.

  2. 암호가 올바르면 OTP 번호 입력란이 활성화됩니다.

  3. OTP 번호를 입력한 후 [로그인] 버튼을 누릅니다.

  4. OTP 번호가 올바르면 로그인이 성공적으로 마무리됩니다.

OTP를 통해 로그인한 브라우저는 특별한 쿠키가 기록되며 해당 쿠키가 유효하면 OTP 인증 없이 계정과 암호만으로 로그인할 수 있습니다.

이 쿠키는 기본적으로 30일간 유효하므로 해당 브라우저에서는 30일간 편리하게 로그인할 수 있습니다.

Web.config에서 OTPAuthValidityDays 값을 변경해 쿠키 유효 기간을 조정할 수 있습니다. 0을 지정할 경우 쿠키가 발행되지 않으며 매번 OTP 인증이 필요하게 됩니다.

Web.config
<add key="OTPAuthValidityDays" value="30" />

  Caution

보안상 이 쿠키는 매우 중요하므로 HTTPS에서만 동작하도록 설계되어 있습니다. 웹메일 사이트를 HTTP로 운영하면 이 쿠키가 발행되지 않으므로 항상 OTP 입력을 요구합니다.

OTP 해제 방법

OTP 해제 방법은 사용자가 웹액세스에 로그인해서 해제하는 방법과 관리자가 해제하는 두 가지 방법이 있습니다.

웹액세스에서 해제 방법

  1. 웹액세스에 로그인합니다.

  2. [환경설정 > 계정 정보]로 이동합니다.

  3. 구글 OTP에서 [OTP 해제] 버튼을 누릅니다.

관리 도구에서 해제 방법

  1. 메일캐리어 MMC 관리 도구를 실행합니다.

  2. [도메인 > 메일 계정]으로 이동합니다.

  3. 해제할 계정을 선택한 후 속성 창을 엽니다.

  4. [메일 계정] 탭에서 [등록 해제] 버튼을 눌러 OTP를 해제합니다.

메일 서버 시간 동기화

OTP 번호는 현재 시각을 기준으로 생성되므로 메일 서버 시간이 정확해야 합니다. 메일 서버 시간에 오차가 발생할 경우 OTP 비밀번호가 매칭되지 않는 문제가 발생할 수 있으며 로그인이 되지 않게 됩니다.

기본적으로 윈도우의 경우 시간 서버를 이용해 자동으로 동기화되도록 설정되어 있지만, 윈도우 서버 앞단에 존재하는 방화벽에서 시간 서버와의 연결이 차단되어 있다면 서버 시간은 정확하지 않을 수 있습니다. 시간 서버와 동기화 시 오류가 발생한다면 방화벽에서 외부로 나가는 UDP 포트 123번이 허용되어 있는지 확인합니다.