목차/06. 사용자·클라이언트 인증

06사용자·클라이언트 인증사용자·클라이언트 인증

원격 접속에서 인증은 안전한 통신 채널을 세우는 핵심 요소 입니다. 게이트웨이와 원격 클라이언트가 서로의 신원을 확인해야 비로소 신뢰할 수 있는 VPN 터널이 열립니다. 이 장은 클라이언트와 Security Gateway 사이에서 쓰는 인증 방식 전체 를 다룹니다 — 디지털 인증서부터 사전 공유 비밀, 여러 로그인 옵션과 DynamicID 다중 인증, 사용자 데이터베이스(내부·LDAP·RADIUS), 인증서 관리와 발급, 제3자 PKI, RADIUS 그룹·MS-CHAPv2, RSA 토큰, Hybrid Mode까지 원문이 다루는 모든 절차·표·파라미터·주의를 빠짐없이 풀어 정리합니다.

클라이언트–Security Gateway 인증 방식 개요

Security Gateway와 원격 클라이언트 사이에는 여러 인증 방식을 쓸 수 있습니다. 대표적으로 다음과 같습니다.

  • 디지털 인증서(Digital certificates)
  • 사전 공유 비밀(Pre-shared secrets)
  • 그 밖의 인증 방식(Other authentication methods)

Mobile AccessIPsec VPN Security Gateway에서는 여러 로그인 옵션을 구성 할 수 있고, 그 옵션은 게이트웨이마다·Software Blade마다 다르게 둘 수 있습니다. 사용자는 가용 옵션 중 하나를 골라 지원되는 클라이언트로 로그인합니다.

디지털 사용자 인증서

디지털 인증서 는 가장 권장되며 관리하기 좋은 인증 방식입니다. 양쪽 당사자가 각자 인증서를 제시해 신원을 증명 하고, 상대방의 인증서가 유효한지 — 즉 신뢰하는 알려진 CA가 서명했고, 만료되거나 폐기되지 않았는지 — 서로 검증합니다.

디지털 인증서는 Check Point의 ICA(Internal Certificate Authority) 또는 제3자 PKI 솔루션 이 발급합니다. Check Point의 ICA는 VPN과 긴밀하게 통합되어 있어 Remote Access VPN을 구성하는 가장 쉬운 길입니다. ICA는 Security Gateway에는 자동으로, 원격 사용자에게는 생성(generated)하거나 시작(initiated)하는 방식 으로 인증서를 발급할 수 있습니다.

인증서는 SmartConsole에서 손쉽게 만들 수 있습니다.

SmartConsole > Security Policies > Access Tools > Client Certificates

관리자는 ICA 관리 도구(ICA management tool) 에서도 인증서 생성을 시작할 수 있습니다. 또한 제3자 인증 기관(CA) 을 이용해 Security Gateway와 원격 사용자 사이의 인증서를 만들 수도 있는데, 지원되는 인증서 형식은 PKCS#12, CAPI, Entrust 입니다.

사용자에게 인증서 저장용 하드웨어 토큰 을 줄 수도 있습니다. 이 방식은 개인 키(private key)가 하드웨어 토큰 안에만 존재 하므로 보안 수준이 한층 높다는 장점이 있습니다.

인증서 폐기 목록(CRL) 확인

IKE 협상 중 인증서 검증 과정의 일부로, 클라이언트와 Security Gateway는 상대방 인증서를 발급한 CA가 게시한 CRL(Certificate Revocation List) 과 대조 합니다. 만약 클라이언트가 CRL을 가져오지 못하면, Security Gateway가 클라이언트를 대신해 CRL을 가져와 IKE 협상 중에 전달 합니다(이때 CRL은 보안을 위해 CA가 디지털 서명한 상태입니다).

기기 단위 인증서는 Machine Certificate에서, 클라우드 ID 공급자 기반 인증은 SAML에서, PKI 일반은 Site-to-Site VPN의 PKI에서 더 다룹니다.

사전 공유 비밀(Pre-Shared Secret)

이 방식은 단순하다는 장점 이 있지만 인증서보다는 보안이 약합니다.

양쪽이 VPN을 세우기 전에 미리 하나의 암호에 합의 합니다. 이 암호는 대역 외(out-of-band)로 교환 되며 여러 번 재사용됩니다. 인증 과정에서 클라이언트와 Security Gateway는 상대가 합의된 암호를 알고 있는지 서로 확인합니다.

그 밖의 인증 방식

원격 접속에서는 다음과 같은 사용자 인증 방식도 지원합니다.

방식설명
Security Gateway Password사용자가 Security Gateway에 저장된 자신의 암호를 입력합니다.
DynamicID One Time Password지정한 휴대폰 번호로 보낸 SMS 또는 이메일에 표시된 번호를 입력합니다.
OS Password사용자가 운영체제 암호를 입력합니다.
SecurID One Time PasswordSecurity Dynamics SecurID 카드에 표시된 번호를 입력합니다.
RADIUSRADIUS 서버 가 정의한 올바른 응답을 입력합니다.
TACACSTACACS 또는 TACACS+ 서버가 정의한 올바른 응답을 입력합니다.
SAARemote Access Clients용 OPSEC API 확장으로, 생체 인식 같은 제3자 인증 방식 을 Endpoint Security VPN, Check Point Mobile for Windows, SecuRemote와 함께 쓸 수 있게 합니다.

여러 로그인 옵션(Multiple Login Options)

Mobile AccessIPsec VPN Security Gateway에서는 여러 로그인 옵션을 구성 할 수 있습니다. 옵션은 게이트웨이마다·지원되는 Software Blade마다, 일부 클라이언트 유형마다 다르게 둘 수 있고, 사용자는 그중 하나를 골라 지원 클라이언트로 로그인합니다. 이렇게 하면 인증서·사용자명/암호·SAML 등 상황에 맞는 방식 을 사용자가 선택하게 할 수 있습니다.

각 로그인 옵션은 전역 객체(global object) 라서, 여러 게이트웨이와 Mobile Access·IPsec VPN Software Blade에서 함께 쓸 수 있습니다.

여러 로그인 옵션 구성하기

로그인 옵션은 다음 경로에서 구성합니다.

Gateway Properties > VPN Clients > Authentication

Mobile Access가 켜져 있으면 다음 경로에서도 구성할 수 있습니다.

  • SmartConsole의 Gateways & Servers 에서 Security Gateway 객체를 더블클릭한 뒤, Gateway Properties > Mobile Access > Authentication
  • SmartDashboard > Mobile Access 탭 > Authentication

IPsec VPN 클라이언트(Endpoint Security VPN, Check Point Mobile for Windows, SecuRemote 등)에 선택한 로그인 옵션은 VPN Clients > Authentication 페이지의 Multiple Authentication Client Settings 표에 나타납니다. Mobile Access 클라이언트(Mobile Access 포털, Capsule Workspace 등)에 선택한 옵션은 Mobile Access > Authentication 페이지의 같은 표에 나타납니다.

IPsec VPN 클라이언트용 여러 로그인 옵션 구성 절차

  1. Gateway Properties 에서 VPN Clients > Authentication 을 선택합니다.
  2. Multiple Authentication Clients Settings 표에서 구성된 로그인 옵션 목록을 확인합니다. 기본 로그인 옵션은 다음과 같습니다.
기본 옵션요구 사항
Personal_Certificate사용자 인증서가 필요합니다.
Username_Password사용자명과 암호가 필요합니다.
Cert_Username_Password사용자명·암호와 사용자 인증서가 모두 필요합니다.
  1. 새 옵션을 만들려면 Add, 기존 옵션을 바꾸려면 Edit 를 누릅니다. 각 로그인 옵션은 여러 게이트웨이·Software Blade에서 쓸 수 있는 전역 객체 입니다.
  2. 옵션마다 하나 이상의 Authentication Factors(인증 요소)와 관련 Authentication Settings(인증 설정) 를 선택합니다. 예를 들어 SecurID 를 고르면 SecurID ServerToken Card Type 을 선택하고, Personal Certificate 를 고르면 Security Gateway가 어느 인증서 필드에서 사용자명을 가져올지 선택합니다(아래 "인증서 파싱" 참고).
  3. Customize Display 를 선택해 사용자가 이 옵션으로 로그인할 때 보게 될 화면 을 구성한 뒤(아래 "표시 설정 사용자 지정" 참고) OK 를 누릅니다.
  4. Up / Down 화살표로 로그인 옵션의 순서 를 정합니다.
  1. OK 를 누릅니다.

표시 설정 사용자 지정(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 를 선택하면, Security Gateway가 인증서를 파싱하려고 LDAP 서버에 어떤 정보를 보낼지 구성할 수 있습니다. 기본값은 DN 이며, 대신 사용자의 이메일 주소나 일련번호(serial number) 를 쓰도록 설정할 수도 있습니다.

인증서 파싱 변경 절차

  1. Authentication 페이지의 Multiple Authentication Clients Settings 표에서 Personal_Certificate 항목을 선택하고 Edit 를 누릅니다. Authentication Factor 창이 열립니다.
  2. Authentication Settings 영역의 Fetch Username from 필드에서 Security Gateway가 인증서 파싱에 쓸 정보 를 선택합니다.
  3. OK 를 누릅니다.
  4. 정책을 설치(Install)합니다.

로그인 옵션 삭제(Deleting Login Options)

로그인 옵션을 영구히 삭제하는 절차는 다음과 같습니다.

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

DynamicID 기반 다중 인증(Multi-Factor Authentication)

다중 인증(Multi-factor authentication)둘 이상의 서로 다른 방식으로 사용자를 인증 하는 체계입니다. 요소를 여러 개 쓰면 인증 신뢰도가 한층 높아지며, DynamicID 가 그 한 가지 선택지입니다.

1차 인증을 통과한 사용자에게 추가 자격 증명인 DynamicID 일회용 암호(OTP) 를 요구 할 수 있습니다. 이 OTP는 SMS 또는 이메일 로 사용자의 휴대 통신 기기에 전달됩니다.

DynamicID 구성

여기서는 기본 구성만 다룹니다. 고급 구성 옵션은 R82 Mobile Access Administration Guide 를 참고하세요.

모든 게이트웨이가 쓰는 전역 DynamicID 설정 구성 절차

  1. SmartConsole에서 Security Policies > Shared Policies > Mobile Access 를 선택하고 Open Mobile Access Policy in SmartDashboard 를 누릅니다. SmartDashboard가 열리며 Mobile Access 탭을 보여 줍니다.
  2. 탐색 트리에서 Authentication 을 누릅니다.
  3. Dynamic ID Settings 섹션에서 Edit 를 누릅니다.
  4. DynamicID Settings 를 입력합니다(아래 참고).
  5. OK 를 누릅니다.
  6. Save 를 누릅니다.
  7. SmartDashboard를 닫습니다.
  8. SmartConsole에서 정책을 설치합니다.

특정 Security Gateway에 대한 DynamicID 설정 구성 절차

  1. SmartConsole의 Gateways & Servers 뷰에서 Security Gateway를 더블클릭합니다.
  2. 탐색 트리에서 VPN Clients > Authentication 을 선택합니다.
  3. Dynamic ID Settings 섹션에서 Use Global Settings 옵션을 해제 합니다.
  4. Edit 를 누릅니다.
  5. DynamicID Settings 를 입력합니다(아래 참고).
  6. OK 를 누릅니다.
  7. 정책을 설치합니다.

DynamicID Settings — SMS·이메일 파라미터

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

파라미터의미
$APIIDAPI ID 값입니다.
$USERNAMESMS 공급자용 사용자명입니다.
$PASSWORDSMS 공급자용 암호입니다.
$PHONEActive Directory 또는 Security Gateway의 로컬 파일에 있는 사용자 전화번호입니다. 숫자만, + 기호 없이 표기됩니다.
$EMAILActive Directory 또는 Security Gateway의 로컬 SmsPhones.lst 파일에 있는 사용자 이메일 주소입니다. 목록과 다른 주소를 써야 하면 명시적으로 적을 수 있습니다.
$MESSAGESmartDashboard의 Advanced Two-Factor Authentication Configuration Options 에서 구성한 메시지 값입니다.
$RAWMESSAGE$Message 의 텍스트지만 HTTP 인코딩이 없는 형태입니다.

DynamicID Setting 창 입력 절차

  1. Provider and Email Settings 필드를 다음 형식 중 하나로 채웁니다.

a. SMS로만 DynamicID 코드를 전달하려면 다음 구문을 씁니다.

   

b. SMS 서비스 공급자 없이 이메일로만 전달하려면 프로토콜별로 다음 구문을 씁니다.

  • SMTP 프로토콜:
     
  • SMTPS 프로토콜(포트 465):
     
  • START_TLS를 쓰는 SMTP 프로토콜:
     
  • 포트 587에서 START_TLS를 쓰는 SMTP 프로토콜:
     

c. SMS 또는 이메일 로 전달하려면 다음 구문을 씁니다.

   mail:TO=$EMAIL;SMTPSERVER=smtp.example.com;FROM=sslvpn@example.com;BODY=$RAWMESSAGE
   
  1. SMS Provider Account Credentials 섹션에 SMS 공급자에게 받은 자격 증명을 입력합니다 — Username, Password, API ID(선택).

내부 사용자 데이터베이스 vs. 외부 사용자 데이터베이스

Remote Access 기능은 유연한 사용자 관리 체계 를 제공합니다. 사용자는 다음과 같은 여러 방식으로 관리합니다.

방식설명
INTERNAL(내부)Security Gateway가 자체 로컬 사용자 데이터베이스 에, Security Management Server에 구성된 사용자마다 정적 암호를 저장합니다. 추가 소프트웨어가 필요 없습니다.
LDAPLDAP은 여러 벤더가 쓰는 개방형 산업 표준입니다. Check Point 제품은 LDAP을 Check Point User Directory 와 통합합니다. 사용자를 LDAP 서버에서 외부로 관리 하면 변경 사항이 SmartDashboard에 반영되고, Security Gateway는 인증할 때 User Directory 데이터를 조회합니다.
RADIUSRADIUS(Remote Authentication Dial-In User Service)인증 기능을 액세스 서버에서 분리 해 보안과 확장성을 제공하는 외부 인증 방식입니다.

RADIUS 를 인증 방식으로 쓰면, Security Gateway가 원격 사용자의 인증 요청을 RADIUS 서버로 전달 합니다. 사용자 계정 정보를 저장한 RADIUS 서버가 사용자를 인증 하며, RADIUS 프로토콜은 Security Gateway와 UDP 로 통신합니다. RADIUS 서버와 RADIUS Server Group 객체는 SmartDashboard에서 정의합니다.

SecurID Token Management ACE/Server — RSA Security가 개발한 SecurID 는 사용자가 토큰 인증기를 소지하면서 PIN이나 암호도 제시 하도록 요구합니다. 토큰 인증기는 RSA ACE/Server와 동기화된 일회용 암호 를 생성하며 하드웨어·소프트웨어 형태가 있습니다. 하드웨어 토큰은 열쇠고리·신용카드 크기의 장치이고, 소프트웨어 토큰은 사용자가 인증하려는 PC나 기기에 설치됩니다. 모든 토큰은 1분 남짓마다 바뀌는 임의의 일회용 접근 코드 를 만들어 내며, 사용자가 보호된 리소스에 인증을 시도하면 그 일회용 코드를 ACE/Server가 검증해야 합니다.

SecurID를 인증 방식으로 쓰면, Security Gateway가 원격 사용자의 인증 요청을 ACE/Server로 전달합니다. ACE는 RSA 사용자와 그들에게 할당된 하드·소프트 토큰의 데이터베이스를 관리 하고, VPN 모듈은 ACE/Agent 5.0 으로 동작해 모든 접근 요청을 RSA ACE/Server로 보냅니다. 에이전트 구성은 ACE/Server 문서를 참고하세요.

내부 데이터베이스와 User Directory의 차이

  • User Directory 는 로컬이 아니라 외부에서 관리합니다.
  • User Directory 템플릿을 바꾸면 변경이 사용자에게 동적으로, 즉시 적용 됩니다.

LDAP에서 사용자·인증 방식 정의하기

  1. VPN 모듈이 LDAP 서버에서 정보를 가져올 수 있게 하는 라이선스 를 받아 설치합니다.
  2. LDAP account unit 을 만듭니다.
  3. 사용자를 LDAP users 로 정의합니다. Users 트리에 LDAP 사용자용 새 네트워크 객체가 생성됩니다(LDAP 사용자는 오른쪽 객체 목록 창에도 나타납니다).

사용자 인증서 관리

사용자 인증서 관리에는 상태 추적, 자동 갱신, 폐기 가 포함됩니다.

사용자 인증서 상태 추적

사용자 인증서 상태는 사용자 Properties 창의 Certificates 탭에서 언제든 확인할 수 있습니다. 상태는 Certificate state 필드에 표시됩니다. Pending until 필드에 지정한 날짜까지 사용자가 인증서를 생성하지 않으면 등록 키(registration key)가 삭제 됩니다.

사용자가 LDAP에 정의되어 있으면 추적은 ICA 관리 도구 로 수행합니다.

인증서 자동 갱신

사용자의 ICA 인증서는 만료 며칠 전에 자동으로 갱신 할 수 있습니다. 만료일이 되기 전에 클라이언트가 CA와 인증서 갱신 작업을 시작하고, 성공하면 갱신된 인증서를 받습니다. 자동 인증서 갱신은 기본적으로 켜져 있습니다.

인증서 폐기

인증서를 폐기하는 방식은 내부에서 관리하는지, LDAP으로 외부에서 관리하는지 에 따라 다릅니다. 공통적으로 사용자를 삭제하면 그 인증서는 자동으로 폐기 되며, 인증서는 언제든 비활성화하거나 폐기할 수 있습니다.

  • 내부 관리 사용자(For Internally Managed Users) — 인증서가 이미 활성 상태이거나 사용자가 완료하지 못한 경우, User Properties 창의 Certificates 탭에서 Revoke 를 눌러 폐기할 수 있습니다.
  • LDAP 관리 사용자(For Users Managed in LDAP) — 사용자가 LDAP으로 관리되면 인증서는 ICA 관리 도구 로 폐기합니다.

사용자당 여러 인증서

Check Point VPN은 사용자마다 여러 인증서를 정의 할 수 있게 합니다. 덕분에 사용자는 기기 간에 인증서를 복사·이동하지 않고도 서로 다른 기기에서 접속 할 수 있으며, 여러 기기에서 동시에 접속 할 수도 있습니다.

ICA로 사용자 인증서를 만드는 두 가지 방법

Check Point의 ICA는 원격 사용자에게 인증서를 만들어 전달하는 두 가지 길을 제공합니다.

  1. 관리자가 Security Management Server에서 원격 사용자용 인증서를 생성 해 이동식 매체에 저장한 뒤, 대역 외(out-of-band)로 클라이언트에 전달 합니다.
  2. 관리자가 Security Management Server(또는 ICA 관리 도구)에서 인증서 절차를 시작 하면 등록 키(registration key) 를 받습니다. 이 등록 키를 대역 외로 사용자에게 전달하면, 클라이언트가 CMC 프로토콜로 ICA에 SSL 연결을 맺고 등록 키로 인증서 생성을 완료 합니다. 이 방식에서는 다음과 같은 특징이 있습니다.
    • 개인 키가 클라이언트에서 생성 됩니다.
    • 만들어진 인증서는 기기 하드 드라이브의 파일, CAPI 저장 장치, 하드웨어 토큰 중 하나에 저장할 수 있습니다.

원격 접속 VPN 인증서 만들기와 배포

이 절은 원격 VPN 사용자 인증서를 만들어 최종 사용자에게 보내는 절차 를 다룹니다. 인증서를 공급하는 기본 방법은 두 가지입니다.

  • P12 파일 보내기(Sending a P12 File)
    • 관리자가 p12 인증서 파일을 만들어 사용자에게 보냅니다.
    • 사용자가 p12 파일을 기기에 저장하고, 원격 VPN 클라이언트에서 그 인증서를 지정합니다.
    • 사용자는 원격 접속 VPN 연결을 시작할 때 인증서 암호를 입력 해 인증합니다.
  • 등록 키 사용(Using a Registration key)
    • 관리자가 등록 키를 만들어 사용자에게 보냅니다.
    • 사용자는 Remote Access VPN 클라이언트에 등록 키를 입력해 인증서를 등록(enroll) 합니다. 선택적으로 p12 파일을 기기에 저장할 수 있습니다. 이 작업은 관리자가 정한 기간 안에 끝내야 합니다.
    • 최종 사용자는 이 인증서로 인증합니다. 보안 정책 설정에 따라 암호도 요구 될 수 있으며, p12 파일을 기기에 저장하면 암호는 항상 필요 합니다.

사용자 인증서 활성화하기

  1. SmartConsole의 Objects Bar 에서 Users > Users 를 누릅니다.
  2. 새 사용자를 만들거나 기존 사용자를 더블클릭합니다. User Properties 창이 열립니다.
  3. 탐색 트리에서 Encryption 을 누릅니다.
  4. Edit 를 누릅니다. IKE Phase 2 Properties 창이 열립니다.
  5. Authentication 탭을 누르고 Public key 가 선택되어 있는지 확인합니다.
  6. OK 를 누릅니다.
  7. SmartConsole 세션을 Publish 합니다.

P12 인증서 파일 만들기

사용자 인증서를 만든 뒤에는 그 인증서를 원격 접속 사용자가 쓸 수 있게 해야 합니다. 다음 절차로 p12 인증서를 만듭니다.

  1. 사용자 인증서를 만듭니다(위 "사용자 인증서 활성화하기" 참고).
  2. User Properties 창의 탐색 트리에서 Certificates 를 누릅니다.
  3. Certificates 페이지에서 New 를 누릅니다.
  4. Certificate file (.p12) 를 선택합니다.
  5. Certificate File (.P12) 창에서 인증서 암호를 입력하고 확인합니다.
  6. (선택) Comment 필드에 설명을 입력합니다.
  7. OK 를 누르고 p12 파일을 저장할 경로를 입력합니다. 새 인증서가 목록에 나타나며 상태가 Valid 로 설정됩니다.
  8. OK 를 누릅니다.
  9. 보안 이메일이나 그 밖의 안전한 수단 으로 .p12 파일을 최종 사용자에게 보냅니다.

인증서 등록 키 만들기

사용자가 기기에서 인증서를 등록(enroll)할 수 있도록 등록 키를 만드는 절차입니다.

  1. 사용자 인증서를 만듭니다(위 "사용자 인증서 활성화하기" 참고).
  2. User Properties 창의 탐색 트리에서 Certificates 를 누릅니다.
  3. Certificates 창에서 New 를 누릅니다.
  4. Registration key for certificate enrollment 를 선택합니다.
  5. Registration Key for Certificate Enrollment 창에서 인증서 만료까지의 일수 를 선택합니다.
  6. 이메일 버튼을 눌러 등록 키를 사용자에게 보냅니다.
  7. (선택) Comment 필드에 설명을 입력합니다.
  8. OK 를 누릅니다.

최종 사용자를 위한 안내

원격 접속 VPN 사용자는 다양한 클라이언트로 네트워크 리소스에 접속할 수 있습니다. 사용자가 인증서 등록에 성공하도록 적절한 안내를 제공하는 것은 관리자의 책임 입니다. "원격 접속 VPN 인증서 만들기와 배포" 절이 여러 VPN 클라이언트에 두루 적용되는 일반 지침을 주지만, 자세한 절차는 해당 VPN 클라이언트 문서를 참고하세요.

ICA 관리 도구로 사용자 인증서 등록하기

  1. SmartConsole의 Objects Bar 에서 Users > Users 를 누릅니다.
  2. 새 사용자를 만들거나 기존 사용자를 더블클릭합니다. User Properties 창이 열립니다.
  3. 탐색 트리에서 Encryption 을 누릅니다.
  4. Edit 를 누릅니다. IKE Phase 2 Properties 창이 열립니다.
  5. Authentication 탭을 누르고 Public Key 를 선택합니다.
  6. OK 를 누릅니다.
  7. 변경을 Publish 합니다.
  8. ICA 관리 도구 로 사용자 인증서를 등록합니다.

제3자 PKI 인증서 사용

제3자 PKI를 쓰면 사용자 인증서를 만들고, 필요하면 Security Gateway 인증서도 만들 수 있습니다. PKCS#12, CAPI, Entrust 표준을 지원하는 제3자 OPSEC PKI 인증 기관 으로 Security Gateway와 사용자의 인증서를 발급할 수 있습니다. 이때 Security Gateway는 그 CA를 신뢰해야 하고, 그 CA가 발급한 인증서를 가지고 있어야 합니다.

Security Gateway가 인증서 파싱을 위해 LDAP 서버에 보내는 정보 구성은 위 "인증서 파싱" 절을 참고하세요.

기본적으로 LDAP 서버에서 관리하는 사용자 는 인증서에 나타나는 전체 DN(distinguished name)이 사용자 이름과 동일 합니다. 그러나 내부 데이터베이스에서 관리하는 사용자 는 사용자 이름과 인증서의 DN이 일치하지 않습니다. 그래서 내부 데이터베이스의 사용자 이름은 인증서에 나타나는 전체 DN이거나, 인증서 CN 부분의 이름 중 하나여야 합니다. 예를 들어 인증서의 DN이 다음과 같다면,

CN=John, OU=Finance, O=Widget Enterprises, C=US

내부 데이터베이스의 사용자 이름은 다음 중 하나여야 합니다.

  • John
  • CN=John, OU=Finance, O=Widget Enterprises, C=US

제3자 PKI 인증서 구성하기

  1. SmartConsole의 Objects Bar 에서 Users > Users 를 누릅니다.
  2. 새 사용자를 만들거나 기존 사용자를 더블클릭합니다. User Properties 창이 열립니다.
  3. 탐색 트리에서 Encryption 을 누릅니다.
  4. Edit 를 누릅니다. IKE Phase 2 Properties 창이 열립니다.
  5. Authentication 탭을 누르고 Public key 를 선택합니다.
  6. 제3자 인증 기관을 SmartDashboard에서 객체로 정의합니다.
  7. (선택) 제3자 CA로 Security Gateway용 인증서를 생성합니다.
  8. 제3자 CA로 원격 사용자용 인증서를 생성합니다(자세한 내용은 해당 제3자 문서 참고).
  9. 인증서를 사용자에게 전달합니다.
  10. Global Properties > Authentication 창에서 접미사 일치(suffix matching)를 추가하거나 비활성화 합니다.

인증서를 쓰는 사용자에 대해 DN에 지정한 접미사가 있는 인증서만 받아들이도록 지정할 수 있습니다. 이 기능은 기본적으로 켜져 있으며, 다음 두 조건이 모두 참일 때에만 필요합니다.

  • 사용자가 내부 데이터베이스에 정의 되어 있고,
  • 사용자 이름이 전체 DN이 아닌 경우.

모든 인증서의 DN은 이 접미사와 대조됩니다.

사전 공유 비밀 사용하기

사전 공유 비밀을 쓰면, 원격 사용자와 Security Gateway는 상대가 공유 비밀(사용자의 암호)을 아는지 확인 해 서로를 인증합니다.

사전 공유 비밀 인증 활성화 절차

  1. Menu 에서 Global Properties 를 누릅니다.
  2. 탐색 트리에서 Remote Access > VPN Authentication 을 누릅니다.
  3. Support authentication methods 섹션에서 Pre-Shared Secret (For SecuRemote client / SecureClient users) 를 선택합니다.
  4. OK 를 누릅니다.
  5. 해당하는 각 사용자에 대해 인증 설정을 구성합니다.
    1. Objects Bar 에서 사용자를 더블클릭합니다. User Properties 창이 열립니다.
    2. 탐색 트리에서 Encryption 을 누릅니다.
    3. IKE 를 선택하고 Edit 를 누릅니다. IKE Phase 2 Properties 창이 열립니다.
    4. Authentication 탭에서 Password (Pre-Shared Secret) 를 누릅니다.
    5. Password (Pre-shared secret) 를 입력하고 확인합니다.
    6. OK 를 누릅니다.
  6. SmartConsole 세션을 Publish 합니다.
  7. 사용자에게 암호를 전달합니다.

NT 그룹 / RADIUS 클래스 인증 기능

인증은 NT 그룹이나 RADIUS 클래스에 따라 수행할 수 있습니다. 이렇게 하면 원격 접속 사용자가 속한 원격 접속 커뮤니티 그룹에 따라 인증 됩니다.

RADIUS 서버 그룹으로 사용자 접근 허용하기

Security Gateway는 관리자가 사용자를 RADIUS 그룹에 배정한 것을 바탕으로 인증된 RADIUS 사용자의 접근 권한을 제어 할 수 있습니다. 이 그룹은 Security Rule Base에서 특정 리소스 접근을 제한하거나 허용 하는 데 쓰이며, 사용자는 자신이 어느 그룹에 속하는지 알지 못합니다.

RADIUS를 쓰면 Security Gateway가 원격 사용자의 인증 요청을 RADIUS 서버로 전달합니다(관리자에 대해서는 Security Management Server가 요청을 전달합니다). 사용자 계정 정보를 저장한 RADIUS 서버가 인증 을 수행하며, RADIUS 프로토콜은 Security Gateway나 Security Management Server와 UDP 로 통신합니다. RADIUS 서버와 RADIUS Server Group 객체는 SmartConsole에서 정의합니다.

RADIUS 그룹을 쓰려면, RADIUS 서버의 RADIUS 사용자 프로필에 반환 속성(return attribute) 을 정의해야 합니다. 이 속성은 Security Gateway로 반환되며, 사용자가 속한 그룹 이름(예: RAD_<그룹 이름>)을 담습니다. 사용할 RADIUS 속성은 다음과 같습니다(RFC 2865 참고).

운영체제사용할 RADIUS 속성
SecurePlatform속성 "Class" (25)
그 밖의 OS(Gaia, Windows, IPSO 등)속성 "Vendor-Specific" (26)

RADIUS 인증 구성 예시 흐름

  1. RADIUS host 객체를 만듭니다.
  2. RADIUS 서버 객체 설정을 구성합니다.
  3. Security Gateway가 RADIUS 인증을 쓰도록 구성합니다.
  4. 사용자 그룹을 정의합니다.
  5. 사용자에 대한 RADIUS 인증 설정을 구성합니다.
  6. RADIUS 인증 구성을 완료합니다.

NT 그룹·RADIUS 클래스 인증 구성하기

이 그룹 인증 기능을 켜는 절차는 다음과 같습니다.

  1. $FWDIR/conf/objects.C 파일에서 add_radius_groups 속성을 true 로 설정합니다.
  2. RADIUS를 인증 방식으로 하는 generic\* 프로필을 정의합니다.
  3. NT Server 또는 RADIUS로 인증하는 원격 사용자 그룹을 "source" 로 하는 규칙 을 Policy Rule Base에 만듭니다.

Office Mode IP 할당 파일

이 방식은 Office Mode에서도 동작합니다. $FWDIR/conf/ipassignment.conf 파일에 나열된 그룹이 NT 그룹 인증이나 RADIUS 클래스로 인증하는 그룹을 가리킵니다 (자세한 내용은 "Office Mode through the ipassignment.conf File" 참고).

RADIUS 서버를 Security Gateway에 연결하기

사용자는 User Properties > Authentication 탭에서 RADIUS 인증 서버와 연결할 수 있습니다. 이 연결을 재정의해 Security Gateway를 RADIUS 서버와 연결 할 수도 있습니다.

RADIUS 연결을 구성하려면 dbedit 명령을 씁니다(sk13301 참고).

하나 이상의 RADIUS 서버를 Security Gateway에 연결하려면 다음과 같이 합니다.

modify network_objects <gateway obj> radius_server servers:<radius obj>

RADIUS–게이트웨이 연결을 끄려면 다음과 같이 합니다.

modify users <user obj> use_fw_radius_if_exist false

RADIUS 객체 구성

새 RADIUS host 객체 만들기

  1. SmartConsole의 Objects 탭에서 New > Host 를 누릅니다. New Host 창이 열립니다.
  2. 새 RADIUS host 객체의 Object NameIP Address 를 입력하고 OK 를 누릅니다.
  3. 정책을 설치합니다.

RADIUS 서버 객체 설정 구성

  1. SmartConsole의 Objects 탭에서 New > More > Server > More > RADIUS 를 누릅니다. RADIUS Server Properties 창이 열립니다.
  2. 새 서버 속성을 구성합니다.
    • RADIUS 서버 객체의 Name 을 입력합니다.
    • RADIUS Host 객체를 선택합니다.
    • Service 를 선택합니다 — RADIUS(포트 1645) 또는 NEW-RADIUS(포트 1812) 서비스.
  • RADIUS 서버에서 구성한 Shared Secret 을 입력합니다.
    • 버전 을 선택합니다 — RADIUS Ver. 1.0 Compatible(RFC 2138 준수) 또는 RADIUS Ver. 2.0 Compatible(RFC 2865 준수).
    • 피어 인증 Protocol 을 선택합니다 — PAP 또는 MS-CHAP v2.
    • RADIUS 인증 서버를 둘 이상 쓰면 Priority 를 선택합니다.
  • OK 를 누릅니다.

Security Gateway가 RADIUS 인증을 쓰도록 구성

  1. SmartConsole의 Gateways & Servers 뷰에서 Security Gateway 객체를 오른쪽 클릭하고 Edit 를 선택합니다.
  2. Security Gateway Properties 창에서 Other > Legacy Authentication 을 선택합니다.
  3. Enabled Authentication Schemes 섹션에서 RADIUS 를 선택합니다.
  4. OK 를 누릅니다.

사용자에 대한 RADIUS 설정 구성

RADIUS 사용자 그룹 정의

  1. SmartConsole의 Objects 탭에서 New > More > Users > User Group 을 누릅니다. New User Group 창이 열립니다.
  2. 그룹 이름을 RAD_<group_name> 형식으로 입력합니다. 그룹은 비어 있어야 합니다.
  3. OK 를 누릅니다.
  4. 정책을 설치합니다.

Security Gateway 사용자 계정이 있는 사용자에 대한 RADIUS 설정

  1. 사용자마다 새 내부 사용자 프로필을 만듭니다. SmartConsole에서 Objects > New > More > User > User 를 누릅니다. User Properties 창이 열립니다.
  2. General Properties 탭에서 다음을 구성합니다.
    • RADIUS 서버용 User Name 을 입력합니다.
    • Expiration Date 를 설정합니다.
  3. Authentication 탭에서 다음을 구성합니다.
    • Authentication method 목록에서 RADIUS 를 선택합니다.
    • RADIUS Server 목록에서 앞서 구성한 RADIUS 객체를 선택합니다.
  4. OK 를 누릅니다.

Security Gateway 사용자 계정이 없는 사용자에 대한 RADIUS 설정 — SmartConsole에서 여는 SmartDashboard에서 사용자마다 새 외부 사용자 프로필을 만듭니다.

  1. SmartDashboard를 엽니다.
    1. SmartConsole에서 Manage & Settings 탭으로 갑니다.
    2. Blades 를 누릅니다.
    3. Configure in SmartDashboard 링크 중 하나를 누릅니다.
  2. Network object 트리에서 Users 아이콘을 누릅니다.
  3. External User Profiles 를 오른쪽 클릭하고 New External User Profile > Match all users(또는 Match by domain)를 선택합니다.

External User Profile Properties 창이 열립니다. 4. General Properties 탭에서 다음을 구성합니다. - RADIUS 서버용 User Name 을 입력합니다(Match all users 를 External User Profile로 구성하면 이름 "generic\*" 가 자동으로 배정됩니다). - Expiration Date 를 설정합니다. 5. Authentication 탭에서 다음을 구성합니다. - Authentication Scheme 목록에서 RADIUS 를 선택합니다. - Select a RADIUS Server or Group of Servers 목록에서 앞서 구성한 RADIUS 객체를 선택합니다. 6. OK 를 누릅니다. 7. SmartDashboard를 닫습니다. 8. SmartConsole에서 정책을 설치합니다.

RADIUS 인증 구성 완료

RADIUS 인증 구성을 마무리하는 절차입니다.

  1. SmartConsole에서 RADIUS 서버로 인증한 사용자의 접근을 허용하는 Access Control 규칙 을 만듭니다.
  2. Address Translation Rule Base에서 방화벽과 서버 사이 통신이 NAT되지 않도록 확인합니다.
  3. 변경을 저장합니다.
  4. Management Server에 연결된 모든 SmartConsole 창을 닫습니다.
  5. Database Tool(GuiDBEdit Tool) 로 Management Server에 연결합니다.
  6. add_radius_groups 속성 값을 false 에서 true 로 바꿉니다.
  7. Database Tool을 저장하고 닫습니다.
  8. SmartConsole로 Management Server에 연결합니다.
  9. 정책을 설치합니다.
  10. RADIUS 서버에서, 사용자가 접근하는 사용자 그룹에 대응하는 "class" RADIUS 속성을 사용자의 Return 목록에 포함하도록 편집합니다.

"class" 속성 대신 다른 속성을 쓰려면

  1. Management Server에 연결된 모든 SmartConsole 창을 닫습니다.
  2. Database Tool(GuiDBEdit Tool) 로 Management Server에 연결합니다.
  3. firewall_properties 속성의 radius_groups_attr 값을 새 RADIUS 속성으로 바꿉니다.
  4. 변경을 저장합니다.
  5. Database Tool을 닫습니다.
  6. SmartConsole을 엽니다.
  7. 정책을 설치합니다.
  8. RADIUS 서버에서, 사용자가 접근하는 Firewall 사용자 그룹에 대응하도록 사용자 Return 목록에 같은 RADIUS 속성 을 쓰는지 확인합니다.

UPN을 쓰는 MS-CHAPv2로 RADIUS 서버 인증

UPN(<username>@<domain>)을 쓰는 MS-CHAPv2(Microsoft Challenge-Handshake Authentication Protocol) 로 Remote Access VPN 클라이언트를 RADIUS 서버에서 인증하려면 다음과 같이 합니다.

  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
   

RSA 하드·소프트 토큰 사용

SecurID로 인증한다면, 사용자를 RSA의 ACE 관리 서버 에서 관리해야 합니다. ACE는 RSA 사용자와 그들에게 할당된 하드·소프트 토큰의 데이터베이스를 관리합니다. 클라이언트가 사이트의 Security Gateway에 접속하면, Security Gateway가 ACE Server에 사용자 인증 정보를 요청 합니다. 따라서 다음을 지켜야 합니다.

  • 원격 사용자는 ACE Server에 RSA 사용자로 정의 되어야 합니다.
  • Security Gateway에서는, SecurID 사용자를 SecurID를 인증 방식으로 지정한 외부 사용자 프로필 계정이 있는 그룹 에 넣어야 합니다.

SecurID 인증 장치

SecurID 장치에는 여러 버전이 있습니다.

  • 구형(tokencode형) — 숫자 코드인 tokencode 와 시간 막대를 표시하는 작은 장치입니다. tokencode는 60초마다 바뀌며 인증의 기반이 됩니다. 인증하려면 사용자가 tokencode 앞에 PIN 번호 라는 특수 암호를 붙여야 합니다. 시간 막대는 다음 tokencode가 생성되기까지 남은 시간을 나타냅니다. 원격 사용자는 클라이언트 연결 창에 PIN 번호와 tokencode를 모두 입력합니다.
  • 신형(passcode형) — 신용카드처럼 생겼고 tokencode·시간 막대와 함께 PIN 번호 입력용 숫자 패드 를 표시합니다. 이 장치는 tokencode와 입력한 PIN을 섞어 Passcode 를 만들며, 클라이언트는 passcode만 요청합니다.
  • SoftID — passcode 장치와 똑같이 동작하지만 데스크톱에 설치되는 소프트웨어 로만 구성됩니다. Advanced 보기에서는 tokencode와 passcode를 COPY 버튼과 함께 표시해, 사용자가 softID와 클라이언트 사이에서 잘라 붙여넣기를 할 수 있습니다.

Hybrid Mode와 인증 방식 활성화

Hybrid modeSecurity Gateway와 원격 접속 클라이언트가 서로 다른 인증 방식을 쓸 수 있게 합니다.

Hybrid Mode 활성화 절차

  1. Menu 에서 Global Properties 를 누릅니다.
  2. 탐색 트리에서 Remote Access > VPN Authentication 을 누릅니다.
  3. Support authentication methods 섹션에서 Support Legacy Authentication for SC (hybrid mode), L2TP (PAP), and Nokia clients (CRACK) 를 누릅니다.
  4. OK 를 누릅니다.
  5. 정책을 설치합니다.

Hybrid Mode에서 사용자 인증 방식 정의

사용자에 대한 Hybrid Mode 인증을 정의하는 절차입니다.

  1. Objects Bar 에서 사용자를 더블클릭합니다. User Properties 창이 열립니다.
  2. 탐색 트리에서 Authentication 을 누릅니다.
  3. Authentication Scheme 을 선택합니다.
  4. 필요한 설정을 구성합니다.
  5. OK 를 누릅니다.
  6. 정책을 설치합니다.
  7. 이 자격 증명을 사용자에게 전달합니다.