목차/07. 사용자 인증과 세션 관리

07사용자 인증과 세션 관리사용자 인증과 세션 관리

Mobile Access Portal에 들어와 그 안의 응용을 쓰려면, 먼저 사용자가 자신이 주장하는 바로 그 사람임을 증명 해야 합니다. 이것이 인증(Authentication) 입니다. 이 장은 Mobile Access가 지원하는 인증 방식, 한 게이트웨이에 여러 로그인 선택지를 두는 Multiple Login Options, 클라우드 ID 공급자와 잇는 SAML, 일회용 비밀번호 DynamicID로 더하는 다중 인증, Image-Based RADIUS·MS-CHAPv2·reCAPTCHA 같은 변형, 그리고 로그인 이후의 세션 관리와 비밀번호 관리, 활성 세션을 보고 끊는 유틸리티 까지를 원문의 모든 절차·표·파라미터·주의사항을 빠짐없이 풀어 정리합니다.

어떤 방식으로 인증하나

인증은 사용자가 자신이 주장하는 그 사람인지 확인 하는 단계입니다. SmartDashboard에 정의된 사용자는 다음 인증 방식 중 하나 이상 으로 Security Gateway에 인증합니다.

  • Username and password(사용자 이름과 비밀번호) — 사용자가 사용자 이름과 비밀번호를 입력합니다.
  • Client Certificates(클라이언트 인증서) — 디지털 인증서로, Internal Certificate Authority(ICA) 또는 제3자 OPSEC 인증 Certificate Authority 가 발급합니다.
  • RADIUS Server — Remote Authentication Dial-In User Service는 외부 인증 방식입니다. Security Gateway가 원격 사용자의 인증 요청을 RADIUS 서버로 전달하면, 사용자 계정 정보를 보관한 RADIUS 서버가 사용자를 인증합니다. RADIUS 프로토콜은 Security Gateway와의 통신에 UDP 를 씁니다. RADIUS Server와 RADIUS Server Group 객체는 SmartDashboard에서 정의합니다.
  • SecurID — RSA Security의 독자 인증 방식입니다. 외부 SecurID 서버가 몇 초마다 비밀번호를 바꾸어 접근을 관리합니다. 각 사용자는 중앙 서버와 동기화되어 현재 비밀번호를 표시하는 SecurID 토큰(하드웨어 또는 소프트웨어)을 지닙니다. Security Gateway가 원격 사용자의 인증 요청을 RSA Authentication Manager 로 전달합니다.
  • DynamicID One Time Password2차(또는 그 이후) 인증 방식으로만 쓸 수 있고, 1차 인증으로는 쓸 수 없 습니다. 이 방식을 설정하면, 앞 단계 인증을 성공적으로 통과한 사용자에게 추가 자격 증명인 DynamicID 일회용 비밀번호(OTP) 를 요구합니다. OTP는 이메일이나 문자(SMS)로 휴대전화 같은 모바일 기기에 보냅니다.
  • 사용자 레코드에 정의(Legacy Authentication) — 각 사용자의 인증 방식을 사용자 레코드에 직접 박아 둡니다. 내부 사용자는 User 객체 속성의 Authentication 페이지에, LDAP 사용자는 LDAP의 사용자 레코드에 정의합니다.

RADIUS·SecurID를 게이트웨이에서 쓰도록 구성하는 자세한 방법은 R82 Security Management Administration Guide 를 참고하세요.

게이트웨이에 설정되어 있지 않은 인증 방식으로 인증을 시도한 사용자는, 그 게이트웨이를 통한 자원 접근이 거부 됩니다.

구버전 클라이언트와의 호환

구버전 클라이언트는 R77.30 이하 Security Gateway에서 쓰던 것과 같은 로그인 옵션 으로 접속합니다. 클라이언트를 대부분 또는 전부 다중 로그인 옵션 지원 버전으로 올렸다면, 구버전 클라이언트의 접속을 막을 수 있습니다. 막고 나면 다중 로그인 옵션을 지원하는 클라이언트만 게이트웨이에 접속할 수 있습니다.

기본값으로는 Mobile Access > Authentication의 Allow older clients to connect to this gateway(구버전 클라이언트의 이 게이트웨이 접속 허용) 가 선택되어 있습니다. 이 옵션을 해제하면 구버전 클라이언트가 차단됩니다.

또, 다중 로그인 옵션을 지원하는 신버전 클라이언트가 구버전용으로 정의된 인증 설정으로 접속하게 할지 도 선택할 수 있습니다.

신버전 클라이언트의 인증 방식 설정

신버전 클라이언트가 구버전용 인증 방식을 쓰지 못하게 막으려면 다음과 같이 합니다.

  1. Gateway Properties에서 Mobile Access > Authentication 또는 VPN Clients > Authentication 을 선택합니다.
  2. Compatibility with Older Clients 영역에서 Settings 를 클릭합니다. Single Authentication Clients Settings 창이 열립니다.
  3. Allow newer clients that support Multiple Login Options to use this authentication method 의 선택을 해제합니다.
  4. OK 를 클릭합니다.
  5. 정책을 설치(Install policy)합니다.

반대로 신버전 클라이언트가 구버전용 인증 설정으로 접속하게 허용하려면, Allow newer clients that support Multiple Login options to use this authentication method 를 선택합니다.

구버전 클라이언트의 인증 설정

R80.10 이상 Security Gateway에 구버전 클라이언트가 접속하도록 허용하려면 다음과 같이 합니다.

  1. Gateway Properties에서 Mobile Access > Authentication 또는 VPN Clients > Authentication 을 선택합니다.
  2. Allow older clients to connect to this gateway 를 선택합니다. 이 항목을 선택하지 않으면 구버전 클라이언트는 접속할 수 없 습니다.

구버전 클라이언트의 인증 방식을 바꾸려면 다음과 같이 합니다.

  1. Gateway Properties에서 Mobile Access > Authentication 또는 VPN Clients > Authentication 을 선택합니다.
  2. Compatibility with Older Clients 영역에서 Settings 를 클릭합니다. Single Authentication Clients Settings 창이 열립니다.
  3. Display Name 을 바꾸어, SmartConsole에 인증 방식이 표시되는 이름을 바꿉니다.
  4. Authentication method(인증 방식) 를 선택합니다.
  5. Customize 를 클릭해 로그인 창에서 사용자에게 보이는 입력란 설명을 바꿉니다(아래 "Customize Display Settings" 절 참고).
  6. 선택한 인증 방식에 DynamicID를 요구하려면 Enable DynamicID 를 선택합니다. 선택한 뒤에는 Authentication > DynamicID Settings > Edit 에서 게이트웨이의 DynamicID 설정을 구성해야 합니다.
  7. Capsule Workspace 용 설정을 정합니다.
    • Require client certificate 를 선택하면 Capsule Workspace가 항상 클라이언트 인증서를 쓰도록 강제합니다.
    • Allow DynamicID 를 선택하면 선택한 인증 방식에 더해 DynamicID를 요구합니다. 선택한 뒤에는 Authentication > DynamicID Settings > Edit 에서 DynamicID 설정을 구성해야 합니다.
  8. OK 를 클릭합니다.
  9. OK 를 다시 클릭합니다.
  10. Security Gateway에 정책을 설치합니다.

Mobile Access 인증 사용 사례

사용 사례 1 — 인증서를 쓰는 2단계 인증

게이트웨이에 인증서를 1차 요소로 쓰는 2단계 인증 을 다음 두 가지 방법으로 구성할 수 있습니다.

  • Personal Certificate 를 1차 요소로, 그리고 직접 고른 하나 이상의 방식을 추가 요소로 두는 새 Login Option 을 만든다.
  • 기본 Login Option인 Cert_Username_Password 를 쓴다. 이 옵션은 개인 인증서를 1차 요소로, 사용자 이름·비밀번호를 2차 요소로 포함합니다.

인증서를 포함하는 새 다중 인증 로그인 옵션을 만들려면:

  1. Security Gateway 객체를 엽니다.
  2. Mobile Access > Authentication 을 클릭합니다.
  3. Multiple Authentication Clients Settings 표에서 Add 를 클릭해 새 옵션을 만듭니다.
  4. New 를 클릭합니다.
  5. Multiple Login Options 창에서 Login Option의 NameDisplay Name 을 입력합니다. Display Name은 로그인할 때 사용자에게 이 옵션을 나타내는 이름이며, 알아보기 쉬운 설명형 이름으로 둘 수 있습니다.
  6. Authentication Methods 아래에서 Add 를 클릭해 1차 요소를 추가합니다.
    1. Authentication Factor 창에서 Personal Certificate 를 선택합니다. Personal Certificate는 반드시 첫 번째 인증 요소여야 합니다.
    2. Authentication 설정을 구성합니다.
    3. OK 를 클릭합니다.
  7. Authentication Methods 아래에서 Add 를 클릭해 2차 요소를 추가합니다.
    1. Authentication Factor 창에서 RADIUS, SecurID, DynamicID, 또는 Username and Password 중 하나를 선택합니다.
    2. 필요하면 Authentication 설정을 구성합니다.
    3. OK 를 클릭합니다.
  8. 이 Login Option을 Mobile Access Portal에만 또는 Capsule Workspace에만 적용하려면, Usage in Gateway 에서 한쪽 또는 양쪽 클라이언트 유형을 선택합니다.
  9. OK 를 클릭합니다.
  10. Access Control 정책을 설치합니다.

내장 기본 Login Option인 Cert_Username_Password를 쓰려면:

  1. Security Gateway 객체를 엽니다.
  2. Mobile Access > Authentication 을 클릭합니다.
  3. Multiple Authentication Clients Settings 표에서 Add 를 클릭합니다.
  4. 목록에서 Cert_Username_Password 를 선택합니다.
  5. 이 Login Option을 Mobile Access Portal에만 또는 Capsule Workspace에만 적용하려면:
    1. Multiple Authentication Clients Settings 표에서 Cert_Username_Password 를 선택하고 Edit 를 클릭합니다.
    2. Usage in Gateway 에서 한쪽 또는 양쪽 클라이언트 유형을 선택합니다.
  6. OK 를 클릭합니다.
  7. Access Control 정책을 설치합니다.

사용 사례 2 — 게이트웨이에서 사용자가 로그인 옵션 고르기

Login Option이 둘 이상 구성되어 있고 사용자가 다중 로그인 옵션을 지원하는 클라이언트로 접속하면, 로그인할 때 쓸 Login Option을 사용자가 직접 선택 합니다.

  • Mobile Access Portal 에서는 로그인 페이지에 사용 가능한 모든 로그인 옵션이 Display Name으로 표시된 드롭다운 목록 으로 나타납니다.
  • Capsule Workspace 모바일 앱에서는 게이트웨이에 처음 접속할 때 Login Option을 선택 하고, 이후 접속에서는 같은 로그인 옵션이 자동으로 표시됩니다.

게이트웨이의 Multiple Login Options

Mobile Access와 IPsec VPN 모두에 여러 로그인 옵션 을 구성할 수 있습니다. 옵션은 게이트웨이마다, 지원되는 Software Blade마다, 일부 클라이언트 유형마다 다르게 둘 수 있으며, 사용자는 지원되는 클라이언트로 그중 하나를 골라 로그인합니다. 어떤 클라이언트가 새 다중 로그인 옵션을 지원하는지는 sk111583 을 참고하세요.

구성한 각 로그인 옵션은 여러 Security Gateway와 Mobile Access·IPsec VPN Software Blade에서 함께 쓸 수 있는 전역 객체 입니다.

Multiple Login Options 구성하기

로그인 옵션은 다음 위치에서 구성할 수 있습니다.

  • Mobile Access 게이트웨이 객체 속성 > Mobile Access > Authentication
  • Mobile Access 게이트웨이 객체 속성 > VPN Clients > Authentication
  • SmartDashboard > Mobile Access 탭 > Authentication

Mobile Access Portal·Capsule Workspace 같은 Mobile Access 클라이언트용으로 선택한 로그인 옵션Mobile Access > Authentication 페이지의 Multiple Authentication Client Settings 표에 표시됩니다. Endpoint Security VPN·Check Point Mobile for Windows·SecuRemote 같은 VPN 클라이언트용 로그인 옵션VPN Clients > Authentication 페이지의 같은 표에 표시됩니다.

Mobile Access 클라이언트용 다중 로그인 옵션을 구성하려면:

  1. Security Gateway의 Gateway Properties 트리에서 Mobile Access > Authentication 을 선택합니다.
  2. Multiple Authentication Clients Settings 표에서 구성된 로그인 옵션 목록을 봅니다. 기본 로그인 옵션은 다음과 같습니다.
    • Personal_Certificate — 사용자 인증서를 요구합니다.
    • Username_Password — 사용자 이름과 비밀번호를 요구합니다.
    • Cert_Username_Password — 사용자 이름·비밀번호와 사용자 인증서를 모두 요구합니다.
  1. Add 로 새 옵션을 만들거나 Edit 로 기존 옵션을 바꿉니다. 구성한 각 로그인 옵션은 여러 Security Gateway와 Software Blade에서 함께 쓸 수 있는 전역 객체입니다.
  2. 각 로그인 옵션마다 하나 이상의 Authentication Factor(인증 요소) 와 그에 맞는 Authentication Settings 를 선택합니다. 예컨대 SecurID 를 고르면 SecurID Server와 Token Card Type을, Personal Certificate 를 고르면 게이트웨이가 사용자명을 어느 인증서 필드에서 뽑을지를 정합니다(아래 "Certificate Parsing" 절 참고).
  3. Customize Display 를 선택해, 이 옵션으로 로그인할 때 사용자에게 보이는 내용을 구성합니다(아래 "Customize Display Settings" 절 참고).
  4. OK 를 클릭합니다.
  5. 위/아래 화살표로 로그인 옵션의 순서를 정합니다.
    • Personal Certificate 를 포함하면 반드시 첫 번째 여야 합니다.
    • DynamicID 를 포함하면 첫 번째일 수 없 습니다.
  6. 각 Login Option의 Usage in Gateway 에서 그 옵션을 어디서 쓸 수 있게 할지 선택합니다.
    • Mobile Access Portal
    • Capsule Workspace
  7. OK 를 클릭합니다.

로그인 옵션에 클라이언트 지정하기

Mobile Access > Authentication 페이지에서 만든 로그인 옵션은 Mobile Access Portal, Capsule Workspace, 또는 둘 다 에서 쓸 수 있게 지정할 수 있습니다. 선택한 클라이언트에만 그 로그인 옵션이 보입니다.

Customize Display Settings — 로그인 화면 문구 다듬기

사용자가 어떤 정보를 입력해야 하는지 분명히 이해하도록 설명형 값 을 넣습니다. 이 필드들은 모두 같은 언어여야 하지만, 꼭 영어일 필요는 없 습니다.

  • Headline — 로그인 옵션의 제목입니다. 예: "Log in with a Certificate", "Log in with your SecurID Pinpad".
  • Username label — 사용자가 입력할 사용자 이름에 대한 설명입니다. 예: "Email address", "AD username".
  • Password label — 사용자가 입력할 비밀번호에 대한 설명입니다. 예: "AD password".

Certificate Parsing — 인증서에서 사용자명 뽑기

로그인 옵션으로 Personal Certificate 를 선택하면, 게이트웨이가 인증서를 파싱하기 위해 LDAP 서버에 어떤 정보를 보낼지 도 구성할 수 있습니다. 기본값은 DN 이며, 대신 사용자의 이메일 주소나 일련번호(serial number) 를 쓰도록 설정할 수 있습니다.

인증서 파싱 방식을 바꾸려면:

  1. Authentication 페이지의 Multiple Authentication Clients Settings 표에서 Personal_Certificate 항목을 선택하고 Edit 를 클릭합니다. Authentication Factor 창이 열립니다.
  2. Authentication Settings 영역의 Fetch Username from 필드에서, 게이트웨이가 인증서를 파싱할 때 쓸 정보를 선택합니다.
  3. OK 를 클릭합니다.
  4. 정책을 설치합니다.

로그인 옵션 삭제하기

로그인 옵션을 영구히 삭제하려면:

  1. SmartConsole에서 Security Policies > Shared Policies > Mobile Access 를 선택하고 Open Mobile Access Policy in SmartDashboard 를 클릭합니다.
  2. SmartDashboard에서 Mobile Access 탭 > Authentication 페이지로 갑니다.
  3. 로그인 옵션 목록에서 옵션 하나를 선택하고 Delete 를 클릭합니다.

모든 인증 설정 한눈에 보기

모든 Security Gateway와 그 인증 설정을 보려면:

  1. SmartConsole에서 Security Policies > Shared Policies > Mobile Access 를 선택하고 Open Mobile Access Policy in SmartDashboard 를 클릭합니다.
  2. SmartDashboard에서 Mobile Access 탭 으로 갑니다.
  3. 트리에서 Gateways 를 선택합니다.
  4. Security Gateway를 클릭해 그 인증 설정을 봅니다.

Mobile Access용 SAML Identity Provider

이 절은 제3자 Identity Provider를 SAML 프로토콜로 연결해 인증 방식으로 쓰는 방법을 설명합니다. 이때 Mobile Access 게이트웨이와 Mobile Access Portal이 Service Provider 역할을 합니다.

  • Identity Provider 는 신원 정보를 만들고 유지·관리하며 인증 서비스를 제공하는 시스템 개체입니다.
  • Service Provider 는 Identity Provider가 인증한 사용자에게 서비스를 제공하는 시스템 개체입니다.

SAML 인증 처리 흐름

아래 예시 다이어그램에서 Service Provider는 Mobile Access 게이트웨이와 Mobile Access Portal 이고, Identity Provider는 Okta 입니다.

p.144
p.144
  1. 최종 사용자가 Mobile Access 게이트웨이의 URL로 접속합니다.
  2. Mobile Access 게이트웨이가 로그인 페이지를 엽니다.
  3. Mobile Access 게이트웨이가 사용자의 신원을 얻으려고, 사용자 브라우저를 제3자 Identity Provider 포털(예시에서는 Okta)로 리디렉트합니다.
  4. Identity Provider 포털(예시에서는 Okta 포털)이 열리고 사용자가 인증합니다. Identity Provider는 디지털 서명된 SAML assertion 을 만들어 사용자 브라우저로 돌려보냅니다.
  5. 사용자 브라우저가 SAML assertion을 Mobile Access 게이트웨이로 전달합니다.
  6. Mobile Access 게이트웨이가 SAML assertion을 검증한 뒤 사용자를 Mobile Access Portal로 리디렉트합니다. 사용자는 Mobile Access Portal에서 사내 자원에 접근할 수 있습니다.

SAML 구성 절차

1. Mobile Access Software Blade 구성

  1. Mobile Access Software Blade를 활성화합니다("Mobile Access Workflow" 참고).
  2. Mobile Access Portal을 구성합니다("The New Mobile Access Portal" 참고).

2. Legacy SmartDashboard에서 generic 사용자 프로필 구성

External User Profile 은 Identity Provider가 인증하는 모든 사용자를 대표 합니다.

  1. SmartConsole에서 Manage & Settings > Blades 를 클릭합니다.
  2. Mobile Access 영역에서 Configure in SmartDashboard 를 클릭합니다. Legacy SmartDashboard가 열립니다.
  3. 왼쪽 아래 창에서 Users 를 클릭합니다.
  4. 왼쪽 아래 창에서 마지막 폴더 아래의 빈 공간을 우클릭해 New > External User Profile > Match all users 를 선택합니다.
  5. External User Profile 속성을 구성합니다.
    1. General Properties 페이지에서 External User Profile name 은 기본 이름 generic* 로 두고, Expiration Date 에 해당 날짜를 설정합니다.
    2. Authentication 페이지에서 Authentication Scheme 드롭다운으로 해당 옵션을 선택·구성합니다.
    3. Location, Time, Encryption 페이지에서 그 밖의 해당 설정을 구성합니다.
    4. OK 를 클릭합니다.
  6. 상단 도구 모음에서 Update 를 클릭합니다(또는 Ctrl + S).
  7. SmartDashboard를 닫습니다.
  8. SmartConsole에서 Access Control Policy를 설치합니다.

3. Identity Provider 객체 구성

  1. SmartConsole의 Gateways & Servers 뷰에서 New > More > User/Identity > Identity Provider 를 클릭합니다.
p.147
p.147

New Identity Provider 창이 열립니다.

p.148
p.148
  1. New Identity Provider 창의 Data required by the SAML Identity Provider 영역에서 다음을 구성합니다.
    • Gateway 필드에서 SAML 인증을 수행할 Security Gateway를 선택합니다.
    • Service 필드에서 Mobile Access 를 선택합니다.

SmartConsole이 위 두 필드를 바탕으로 다음 필드의 값을 자동 생성 합니다. - Identifier (Entity ID) — Service Provider(여기서는 Security Gateway)를 고유하게 식별하는 URL입니다. - Reply URL — SAML assertion이 전송되는 URL입니다.

  1. Identity Provider 웹사이트에서 SAML 응용(SAML Application)을 구성합니다.
  • Identity Provider의 안내를 따릅니다.
    • New Identity Provider 창의 Identifier (Entity ID)Reply URL 필드 값을 반드시 제공 해야 합니다. SmartConsole에서 이 값을 복사해 Identity Provider 웹사이트의 해당 필드에 붙여 넣습니다.
  • 인증된 사용자 이름을 이메일 형식(alias@domain) 으로 보내도록 Identity Provider를 구성합니다.
    • 선택 사항: 사용자가 속한 Identity Provider의 그룹을 받고 싶으면, 그룹 이름을 group_attr 라는 속성의 값 으로 보내도록 Identity Provider를 구성합니다.
    • 구성 과정이 끝나면 Identity Provider에게서 다음 정보를 반드시 받습니다.
      • Entity ID — 응용을 고유하게 식별하는 URL
      • Login URL — 응용에 접근하는 URL
      • Certificate — Security Gateway와 Identity Provider 사이에 주고받는 데이터를 검증하기 위한 인증서
  1. New Identity Provider 창의 Data received from the SAML Identity Provider 영역에서 다음 중 하나를 구성합니다.
    • Import the Metadata File 을 선택해 Identity Provider가 제공한 메타데이터 파일을 업로드합니다.
    • Insert Manually 를 선택해 Entity IDLogin URL 을 직접 붙여 넣고 Certificate File 을 업로드합니다. 모두 Identity Provider가 제공합니다.

4. Identity Provider를 인증 방식으로 구성

SAML Identity Provider 객체를 인증 방식으로 쓰려면 인증 설정을 구성해야 합니다.

  1. SmartConsole에서 Gateways & Servers 패널을 클릭합니다.
  2. Security Gateway 객체를 엽니다.
  3. 왼쪽 트리에서 Mobile Access > Authentication 을 클릭합니다.
  4. Multiple Authentication Client Settings 영역에서 Add 를 클릭해 새 Realm 객체를 추가합니다.
  5. Login Option 창의 Usage in Gateway 영역에서 Use in Capsule Workspace 박스를 해제합니다.
  6. Login Option 창의 Authentication Methods 영역에서 Add 를 클릭합니다.
  7. Identity Provider 를 선택합니다.
  8. 녹색 [+] 버튼을 클릭해 SAML Identity Provider 객체를 선택합니다.
p.151
p.151
  1. OK 를 클릭합니다.

5. 선택 사항: 그룹 권한 부여(Authorization) 구성

파트 A — Identity Tag 구성

SAML 응용에 구성한 각 그룹마다, SmartConsole에 그에 대응하는 Identity Tag 객체를 만들어야 합니다. Identity Tag의 값은 제공된 그룹의 값 또는 Object ID와 똑같아야 합니다.

파트 B — 그룹 권한 부여 동작 구성

Security Gateway는 그룹에 권한을 부여하는 방식을 여러 가지로 둘 수 있습니다. 권한 부여는 두 가지 종류의 그룹을 다룹니다.

  • Identity Provider groups — Identity Provider가 보내는 그룹입니다.
  • Internal groups — SmartConsole에 구성된 User Directory에서 받는 그룹입니다.

권한 부여 동작은 다음과 같이 설정할 수 있습니다.

옵션 이름수치 값Security Gateway의 권한 부여 동작
Only SAML Groups0Identity Provider 그룹만 고려하고, 내부 그룹은 무시합니다.
Prefer SAML Groups1기본값. Identity Provider 그룹을 우선합니다. Identity Provider에 외부 그룹이 없으면 Ignore SAML Groups 옵션처럼 동작합니다.
Union with SAML Groups2내부 그룹과 Identity Provider 그룹을 모두 고려합니다.
Ignore SAML Groups3내부 그룹만 고려하고, Identity Provider 그룹은 무시합니다.

권한 부여 동작은 Security Gateway에서 보고 바꿀 수 있습니다.

구성된 권한 부여 동작 보기 — Mobile Access 게이트웨이/각 Cluster Member에서 Expert mode로 Check Point Registry의 해당 값을 살핍니다.

ckp_regedit -p SOFTWARE/Checkpoint/Ex_Groups "<Realm Name>"

권한 부여 동작 구성하기 — Mobile Access 게이트웨이/각 Cluster Member에서 Expert mode로 Check Point Registry의 해당 값을 바꿉니다.

ckp_regedit -a SOFTWARE/Checkpoint/Ex_Groups "<Realm Name>" -n {0 | 1 | 2 | 3}

6. Access Control Policy 설치

  1. SmartConsole에서 Install Policy 를 클릭합니다.
  2. 해당 정책을 선택합니다.
  3. Access Control 을 선택합니다.
  4. Install 을 클릭합니다.

DynamicID로 다중 인증하기

다중 인증(Multi-factor authentication)은 둘 이상의 서로 다른 방식으로 사용자를 인증하는 체계입니다. 요소를 하나보다 많이 쓰면 인증의 확실성이 더 높아집니다. DynamicID 는 그 한 가지 선택지입니다.

1차 인증을 성공적으로 통과한 사용자에게 추가 자격 증명인 DynamicID 일회용 비밀번호(OTP) 를 요구합니다. OTP는 SMS 또는 이메일 로 휴대전화 같은 모바일 통신 기기에 보냅니다. DynamicID는 모든 Mobile Access·IPsec VPN 클라이언트에서 지원 됩니다.

DynamicID는 어떻게 동작하나

Mobile Access Portal에 로그인하면 사용자에게 다음과 같은 추가 인증 요청이 보입니다.

사용자는 설정된 전화번호나 이메일 주소로 받은 일회용 비밀번호를 입력하고, 그러면 Mobile Access Portal로 들어옵니다.

User Portal 로그인 화면에는 I didn't get the verification code(인증 코드를 못 받았어요) 링크가 표시됩니다. 사용자가 짧은 시간 안에 SMS나 이메일로 인증 코드를 받지 못하면, 이 버튼을 클릭해 인증 코드를 다시 보내는 옵션 을 받을 수 있습니다.

관리자는 사용자가 목록에서 전화번호나 이메일 주소를 고르게 할 수 있습니다. 이때 전화번호 일부 자릿수만 드러납니다. 사용자는 목록에서 올바른 전화번호나 이메일 주소를 골라 Send 를 클릭해 인증 코드를 다시 받습니다. 기본값으로 사용자는 포털에서 잠기기 전까지 메시지를 세 번 다시 요청할 수 있습니다.

Match Word 기능 — 여러 메시지를 받을 수 있는 상황에서 사용자가 올바른 DynamicID 인증 코드를 식별 하게 해 줍니다. 사용자에게 로그인 페이지에서 match word를 보여 주고, 같은 단어가 올바른 메시지에도 들어 있게 합니다. SMS 메시지를 여러 개 받으면, 같은 match word가 든 것으로 올바른 메시지를 가려낼 수 있습니다.

SMS 서비스 공급자

SMS 서비스 공급자는 Gateway Properties > Network Management > Proxy 에서 구성합니다.

SMS 서비스 공급자에 접근하려면 Security Gateway에서 프록시 설정을 구성합니다.

  1. SmartConsole에서 Gateways & Servers 를 클릭하고 Security Gateway를 더블 클릭합니다. Security Gateway 창이 열리며 General Properties 페이지가 보입니다.
  2. 탐색 트리에서 Network Management > Proxy 를 클릭합니다.
  3. Proxy 설정을 정의합니다. 이 페이지에 프록시를 정의하지 않으면, SMS 공급자에 프록시를 쓰지 않 습니다.

어떤 공급자를 쓰든, 사용자에게 SMS 메시지가 가도록 하려면 공급자에게서 받은 유효한 계정 정보 를 Mobile Access에 구성해야 합니다.

DynamicID 인증 적용 범위(Granularity)

DynamicID 다중 인증을 Security Gateway 로그인의 필수 조건 으로 만들 수도 있고, 지정한 응용에 접근할 때만 필수로 만들 수도 있습니다. 이 유연함으로 보안 등급을 다르게 둘 수 있습니다.

  • 지정한 응용에 접근할 때만 DynamicID 다중 인증을 요구하려면, 다중 인증을 요구하는 Protection Level 을 구성하고 그 Protection Level을 Mobile Access 응용에 연결합니다(아래 "응용별 2단계 인증" 절 참고).
  • Mobile Access Security Gateway가 여럿인 환경에서 특정 게이트웨이에 다중 인증을 필수로 하려면, 그 게이트웨이에 다중 인증을 구성합니다.

DynamicID 인증은 Mobile Access Portal·Capsule Workspace 중 한쪽 또는 양쪽에 필요한 로그인 옵션의 일부가 될 수 있습니다.

SMS·이메일용 DynamicID 기본 구성

DynamicID 2단계 인증의 기본 구성 흐름은 다음과 같습니다.

1. SMS 공급자 자격 증명 및/또는 이메일 설정 얻기

SMS 서비스 공급자에게서 다음 설정을 받습니다.

  • SMS 공급자가 지정한 형식의 URL 또는 유효한 이메일 주소.
  • 계정 자격 증명: User name, Password, API ID(선택, 비워 둘 수 있음).

2. Phone Directory(전화번호부) 구성

기본 전화번호·이메일 검색 방식은, 게이트웨이가 먼저 LDAP account unit의 사용자 레코드 에서 전화번호나 이메일 주소를 찾고, 그다음 로컬 Security Gateway의 phone directory 에서 찾는 것입니다. 구성된 전화번호가 실제로 이메일 주소이면, SMS 대신 이메일을 보냅니다. 이 검색 방식은 Two-Factor Authentication with DynamicID - Advanced 창의 Phone Number or Email Retrieval 영역에서 바꿀 수 있습니다.

LDAP에 전화번호나 이메일 주소 구성하기 — 사용자가 LDAP로 인증한다면, 각 사용자마다 전화번호나 이메일 주소를 정의해 LDAP에 번호 목록을 구성합니다. 기본값으로 Mobile Access는 Telephones 탭의 Mobile 필드 를 씁니다. 구성된 전화번호가 실제로 이메일 주소이면 SMS 대신 이메일을 보냅니다.

각 Security Gateway에 전화번호나 이메일 주소 구성하기 — 각 Mobile Access Security Gateway에 번호·이메일 목록을 구성합니다. Mobile Access 클러스터라면 각 Cluster Member마다 디렉터리를 구성합니다.

Security Gateway에 전화번호 목록을 구성하려면:

  1. 보안 콘솔 연결로 Mobile Access Security Gateway의 명령줄에 접속합니다.
  2. Expert mode로 로그인합니다.
  3. $CPDIR/conf/dynamic_id_users_info.lst 파일을 백업합니다. > 참고 — 이 파일이 아직 없으면 만듭니다.
  4. $CPDIR/conf/dynamic_id_users_info.lst 파일을 편집합니다.
  5. 사용자 이름과 전화번호, 그리고/또는 이메일 주소 목록을 추가합니다. 목록 뒤에는 빈 줄 하나 가 와야 합니다. 다음 구문을 씁니다.
<Username or Full DN> <Phone number or Email address>
파라미터
<Username> 또는 <Full DN>사용자 이름, 또는 인증서로 로그인하는 사용자라면 인증서의 전체 DN.
<Phone number>전화번호에는 공백 문자만 빼고 인쇄 가능한 모든 문자를 쓸 수 있습니다(공백은 허용 안 됨). 자릿수(숫자)만 유효합니다.
<Email address>user@domain.com 형식의 유효한 이메일 주소.

$CPDIR/conf/dynamic_id_users_info.lst 에 사용자와 전화번호·이메일을 적는 예:

bob +044-888-8888
jane.tom@domain.com
CN=tom,OU=users,O=example.com +044-7777777
CN=mary,OU=users,O=example.com +mary@domain.com

여러 전화번호 구성하기 — 사용자가 인증 코드를 다시 받을 때 여러 전화번호 중에서 고르게 할 수 있습니다. Security Gateway의 $CPDIR/conf/dynamic_id_users_info.lst 파일을 편집합니다(없으면 만듭니다).

  • LDAP 디렉터리의 Mobile 필드에 번호 하나를, 그리고 구성 파일에 하나 이상의 전화번호를 넣습니다.
  • 구성 파일에서는 여러 전화번호를 공백으로 구분 해 적습니다.
For example: user_a 917-555-5555 603-444-4444

3. SmartDashboard에서 DynamicID 기본 구성 수행

모든 모바일 기기에 2단계 인증을 필수로 만들도록 Authentication 설정을 구성합니다.

다음 표는 SMS Provider and Email Settings 필드에 쓰는 파라미터를 설명합니다. SMS나 이메일을 보낼 때 이 파라미터 값이 자동으로 채워집니다.

파라미터
$APIIDAPI ID 값입니다.
$USERNAMESMS 공급자의 사용자 이름입니다.
$PASSWORDSMS 공급자의 비밀번호입니다.
$PHONEActive Directory 또는 Security Gateway의 로컬 파일에 있는 사용자 전화번호. + 기호 없이 숫자만.
$EMAILActive Directory 또는 Security Gateway 로컬 파일($CPDIR/conf/dynamic_id_users_info.lst)에 있는 사용자 이메일 주소. 목록과 다른 주소를 쓰려면 명시적으로 적을 수 있습니다. 파일이 없으면 만듭니다.
$MESSAGESmartDashboard의 Advanced Two-Factor Authentication 구성 옵션에서 설정한 메시지입니다.
$RAWMESSAGE$Message 의 텍스트지만, HTTP 인코딩이 적용되지 않은 형태입니다.

모든 Security Gateway용 DynamicID 설정을 SmartDashboard에서 구성하기:

  1. SmartConsole에서 Security Policies > Shared Policies > Mobile Access 를 선택하고 Open Mobile Access Policy in SmartDashboard 를 클릭합니다. SmartDashboard가 열리며 Mobile Access 탭이 보입니다.
  2. 탐색 트리에서 Authentication 을 클릭합니다.
  3. Dynamic ID Settings 영역에서 Edit 를 클릭합니다. DynamicID Settings 창이 열립니다.
  4. 다음 형식 중 하나로 SMS Provider and Email Settings 필드를 채웁니다.
  1. DynamicID 코드를 SMS로만 보내려면:
   
  1. SMS 서비스 공급자 없이 이메일로만 보내려면:
  • SMTP 프로토콜:
   
  • 465 포트의 SMTPS 프로토콜:
   
  • START_TLS를 쓰는 SMTP 프로토콜:
   
  • 587 포트에서 START_TLS를 쓰는 SMTP 프로토콜:
   
  1. DynamicID 코드를 SMS나 이메일 로 보내려면:
   mail:TO=$EMAIL;SMTPSERVER=smtp.example.com;FROM=sslvpn@example.com;BODY=$RAWMESSAGE
   
문자인코딩문자인코딩문자인코딩
!%21(%28;%3B
#%23)%29=%3D
$%24*%2A?%3F
%%25+%2B@%40
&%26,%2C[%5B
'%27/%2F]%5D
:%3A
  1. SMS Provider Account Credentials 영역에 SMS 공급자에게서 받은 자격 증명을 입력합니다 — Username, Password, API ID(선택).
  2. 추가 구성 옵션은 Advanced 를 클릭합니다(아래 "DynamicID 고급 구성" 절 참고).
  3. OK 를 클릭합니다.
  4. Save 를 클릭한 뒤 SmartDashboard를 닫습니다.
  5. SmartConsole에서 정책을 설치합니다.

컴퓨터·기기가 DynamicID를 쓰도록 Mobile Access Security Gateway 구성하기:

  1. SmartConsole에서 Gateways & Servers 를 클릭하고 Security Gateway를 더블 클릭합니다. Security Gateway 창이 열리며 General Properties 페이지가 보입니다.
  2. 탐색 트리에서 Mobile Access > Authentication 을 클릭합니다.
  3. Two-Factor Authentication 영역에서 다음을 구성합니다.
    • 전역 인증 설정을 쓰는 게이트웨이라면 Global settings 를 선택합니다.
    • 다른 인증 설정을 쓰는 게이트웨이라면 Custom settings 를 선택합니다.
    • 모바일 기기에는 Allow DynamicID for mobile devices 를 선택합니다.
  4. OK 를 클릭합니다.
  5. 정책을 설치합니다.

4. DynamicID 2단계 인증 테스트

  1. Mobile Access Portal의 URL로 접속합니다.
  2. 사용자로 로그인합니다.
  3. Security Gateway 인증 자격 증명을 입력합니다.
  4. 모바일 통신 기기로 DynamicID 코드를 받거나 이메일을 확인할 때까지 기다립니다.
  5. 포털에 DynamicID 코드를 입력합니다. Mobile Access Portal에 로그인되는지 확인합니다.

DynamicID 고급 구성

이 절은 DynamicID의 고급 설정을 설명합니다. 기본 설정은 앞의 "SMS·이메일용 DynamicID 기본 구성" 절을 참고하세요.

모든 Security Gateway용 전역 설정을 구성하려면:

  1. SmartConsole에서 Security Policies > Shared Policies > Mobile Access 를 선택하고 Open Mobile Access Policy in SmartDashboard 를 클릭합니다. SmartDashboard가 열리며 Mobile Access 탭이 보입니다.
  2. 탐색 트리에서 Authentication 을 클릭합니다.
  3. DynamicID Settings 영역에서 Edit 를 클릭합니다. DynamicID Settings 창이 열립니다.
  4. Advanced 를 클릭합니다. Two-Factor Authentication with DynamicID - Advanced 창이 열립니다.

특정 Security Gateway용 설정을 구성하려면:

  1. SmartConsole에서 Gateways & Servers 를 클릭합니다.
  2. Security Gateway를 더블 클릭합니다. Security Gateway 창이 열리며 General Properties 페이지가 보입니다.
  3. 탐색 트리에서 Mobile Access > Authentication 을 클릭합니다.
  4. DynamicID Settings 영역에서 Use Global Settings 를 해제합니다.
  5. Edit 를 클릭합니다. DynamicID Settings 창이 열립니다.
  6. Advanced 를 클릭합니다. Two-Factor Authentication with DynamicID - Advanced 창이 열립니다.

다음 해당 설정을 구성합니다.

1) Dynamic ID Authentication Enforcement(인증 강제 수준) — 다음 중 해당 옵션을 선택합니다.

  • Optional — 사용자는 로그인할 수 있지만, DynamicID 인증을 요구하는 응용에는 접근이 거부됩니다. 로그인할 때 2단계 인증을 Skip 할 수 있는 선택지가 주어지며, Skip을 고른 사용자는 로그인은 되지만 2단계 인증을 요구하는 응용에는 접근하지 못합니다.
  • Mandatory — 사용자는 로그인하려면 반드시 DynamicID로 인증 해야 합니다.

2) DynamicID Message(메시지)Message text to be sent to the user 필드에 해당 텍스트를 입력합니다. 기본 메시지 텍스트는 "Mobile Access DynamicID one time password:" 입니다. 메시지에는 사용자 이름을 넣거나 OTP 입력을 안내하기 위한 다음 템플릿 필드를 쓸 수 있습니다.

예: $NAME, use the verification code $CODE to enter the portal.

파라미터
$NAME포털 1차 인증에서 쓴 사용자 이름.
$CODE일회용 비밀번호로 치환됩니다. 기본값으로 $CODE 는 메시지 끝에 붙습니다.

3) DynamicID Settings — 다음 값을 구성합니다.

  • Length of one time password(OTP 길이) — 기본값은 6자리 입니다.
  • One time password expiration (in minutes)(OTP 만료, 분) — 기본값은 5분 입니다. 메시지가 기기·이메일에 도착하고, 사용자가 비밀번호를 확인해 입력하기에 충분한 시간 을 두어야 합니다.
  • Number of times users can attempt to enter the one time password before the entire authentication process restarts(전체 인증 재시작 전까지 OTP 입력 시도 횟수) — 기본값은 3회 입니다.

4) Display User Details(사용자 상세 표시) — 기본값으로는 SMS가 전송된 전화번호를 보여 주지 않습니다. 바꾸려면 In the portal, display the phone number or email address that received the DynamicID 를 선택합니다.

5) Country Code(국가 코드) — LDAP 서버나 Security Gateway 로컬 파일에 저장된 전화번호가 0 으로 시작하면 기본 국가 코드가 붙습니다. 바꾸려면 Default country code for phone numbers that do not include country code 필드에 해당 값을 입력합니다.

6) Phone Number or Email Retrieval(전화번호·이메일 검색) — 다음 중 해당 옵션을 선택합니다.

  • Internal user, LDAP server, or local file — 내부 사용자 객체나 LDAP 사용자 레코드에서 사용자 상세를 가져오려 시도하고, 실패하면 Mobile Access 게이트웨이의 로컬 파일에서 가져옵니다.
  
  • Internal user or LDAP server only — 내부 사용자 객체나 LDAP 사용자 레코드에서만 가져옵니다.
  • Local File Only — Mobile Access 게이트웨이의 로컬 파일에서만 가져옵니다.
  

설정한 뒤 OK 를 클릭하고, Access Control 정책을 설치합니다.

인증 코드 재전송과 Match Word 구성

DynamicID 문제 해결(troubleshooting)과 match word 기능은 Database Tool(GuiDBEdit Tool) 또는 dbedit 으로 구성합니다(sk13301 참고).

편집할 GuiDBEdit 테이블은, SmartDashboard의 Mobile Access Gateway Properties > Authentication에서 구성한 Two-Factor Authentication with SMS One Time Password(OTP) 설정에 따라 다릅니다.

  • DynamicID OTP 설정이 모든 Security Gateway에 걸친 전역 설정 이라면(use the global settings configured in the Mobile Access tab 선택됨), GuiDBEdit에서 Other > Mobile Access Global Properties 를 선택합니다.
  • DynamicID OTP 설정이 특정 Security Gateway용 이라면(this Security Gateway has its own two-factor authentication settings 선택됨), GuiDBEdit에서 network_objects 를 선택한 뒤 편집할 특정 Security Gateway를 선택합니다.

구성할 수 있는 DynamicID 기능과 GuiDBEdit에서의 편집 위치는 다음과 같습니다.

기능편집할 속성값과 설명
Match Worduse_message_matching_helpertrue: match word 제공 / false: match word 미제공(기본)

메시지 재전송 횟수 구성 — GuiDBEdit에서 다음 속성을 편집합니다.

기능편집할 속성값과 설명
Resend message(메시지 재전송)enable_end_user_re_transmit_messagetrue: SMS 재전송 기능 켜기(기본) / false: 끄기
Display multiple phone numbers(여러 전화번호 표시)enable_end_user_select_phone_numtrue: 인증 코드 재전송 시 여러 전화번호·이메일 중 선택 옵션 켜기(기본) / false: LDAP 서버나 로컬 파일의 전화번호·이메일 하나를 선택 없이 자동 사용
Conceal displayed phone numbers(표시 번호 가리기)reveal_partial_phone_numnumber_of_digits_revealedreveal_partial_phone_numtrue: 전화번호·이메일 일부 가리기(기본) / false: 전체 표시. number_of_digits_revealed1~20: 드러낼 자릿수(기본 4)

GuiDBEdit에서 값을 편집한 뒤:

  1. 모든 변경을 저장합니다 — File 메뉴 > Save All.
  2. GuiDBEdit를 닫습니다.
  3. SmartConsole을 엽니다.
  4. Security Gateway에 Access Control 정책을 설치합니다.

메시지 재전송 횟수 구성(CLI)

기본값으로 사용자는 I didn't get the verification code 링크를 클릭해 인증 코드 메시지를 세 번 다시 요청할 수 있고, 그 뒤에는 Mobile Access Portal에서 잠깁니다. 재전송 가능 횟수는 Mobile Access CLI에서 Expert mode로 cvpnd_settings 명령으로 구성합니다.

인증 코드 메시지 재전송 횟수를 5회로 바꾸려면, Security Gateway에서 Expert mode로 다음을 실행합니다.

cvpnd_settings set smsMaxResendRetries 5

5 를 다른 숫자로 바꾸면 재시도 횟수를 달리 설정할 수 있습니다. 변경 후에는 cvpnrestart 명령을 실행해 설정을 적용합니다. Mobile Access Security Gateway가 클러스터의 일부라면 각 Cluster Member에 같은 변경 을 적용해야 합니다.

Security Gateway별 2단계 인증

  1. 기본 2단계 인증을 구성합니다(앞 "SMS·이메일용 DynamicID 기본 구성" 절 참고).
  2. 각 Security Gateway의 Security Gateway Properties에서 Gateway Properties > Mobile Access > Authentication 으로 갑니다.
  3. 다음 중 하나를 구성합니다.
    • 전역 설정을 쓰려면Global settings 를 선택합니다. Mobile Access 탭의 Authentication to Gateway 페이지에 있는 전역 설정이 쓰입니다. 기본값 입니다.
    • 이 게이트웨이의 2단계 인증을 끄려면Custom Settings for this Gateway 를 선택하고 Configure 를 클릭합니다. 열린 창에서 체크박스를 선택하지 않 습니다. 그러면 이 게이트웨이의 2단계 인증이 꺼집니다.
    • 사용자 정의 설정으로 켜려면Custom Settings for this Gateway 를 선택하고 Configure 를 클릭합니다. 열린 창에서 체크박스를 선택 합니다. 그런 다음 이 게이트웨이용 SMS Provider Credentials 를 구성해야 하며, 선택적으로 Advanced 옵션도 구성합니다.
  4. 다른 모든 Security Gateway에 2~3단계를 반복합니다.
  5. Access Control 정책을 설치합니다.

응용별 2단계 인증

응용별로 2단계 인증을 구성하려면:

  1. SmartConsole에서 Security Policies > Shared Policies > Mobile Access 를 선택하고 Open Mobile Access Policy in SmartDashboard 를 클릭합니다. SmartDashboard가 열리며 Mobile Access 탭이 보입니다.
  2. 기본 2단계 인증을 구성합니다(앞 절 참고).
    1. Phone directory를 구성합니다.
    2. Mobile Access 탭 > Authentication에서 응용 설정을 구성합니다.
    3. 모바일 기기가 DynamicID를 쓰도록 Mobile Access Security Gateway를 구성합니다.
  3. "Mobile Access Applications"를 구성합니다.
    1. Protection Level 창의 탐색 트리에서 Authentication 을 클릭합니다.
    2. User must successfully authenticate via SMS 를 선택합니다.
    3. OK 를 클릭합니다.
  4. 2단계 인증이 필요한 Mobile Access 응용에 이 Protection Level을 할당합니다.
  5. Save 를 클릭합니다.
  6. SmartDashboard를 닫습니다.
  7. SmartConsole에서 Access Control 정책을 설치합니다.

SMS 공급자 인증서·프로토콜 바꾸기

기본값으로는 SMS 공급자와 통신할 때 보안(https) 프로토콜 을 쓰기를 권장합니다. Mobile Access는 또 미리 정의된 신뢰할 수 있는 CA 묶음 으로 공급자 서버 인증서를 검증합니다.

SMS 공급자가 신뢰되지 않는 서버 인증서 를 쓴다면 다음 중 하나를 할 수 있습니다.

  • 서버 인증서 발급자를 $FWDIR/database/{} 의 신뢰 CA 묶음에 추가하고 Expert mode로 다음을 실행합니다.
  
  • $CVPNDIR/conf/cvpnd.C 파일을 편집해 SmsWebClientProcArgs 값을 ("-k") 로 바꾸어 서버 인증서 검증을 무시 합니다.

SMS 공급자가 비보안 HTTP 프로토콜 로 동작한다면, $CVPNDIR/conf/cvpnd.C 파일을 편집해 SmsWebClientProcArgs 값을 ("") 로 바꿉니다.

Image-Based RADIUS 인증

Image-based RADIUS 는 Mobile Access Portal 인증의 2차 인증 요소 로 쓰며, Mobile Access가 제3자 인증 서비스와 통합 되게 해 줍니다.

이 인증 요소의 이미지는 격자(grid)에 무작위 숫자가 배열된 패턴 입니다. 인증할 때 사용자는 미리 정해 둔 패턴에 해당하는 위치의 숫자 들을 고릅니다.

Image-Based RADIUS 구성

Mobile Access에서 image-based RADIUS를 인증 요소로 쓰려면, SmartConsole로 RADIUS 인증을 구성해야 합니다.

SmartConsole에서 Mobile Access 인증 요소를 구성하려면:

  1. SmartConsole의 Gateways & Servers 탭에서 Security Gateway를 더블 클릭합니다. Check Point Security Gateway 창이 보입니다.
  2. 메뉴에서 Mobile Access > Authentication 을 클릭합니다.
  3. Multiple Authentication Client Settings 표에 새 로그인 옵션을 추가합니다.
    1. Add > New 를 클릭합니다. Multiple Login Options 창이 보입니다.
    2. Authentication Methods 표에서 Add 를 클릭해 인증 요소를 만듭니다.
    3. Authentication Factor 창이 열리면 RADIUS 를 클릭합니다.
    4. Customize Display 아래에서 Headline 에 적절한 설명을 더합니다.

Security Gateway에서 Image-Based RADIUS 켜기

Image-based RADIUS를 켜려면, 이를 인증 요소로 쓰는 각 Mobile Access Security Gateway에서 $CVPNDIR/conf/cvpnd.C 파일을 편집합니다.

:isImageBasedRadiusEnabled (false)
:ImageBasedRadiusRealmNames (
)
:ImageBasedRadiusURL ("")
필드설명
:isImageBasedRadiusEnabled (true) / (false)true 면 켜고 false 면 끕니다. true 면 Security Gateway가 :ImageBasedRadiusRealmNames 의 모든 RADIUS 인증 요소를 image-based RADIUS 인증 요소로 취급합니다.
:ImageBasedRadiusRealmNamesSmartConsole에 구성된 인증 realm 중 image-based RADIUS를 2차 요소로 포함하는 realm 이름 목록입니다. 비어 있으면 RADIUS를 2차 인증으로 둔 모든 realm을 image-based RADIUS로 취급합니다.(: ("realm name as configured") : ("another realm with Image-based RADIUS"))
:ImageBasedRadiusURL사용자 격자를 가져올 제3자 인증 서비스의 URL. 사용자명 자리표시자로 $$username 을 씁니다.("https://<authentication_provider_url>?<query_string>&username=$$username")

RADIUS 서버에서 MS-CHAPv2와 UPN으로 인증

Remote Access VPN 클라이언트를 RADIUS 서버에서 MS-CHAPv2 프로토콜과 UPN(<username>@<domain>) 으로 인증하도록 켜려면 다음과 같이 합니다.

  1. Security Gateway / 각 Cluster Member의 명령줄에 접속합니다.
  2. Expert mode로 로그인합니다.
  3. 현재 값을 확인합니다.
   ckp_regedit -p SOFTWARE/Checkpoint/VPN1 | grep --color RADIUS_MSCHAPV2_UPN
   
  1. 이 기능을 켜려면:
   ckp_regedit -a SOFTWARE/Checkpoint/VPN1 RADIUS_MSCHAPV2_UPN -n 1
   

이 명령은 즉시 적용되며 재시작이 필요 없 습니다.

이 기능을 끄려면:

   ckp_regedit -a SOFTWARE/Checkpoint/VPN1 RADIUS_MSCHAPV2_UPN -n 0
   

Google reCAPTCHA Challenge

reCAPTCHA 서비스는 고급 위험 분석 엔진과 적응형 CAPTCHA 로 자동화 소프트웨어가 악용 행위를 하지 못하게 막습니다. 악의적 로그인을 막으면서도 인증된 사용자는 수월하게 통과시킵니다.

Security Gateway에 Google reCAPTCHA v2 를 구성하면, 잘못된 로그인 시도가 여러 번 일어났을 때 사용자에게 reCAPTCHA를 띄웁니다. reCAPTCHA는 사용자가 실패 시도 최대 횟수에 도달 했을 때 챌린지로 나타납니다.

  • reCAPTCHA 챌린지는 ClusterXL·VSX와 호환 됩니다.
  • reCAPTCHA 챌린지는 Capsule Workspace에서는 지원되지 않 습니다.
  • 지원 브라우저는 Google 문서를 참고하세요.

Google에 Mobile Access를 reCAPTCHA로 등록

Mobile Access에서 reCAPTCHA를 쓰려면 Mobile Access Portal의 FQDN을 reCAPTCHA에 등록 해야 합니다. 방법은 Google reCAPTCHA 사이트의 안내를 참고합니다.

Mobile Access Portal에 reCAPTCHA 추가

reCAPTCHA는 Security Gateway를 직접 수동 구성 해야 합니다. reCAPTCHA를 켜려면 Security Gateway에 다음이 필요합니다.

  • 인터넷 연결
  • DNS 구성
  • IP 주소가 아닌 FQDN으로 된 Portal URL 구성

FQDN이 아니라 IP 주소로 포털에 접속하면 FQDN 링크로 리디렉트 됩니다.

Security Gateway를 수동 구성하려면 $CVPNDIR/conf/cvpnd.C 파일을 편집합니다.

파일에는 다음이 보입니다.

:isCaptchaEnabled (false)
:isCaptchaEnabledForRelogin (false)
:captchaFailOpen (false)
:captchaPenaltyTimeInSeconds (1800)
:captchaFailedAttemptsThreshold (2)
:reCaptchaSiteKey ()
:reCaptchaSecret ()
:isCaptchaSettingsVerifierEnabled (false)
필드설명
:isCaptchaEnabled (true) / (false)true 면 켜고 false 면 끕니다.
:IsCaptchaEnabledForRelogin (true) / (false)재로그인 흐름에서 reCAPTCHA를 보일지 정합니다. true 면 켜고 false 면 끕니다.
:captchaFailOpen (true) / (false)포털 진입 방식입니다. 다음 상황에서 사용자를 언제 막을지 정합니다 — Security Gateway에서 Google로의 연결 없음, 비밀 키(secret key)가 잘못되거나 없음, Google의 검증 응답이 잘못되거나 없음, Portal URL이 FQDN으로 구성되지 않음. False 면 사용자가 포털에 접근하지 못합니다(자세한 내용은 로그인 로그 참고). True 면 접근이 허용되며, reCAPTCHA 챌린지가 검증되지 않았다는 경고가 표시됩니다.
:captchaPenaltyTimeInSeconds (1800)페널티를 받은 사용자가 로그인에 성공할 때까지 매 로그인마다 reCAPTCHA로 챌린지받는 시간(초). 기본 1800초.
:captchaFailedAttemptsThreshold (2)reCAPTCHA가 나타나기 전, 사용자가 로그인에 실패할 수 있는 횟수. 기본값은 정해진 시간 안에 2회 실패. 그 시간 안의 실패가 세어지고, 시간이 지나면 실패 카운터가 다시 0이 됩니다. 0 으로 두면 모든 로그인 시도마다 reCAPTCHA 챌린지가 나타납니다.
:reCaptchaSiteKey ()Google에서 받은 site key.
:reCaptchaSecret ()Google에서 받은 secret.
:isCaptchaSettingsVerifierEnabled (true) / (false)reCAPTCHA 구성과 Security Gateway 연결을 점검하는 유틸리티 페이지. true 면 페이지를 켜고 false 면 끕니다. 보려면 https://<Portal URL>/Login/verifyCaptchaSettings 로 접속합니다.

reCAPTCHA 챌린지를 받으면 일부 자바스크립트가 브라우저로 다운로드됩니다.

Security Gateway가 사용자를 찾는 방식

Security Gateway의 메인 Legacy Authentication 페이지에서 블레이드의 인증을 구성하면, 사용자가 인증을 시도할 때 게이트웨이가 표준 방식 으로 사용자를 찾습니다. 검색 순서는 다음과 같습니다.

  1. 내부 사용자 데이터베이스 를 먼저 찾습니다.
  2. 그 데이터베이스에 해당 사용자가 정의되어 있지 않으면, Account Unit에 정의된 User Directory(LDAP) 서버를 우선순위에 따라 하나씩 조회합니다. Account Unit이 둘 이상이면 모두 동시에 검색합니다. 서버가 여럿일 때 서버 우선순위는 한 account unit 범위 안에서만 정할 수 있고, 여러 account unit 사이에서는 정할 수 없습니다.
  3. 그래도 정보를 찾지 못하면, 게이트웨이가 외부 사용자 템플릿 으로 generic 프로필과의 일치 여부를 봅니다. 이 generic 프로필은 해당 사용자에게 적용되는 기본 속성을 가집니다.

세션 설정(Session Settings)

Mobile Access 정책을 구성하려면:

  1. SmartConsole의 Manage & Settings 뷰에서 Blades 를 클릭합니다.
  2. Mobile Access 영역에서 Capsule Workspace Settings 를 클릭합니다.
  3. 최소 한 Security Gateway에 Mobile Access 블레이드가 켜져 있는지 확인합니다.
  4. Shared Policies 뷰로 가서, Shared Policies 영역에서 Mobile Access 를 클릭합니다.
  5. Mobile Access 정책을 구성하려면 Policy 페이지 또는 Profiles Policy 페이지를 클릭합니다.

Mobile Access Portal 동시 로그인

한 사용자가 두 곳에서 동시에 Mobile Access에 로그인하는 것은 잠재적 보안 문제입니다. 동시 로그인 방지(Simultaneous login prevention) 는 한 번보다 많이 로그인한 원격 사용자를 게이트웨이가 자동으로 끊게 해 줍니다.

동시 로그인 방지가 켜져 있고 같은 인증 정보로 두 다른 컴퓨터에서 로그인하면, 나중 로그인만 정당한 것 으로 보고 앞선 세션은 로그아웃됩니다.

동시 로그인 방지 구성

동시 로그인 방지는 SmartDashboard의 Mobile Access 탭에서 Additional Settings > Session 을 선택해 구성합니다. 옵션은 다음과 같습니다.

  • User is allowed several simultaneous logins to the Portal(여러 번 동시 로그인 허용) — 동시 로그인 감지가 켜집니다. 기본 옵션 입니다.
  • User is allowed only a single login to the portal(한 번만 로그인 허용)Inform user before disconnecting his previous session(이전 세션을 끊기 전에 사용자에게 알림) 을 선택하지 않은 경우: 앞선 사용자가 끊기고 나중 사용자가 허용됩니다. 앞선 사용자는 로그아웃되며, Mobile Access Portal 사용자에게 다음 메시지가 표시됩니다.

나중 사용자는 앞선 사용자가 로그인되어 있었다는 사실을 통지받지 않 습니다. - User is allowed only a single login to the portal(한 번만 로그인 허용)Inform user before disconnecting his previous session 을 선택한 경우: 나중 사용자에게 앞선 사용자가 로그인되어 있음을 알리고, 로그인을 취소해 기존 세션을 유지할지, 아니면 로그인해 기존 세션을 끝낼지 고르게 합니다. 기존 세션을 끝내면 그 사용자는 다음 메시지와 함께 로그아웃됩니다.

동시 로그인 추적

동시 로그인 이벤트를 추적하려면, Additional Settings > Session 페이지의 Tracking 영역에서 All Events 를 선택합니다.

게이트웨이가 사용자를 끊으면, 두 로그인의 연결 정보를 모두 담은 로그 를 기록합니다. 모든 끊김·연결 이벤트는 트래픽 로그에 대응 항목을 만듭니다. 동시 로그인과 관련된 authentication status 필드의 값 은 다음과 같습니다.

  • Success — 사용자가 성공적으로 로그인했고, 기존 활성 세션이 종료되었습니다.
  • Inactive — 사용자가 인증에는 성공했지만, 로그온 전에 기존 세션을 종료해야 합니다.
  • Disconnected — 같은 사용자가 다른 세션으로 로그온해서 기존 사용자 세션이 종료되었습니다.

동시 로그인 관련 이슈

동시 로그인과 관련해 다음 이슈가 생길 수 있습니다.

Endpoint Connect — Endpoint Connect 사용자에게는 Mobile Access가 동시 로그인을 막지 않습니다. 이는 "User can have several simultaneous logins to the portal" 옵션과 같습니다. Endpoint Connect 사용자는 같은 사용자 이름의 다른 사용자를 로그아웃시킬 수 없고, 같은 사용자 이름의 다른 사용자에게 로그아웃당하지도 않습니다.

SecureClient MobileUser can have only a single simultaneous login to the portal 을 선택하고 Inform user before disconnecting previous sessions 를 선택하지 않은 경우, SecureClient Mobile 사용자는 다른 사용자에게 로그오프당할 수 있고, 다른 사용자를 로그오프할 수도 있습니다. 다만 Inform user before disconnecting his previous session 옵션은 동작하지 않 습니다. 그 사용자들에게는 메시지를 보낼 수 없기 때문입니다. 이 사용자는 로그오프당할 수는 있지만, 다른 사용자를 로그오프할 수는 없습니다.

그 밖의 이슈

  1. 다른 사용자가 세션을 끊었을 때 SSL Network Extender 응용 모드 클라이언트를 쓰고 있으면, 세션은 끊겨도 SSL Network Extender 창은 열린 채 남습니다. Secure Workspace 를 쓰고 있을 때도 마찬가지로, 세션은 끊겨도 Secure Workspace는 열린 채 남습니다.
  2. 다른 사용자가 세션을 끊었을 때 Citrix 를 쓰고 있으면, 세션은 끊겨도 Citrix 창은 열린 채 남습니다.
  3. User can have only a single login to the Portal 에서 User is allowed several simultaneous logins to the Portal 로 항목을 바꾸면, 현재의 모든 세션이 삭제 됩니다.

세션 타임아웃

인증 후 원격 사용자는 로그아웃하거나 세션이 종료될 때까지 Mobile Access 세션 안에서 작업합니다. 보안 모범 사례에서는 보안 원격 자원의 오용을 막기 위해 활성·비활성 Mobile Access 세션의 길이를 제한 하라고 권합니다.

Mobile Access는 두 종류의 세션 타임아웃을 제공하며, 둘 다 SmartDashboard의 Mobile Access 탭에서 Additional Settings > Session 을 선택해 구성합니다.

  • Re-authenticate users every(재인증 주기)최대 세션 시간 입니다. 이 기간에 도달하면 사용자는 다시 로그인해야 합니다. 기본값은 60분 입니다. 이 타임아웃을 바꾸면 현재 세션이 아니라 앞으로의 세션 에만 영향을 줍니다.
  • Disconnect idle sessions after(유휴 세션 끊기)연결이 유휴 상태로 남으면 끊는 시간 입니다. 기본값은 15분 입니다. SSL Network Extender로 접속할 때는 이 타임아웃이 적용되지 않 습니다.

Capsule 클라이언트의 경우:

  1. SmartConsole의 왼쪽 작업 표시줄에서 Security Policies 를 클릭합니다.
  2. Blades 를 클릭합니다.
  3. Mobile Access 영역에서 Capsule Workspace Settings 버튼을 클릭합니다. Capsule Workspace Settings 메뉴가 열립니다.
  4. Profiles 탭을 엽니다.
  5. 다음 중 하나를 합니다.
    • 새 Mobile Profile을 만들려면 표 안을 우클릭 후 New 를 클릭합니다.
    • 기존 Mobile Profile을 편집하려면 해당 프로필이 든 행을 우클릭 후 Edit... 를 클릭합니다.

Mobile Profile 창이 열립니다. 6. Security 탭을 엽니다. 7. Access Settings 영역에서 Session timeout 필드에 해당 값을 구성합니다(예: "2 Hours"). 8. OK 를 클릭합니다. 9. 정책을 설치합니다.

Roaming(로밍)

Roaming 옵션은 사용자가 활성 세션 동안 IP 주소를 바꿀 수 있게 해 줍니다.

Tracking(추적)

Mobile Access를 구성해 로그인 시도, 로그아웃, 타임아웃, 활동 상태, 라이선스 만료 경고 를 포함한 세션 활동을 로그로 남길 수 있습니다.

인증 자격 증명 보호

같은 컴퓨터에서 여러 사용자가 Mobile Access Portal에 접근 하는 것은 보안 위험이 될 수 있습니다. Mobile Access Portal에 로그인한 사용자가 새 브라우저 창을 열면 앞선 세션의 접근 권한을 그대로 얻 을 수 있고, 그러면 다시 로그인하지 않고도 곧장 Mobile Access Portal로 들어갈 수 있습니다.

인증 자격 증명을 남에게 도용당하지 않도록, 브라우저 사용을 마치면 로그오프하거나 모든 브라우저 창을 닫 으라고 사용자에게 권하세요.

고급 비밀번호 관리 설정

조직이 사용자 관리에 Microsoft Active Directory(AD) 를 쓴다면, 다음 비밀번호 설정으로 사용자가 끊김 없이 원격 접근 하게 할 수 있습니다.

비밀번호 만료 경고

관리자는 SmartDashboard를 구성해 비밀번호가 만료되기 전에 바꾸라 고 사용자에게 알릴 수 있습니다. 이는 사용자가 자원에 끊김 없이 접근하게 하는 효율적인 방법입니다(sk33404 참고).

만료된 비밀번호 다루기

비밀번호는 다음 경우에 만료됩니다.

  • 비밀번호가 Active Directory Group Policy에 설정된 최대 일수 를 넘긴 경우.
  • Active Directory 구성에서 User must change password at next logon(다음 로그온 시 비밀번호 변경) 옵션이 켜진 경우.

비밀번호가 만료되면 로그인 실패 메시지가 표시됩니다. 관리자는 SmartDashboard에서 설정을 구성해, 옛 비밀번호 만료 후 새 비밀번호를 입력 할 선택지를 사용자에게 줄 수 있습니다. 비밀번호가 만료된 사용자는 다음 메시지를 받습니다.

그러면 Mobile Access나 VPN 클라이언트 포털에 들어가려고 새 비밀번호를 입력하고 확인 해야 합니다.

만료 후 비밀번호 변경 구성

만료 후 비밀번호 변경은 R71 이상 Security Gateway 에서 구성할 수 있습니다. LDAP 서버가 LDAP over SSL로 동작 하도록 구성되어 있는지 확인하세요.

만료 후 비밀번호 변경을 켜려면:

  1. SmartDashboard에서 Global Properties > User Directory (LDAP) 를 선택합니다.
  2. User Directory (LDAP) Properties 아래에서 Enable Password change when a user's Active Directory password expires 를 선택합니다.
  3. LDAP Account Unit Properties 창에서, 할당된 ProfileMicrosoft_AD 인지 확인합니다.
  4. SmartDashboard에 구성된 LDAP 서버의 Login DNActive Directory 사용자의 비밀번호를 수정할 권한 을 충분히 가지는지 확인합니다.
  5. LDAP Server Properties 창의 Encryption 탭에서 Use Encryption (SSL) 을 선택합니다.
  6. Active Directory의 LDAP 스키마가 Check Point의 LDAP 스키마로 확장되어 있지 않다면, Database Tool(GuiDBEdit Tool)로 다음을 바꿉니다.
    • Managed Objects > LDAP > Microsoft_AD > Common 을 선택합니다.
    • SupportOldSchema 를 찾아 값을 1 로 바꿉니다.

LDAP·사용자 관리에 관한 자세한 내용은 R82 Security Management Administration Guide 를 참고하세요.

Session Visibility and Management Utility

세션 가시성·관리 소개

Session Visibility and Management Utility 가 켜져 있으면, 사용자가 R77.30 이상 Security Gateway에 원격 접속할 때마다 그 데이터가 SQL 데이터베이스에 기록 됩니다. 이 데이터베이스에 이 유틸리티로 쿼리를 실행할 수 있습니다. 유틸리티로 할 수 있는 일은 다음과 같습니다.

  • 조건(constraint)에 따라 세션 정보 보기.
  • 조건에 따라 사용자 세션 끊기.

주요 명령은 아래에 설명합니다. 구성 XML 파일을 편집해 사용자 정의 명령 을 만들 수도 있습니다(고급 구성은 sk104644 참고).

다음 Check Point 클라이언트는 이 유틸리티에서 완전히 지원 됩니다.

  • iOS·Android용 Capsule Workspace
  • SSL Network Extender(Application·Network 모드)를 쓰는 Mobile Access Portal
  • Endpoint Security Suite의 일부인 Remote Access VPN
  • Remote Access 클라이언트: Endpoint Security VPN, Check Point Mobile for Windows, SecuRemote

다음 클라이언트는 지원되지만 세션을 끊을 수는 없 습니다.

  • Capsule Connect
  • Capsule VPN
  • Windows 8.1 Check Point VPN Plugin

Security Gateway에서 유틸리티 켜기

기본값으로 Session Visibility and Management Utility는 꺼져 있 습니다.

유틸리티를 켜거나 끄려면:

  1. 켜려면 다음을 실행합니다.
   RAsession_util on
   

끄려면 다음을 실행합니다.

   RAsession_util off
   
  1. 다음을 실행합니다.
   
  1. 다음을 실행합니다.
   

열린 세션 수 보기

구문:

RAsession_util show sessions_num

Remote Access 사용자 끊기

구문:

RAsession_util terminate {all | byuser <user> | bysession_id <id> | custom <SQL constraint>}
파라미터설명
all모든 Remote Access 사용자를 끊습니다.
byuser사용자 이름으로 사용자를 끊습니다.
bysession_id주어진 세션 ID의 세션을 끊습니다.
customSQL constraint와 일치하는 사용자를 끊습니다.

예:

RAsession_util terminate all
RAsession_util terminate byuser james_wilson
RAsession_util terminate bysession_id 521bd4788
RAsession_util terminate custom "src_ip='1.1.1.1'"

사용자 데이터 보기

구문:

RAsession_util show users {all | byname <user_name> | where <where_clause>}
파라미터설명
all모든 사용자를 보여 줍니다.
byuser주어진 사용자 이름의 데이터를 보여 줍니다.
whereconstraint로 사용자를 보여 줍니다.
certsconstraint로 사용자 인증서를 보여 줍니다.

예:

RAsession_util show users all
RAsession_util show users byuser "james_wilson"
RAsession_util show users where "client_name='Mobile Access Portal'"

마지막 명령은 Mobile Access Portal로 접속한 모든 사용자를 보여 줍니다.

Constraint(조건) 쓰기

기본 정의와 다른 사용자를 끊거나 그 데이터를 보려면 constraint 를 씁니다. 먼저 Remote Access 세션에 대한 Check Point 스키마에 익숙해진 뒤, 필드 이름이나 유형으로 일치하는 사용자에게 terminateshow users 명령을 실행합니다.

유효한 constraint 필드를 보려면:

RAsession_util show scheme

예 — 클라이언트가 Mobile Access Portal인 사용자에 대해 주어진 필드들을 보여 주며, 결과를 생성 시간순으로 정렬합니다.

RAsession_util show custom -FIELDS "session_id,user_name,client_name,browser_name,machine_name,os_name" -WHERE "client_name='Mobile Access Portal'" -ORDERBY "creation_time"

예 — 클라이언트 유형이 Capsule Workspace인 경우 주어진 필드들을 보여 줍니다.

RAsession_util show custom -FIELDS "user_name,sessionid,client_ver,client_build_number,os_name,os_ver,device_type" -WHERE "client_name='Capsule Workspace'"

Session Visibility and Management 명령

SCHEME

  • 설명: 데이터베이스의 테이블 스키마를 보여 줍니다.
  • 사용법: SCHEME
  • 파라미터: 없음

SESSION_OP

  • 설명: 정의한 constraint에 따라 세션에 작업을 수행합니다.
  • 사용법:
  SESSION_OP <Operation_type> <Sql_constraint [list_of_parameters]>
  
파라미터설명
Operation_type세션에 수행할 작업 유형. 이 릴리스에서는 terminate 만 지원됩니다.
Sql_constraint작업할 세션을 고르는 기준. 예: "username='aa'". 값 대신 $ 기호를 쓴 매개변수형 SQL WHERE 절도 됩니다. 예: "username=$1 and srcip=$2". 이때 List_of_parameters의 첫 번째 매개변수가 $1 자리에, 두 번째가 $2 자리에 들어갑니다.
List_of_parameters비울 수 있거나, WHERE 절의 $ 기호 자리에 넣을 매개변수 목록.

예:

SESSION_OP terminate "username='James Wilson'"
SESSION_OP terminate "username=$1 and srcip=$2" "James Wilson,192.0.2.10"

SELECT

  • 설명: 세션 테이블에 쿼리를 실행합니다.
  • 사용법:
  SELECT <-FIELDS <fields>> [-WHERE <where_clause> [list_of_parameters]] [-GROUPBY <group_by_fields>] [-ORDERBY <order_by_fields>] [-LIMIT <limit_size> [-OFFSET <offset_number>]]
  
파라미터설명
FIELDS <fields>선택할 필드 목록을 , 로 구분해 적는 FIELDS 플래그.
WHERE <where_clause>SQL WHERE 절을 적는 WHERE 플래그. 값 대신 $ 기호를 쓸 수 있습니다(예: "username=$1 and srcip=$2"). 이때 List_of_parameters의 첫 번째가 $1, 두 번째가 $2 에 들어갑니다.
List_of_parameters비울 수 있거나, WHERE 절의 $ 기호 자리에 넣을 매개변수 목록.
GROUPBY <group_by_fields>묶을(group by) 필드 목록을 , 로 구분해 적는 GROUPBY 플래그.
ORDERBY <order_by_fields>결과를 정렬할 필드 목록을 , 로 구분해 적는 ORDERBY 플래그.
LIMIT <limit_size>결과 개수 제한(limit)을 적는 LIMIT 플래그.
OFFSET <offset_number>결과 오프셋을 적는 OFFSET 플래그.

예:

SELECT -FIELDS "login name,clientname,sessionid" -WHERE "loginname='aa'" -ORDERBY "clientname"