12MEP·Secondary ConnectMEP·Secondary Connect
원격 접속 VPN을 여러 게이트웨이로 떠받치는 두 기능을 한자리에 모았습니다. MEP(Multiple Entry Point) 는 같은 내부망으로 들어가는 진입 게이트웨이를 여럿 두어 하나가 죽어도 접속이 끊기지 않게 하는 고가용성 장치이고, Secondary Connect 는 한 번 로그인한 사용자가 여러 게이트웨이 뒤의 자원에 자동으로, 동시에 접근 하게 해 주는 편의 기능입니다. 이 장은 두 기능의 개념, MEP 선택 방식과 구성 절차(Implicit·Manual), 반환 패킷(Return Packet) 처리와 NAT·IP Pool NAT 설정, MEP 끄기, 그리고 Secondary Connect의 전제 조건과 켜고 끄는 방법까지 원문의 모든 절차·표·파라미터·주의 사항을 빠짐없이 풀어 정리합니다.
MEP for Remote Access
왜 진입점을 여럿 두는가
VPN 게이트웨이는 내부망으로 들어가는 단 하나의 진입점 역할을 합니다. 원격 컴퓨터 입장에서는 이 게이트웨이가 내부망을 "사용 가능"하게 만들어 주는 셈인데, 뒤집어 말하면 그 VPN 게이트웨이 하나가 죽으면 내부망 전체가 더는 닿을 수 없 게 됩니다. 단일 장애점(single point of failure)이 생기는 것입니다.
이 문제를 풀려면 같은 내부망을 위해 VPN 게이트웨이를 여럿(Multiple Entry Points, MEP) 구성 하면 됩니다. 진입점이 둘 이상이면 한 곳이 멈춰도 남은 게이트웨이로 원격 사용자가 계속 들어올 수 있습니다.
Check Point의 MEP 솔루션
MEP 환경에서는 보통 VPN 게이트웨이 두 대를 설치 해 내부망(들)으로의 원격 접속을 제공합니다. 그리고 원격 접속 클라이언트가 어느 VPN 게이트웨이를 고를지 를 관리자가 구성합니다.
MEP 방식 (MEP Methods)
원격 접속 클라이언트가 MEP VPN 게이트웨이에 연결하는 방식은 세 가지입니다.
| 방식 | 동작 |
|---|---|
| First to Respond (먼저 응답하는 쪽) | 클라이언트가 가장 먼저 응답하는 VPN 게이트웨이 에 연결합니다. |
| Primary/Backup (주/백업) | 클라이언트가 관리자가 Primary로 지정한 게이트웨이 에 연결합니다. Primary가 응답하지 않으면 Backup으로 지정한 게이트웨이 에 연결합니다. Backup마저 응답하지 않으면 원격 접속 VPN 연결 전체가 실패 합니다. |
| Random Selection (무작위 선택) | Load Sharing MEP 환경에서 클라이언트가 구성된 게이트웨이 중 하나를 무작위로 골라 거기에 우선순위를 부여 합니다. 이후의 모든 연결은 그렇게 선택된 게이트웨이를 씁니다. |
Visitor Mode와 MEP
MEP 환경에서 게이트웨이를 찾아내는 탐색(discovery) 메커니즘은 UDP 위에서 동작하는 Check Point 고유 통신 입니다. 그런데 Visitor Mode 로 동작하는 클라이언트는 모든 트래픽을 일반 TCP 연결 하나로 터널링 하기 때문에 특별한 문제가 생깁니다. UDP 기반 탐색이 그대로 통하지 않는 것입니다. MEP 환경에서 Visitor Mode는 다음과 같이 처리됩니다.
- 특별한 Visitor Mode 핸드셰이크 를 탐색(probing) 방법으로 사용해 VPN 게이트웨이의 가용성을 확인합니다.
- MEP 페일오버가 일어나면 클라이언트는 연결이 끊기고, 사용자가 평소처럼 VPN 사이트에 다시 연결해야 합니다. 구성 방법은 sk115996 을 참고하세요.
- Primary-Backup 구성에서는 Primary가 사용 불가일 때만 Backup 게이트웨이로 재연결 합니다. 그리고 Primary가 다시 살아나더라도 클라이언트는 Backup에 계속 붙어 있고 Primary로 되돌아가지 않 습니다.
- MEP에 속한 모든 VPN 게이트웨이가 Visitor Mode를 지원 해야 합니다.
반환 패킷(Return Packet) 경로 잡기
내부망에서 돌아오는 패킷이 원래 들어왔던 게이트웨이로 정확히 되돌아가도록 라우팅을 잡아야 합니다. 방법은 두 가지입니다.
- Office Mode 네트워크에 NAT를 켜는 방법.
- 클라이언트가 Office Mode를 무시하도록 구성된 경우 에는 IP Pool NAT 를 사용하는 방법.
IP Pool NAT의 원리
IP Pool NAT는 원격 VPN 도메인의 원본(Source) IP 주소를 등록된 IP 주소 풀(pool)의 한 주소로 매핑 합니다. MEP Security Gateway와의 세션을 대칭(symmetric)으로 유지 하기 위해, MEP Security Gateway는 그 게이트웨이 전용으로 할당된 IP 주소 범위 로 NAT를 수행하고, 이 범위는 내부망 안에서 원래의 Security Gateway로 라우팅 되도록 설정해야 합니다. 그러면 반환 패킷이 그 Security Gateway에 도착했을 때, Security Gateway가 원래의 원본 IP 주소를 복원해 원본으로 패킷을 전달 합니다.
MEP 구성하기 — 선택 방식 고르기
MEP를 구성하려면 먼저 MEP 선택 방식을 하나 고릅니다.
- First to Respond
- Primary/Backup
- Load Distribution (부하 분산)
MEP 방식 정의 — Implicit vs Manual
MEP 구성은 다음 둘 중 하나로 정의합니다.
| 정의 방식 | 설명 |
|---|---|
| Implicit (암시적) | MEP 방식과 VPN 게이트웨이의 정체를 게이트웨이의 토폴로지와 구성에서 자동으로 가져옵니다. 게이트웨이들이 완전히 겹치는(fully overlapping) 암호화 도메인 을 갖거나 Primary-Backup 게이트웨이 형태일 때 쓰입니다. |
| Manual (수동) | 원격 접속 클라이언트의 TTM 파일 안에서 MEP VPN 게이트웨이 목록을 직접 편집합니다. |
MEP 토폴로지를 정의하는 절차는 다음과 같습니다.
- Security Gateway에서
$FWDIR/conf/trac_client_1.ttm파일을 편집합니다. automatic_mep_topology항목을 찾습니다. 보이지 않으면 아래처럼 직접 추가합니다.
:automatic_mep_topology (
:gateway (
:map (
:true (true)
:false (false)
:client_decide (client_decide)
)
:default (true)
)
)
:default값을 다음으로 설정합니다.true— Implicit 구성일 때false— Manual 구성일 때
- Manual MEP만 해당 —
:enable_gw_resolving값이(true)인지 확인합니다. - 파일 변경을 저장하고 편집기를 빠져나갑니다.
- SmartConsole에서 해당 VPN 게이트웨이에 정책을 설치 합니다.
First-to-Respond 구성
둘 이상의 Security Gateway가 같은(겹치는) VPN 도메인 으로 이어질 때, 원격 피어는 이들을 MEP로 간주합니다. First-to-Respond 구성에서는 원격 피어가 탐색 프로토콜에 가장 먼저 응답하는 Security Gateway 를 고릅니다. 이를 구성하려면 모든 Security Gateway가 공유하는 네트워크 부분을 하나의 그룹으로 묶고, 그 그룹을 VPN 도메인으로 지정합니다.
SmartConsole에서 Implicit First-to-Respond 구성:
- 왼쪽 탐색 패널에서 Gateways & Servers 를 클릭합니다.
- Security Gateway 객체를 더블 클릭합니다.
- 탐색 트리에서 Network Management > VPN Domain 을 클릭합니다.
- User defined 를 선택합니다.
- [...] 버튼을 클릭하고 해당 Group 또는 Network 객체를 선택합니다. 필요한 객체가 없으면 New 를 눌러 이 메뉴에서 바로 만들 수 있습니다.
- OK 를 클릭합니다.
- 각 Security Gateway 객체마다 2~6단계를 반복 합니다.
Manual First-to-Respond 구성:
- Management Server에서
$FWDIR/conf/trac_client_1.ttm파일을 편집합니다. - 다음과 같이 바꿉니다.
:mep_mode ()절에서:default (client_decide)→:default(first_to_respond)로 변경:ips_of_gws_in_mep ()절에서:default (client_decide)를 게이트웨이 IP 목록으로 변경
예시:
- 파일 변경을 저장하고 편집기를 빠져나갑니다.
- SmartConsole에서 VPN 게이트웨이에 정책을 설치합니다.
- 원격 접속 클라이언트로 연결하면 구성이 적용 됩니다.
Primary-Backup 구성
SmartConsole에서 Implicit Primary-Backup 활성화:
- SmartConsole에서 Menu > Global properties 를 클릭합니다.
- 왼쪽 탐색 트리에서 VPN > Advanced 를 클릭합니다.
- Enable Backup Gateway 를 선택합니다.
- OK 를 클릭합니다.
- SmartConsole에서 VPN 게이트웨이에 정책을 설치합니다.
백업 Security Gateway 설정:
- 왼쪽 탐색 패널에서 Gateways & Servers 를 클릭합니다.
- Primary Security Gateway 를 더블 클릭합니다.
- 왼쪽 탐색 트리에서 IPsec VPN 을 클릭합니다.
- 페이지 맨 아래에서 Use Backup Gateways 를 선택합니다.
- 드롭다운 메뉴에서 백업 Security Gateway를 선택합니다.
- 백업 Security Gateway가 자체 VPN 도메인을 쓸지 정합니다.
- 자체 VPN 도메인 없이 백업 Security Gateway를 구성하려면:
- a. Security Gateway를 더블 클릭하고 탐색 트리에서 Network Management > VPN Domain 을 클릭합니다.
- b. Manually defined 를 클릭합니다.
- c. 필드를 클릭하고 백업 Security Gateway만 포함하는 그룹 또는 네트워크 를 선택합니다.
- d. OK 를 누르고 변경을 게시(publish)합니다.
- 자체 VPN 도메인을 가진 백업 Security Gateway를 구성하려면:
- a. 백업 Security Gateway의 IP 주소가 Primary Security Gateway의 VPN 도메인에 포함되지 않 도록 합니다.
- b. 각 백업 Security Gateway마다 다른 백업 Security Gateway들의 VPN 도메인과 겹치지 않는 VPN 도메인을 정의합니다.
- 반환 패킷을 처리하도록 IP Pool NAT 또는 Hide NAT 를 구성합니다("반환 패킷 구성" 절 참고).
Manual Primary-Backup 구성:
- Management Server에서
$FWDIR/conf/trac_client_1.ttm파일을 편집합니다. - 다음과 같이 바꿉니다.
:mep_mode ()절에서:default (client_decide)→:default(primary_backup)로 변경:ips_of_gws_in_mep ()절에서:default (client_decide)를 게이트웨이 IP 목록으로 변경
예시:
- 파일 변경을 저장하고 편집기를 빠져나갑니다.
- SmartConsole에서 VPN 게이트웨이에 정책을 설치합니다.
- 원격 접속 클라이언트로 연결하면 구성이 적용됩니다.
Load Distribution 구성
이 옵션을 켜면 부하 분산이 동적으로 이뤄지고, 원격 클라이언트가 Security Gateway를 무작위로 선택 합니다.
SmartConsole에서 Implicit Load Distribution 구성:
- Menu > Global properties 를 클릭합니다.
- 왼쪽 탐색 트리에서 Remote Access > VPN Advanced 를 클릭합니다.
- Load distribution 섹션에서 Enable load distribution for Multiple Entry Point configurations (Remote Access connections) 를 선택합니다.
- OK 를 클릭합니다.
- 모든 Security Gateway에 같은 VPN 도메인 을 구성합니다.
- Security Gateway들에 정책을 설치합니다.
Manual Load Distribution 구성:
- Security Gateway에서
$FWDIR/conf/trac_client_1.ttm파일을 편집합니다. - 다음과 같이 바꿉니다.
:mep_mode ()절에서:default (client_decide)→:default(load_sharing)로 변경:ips_of_gws_in_mep ()절에서:default (client_decide)를 게이트웨이 IP 목록으로 변경
예시:
- 파일 변경을 저장하고 편집기를 빠져나갑니다.
- SmartConsole에서 VPN 게이트웨이에 정책을 설치합니다.
- 원격 접속 클라이언트로 연결하면 구성이 적용됩니다.
반환 패킷 구성 (Configuring Return Packets)
Office Mode를 쓰지 않는 클라이언트 를 위한 반환 패킷 구성은 다음 두 가지입니다.
- IP Pool NAT 에 속하는 IP Pool NAT 주소("IP Pool NAT 구성" 절 참고).
- Hide NAT("NAT 구성" 절 참고).
NAT 구성 (Configuring NAT)
NAT는 Virtual System 창의 NAT 페이지 에서 구성합니다. 이렇게 구성한 Hide 또는 Static NAT 주소는 그 Virtual System이 연결된 Virtual Router로 자동 전달 됩니다. 또는 Virtual Router 창의 Topology 페이지에서 NAT 경로를 직접 추가할 수도 있습니다.
VSX Gateway의 Virtual System에 NAT 구성:
| 단계 | 지시 |
|---|---|
| 1 | 이 Virtual System을 관리하는 Security Management Server / Target Domain Management Server에 SmartConsole로 연결합니다. |
| 2 | 왼쪽 탐색 패널에서 Gateways & Servers 를 클릭합니다. |
| 3 | Virtual System 객체를 엽니다. |
| 4 | 왼쪽 탐색 트리에서 NAT > Advanced 를 클릭하면 Advanced 페이지가 열립니다. |
| 5 | Add Automatic Address Translation 을 선택합니다. |
| 6 | Translation method(변환 방식)를 선택합니다(아래 설명). |
| 7 | Install on Gateway 목록에서 VSX Gateway를 선택합니다. |
| 8 | OK 를 클릭합니다. |
| 9 | 이 Virtual System에 Access Control Policy를 설치합니다. |
6단계의 Translation method 는 다음 중에서 고릅니다.
- Hide — 내부망에서 시작된 연결만 허용 합니다. 내부 호스트는 내부 목적지·인터넷·다른 외부망에 접근할 수 있지만, 외부 원본은 내부망 주소로 연결을 시작할 수 없 습니다. 다음 중 하나를 고릅니다.
- Hide behind Gateway — 실제 주소를 VSX Gateway의 외부 인터페이스 주소 뒤 에 숨깁니다. 이는 IPv4에서 주소
0.0.0.0, IPv6에서::뒤에 숨기는 것과 같습니다. - Hide behind IP Address — 실제 주소를 가상 IP 주소 뒤 에 숨깁니다. 이 가상 IP는 라우팅 가능한 공인 IP로, 실제 어떤 장비에도 속하지 않 는 주소입니다.
- Hide behind Gateway — 실제 주소를 VSX Gateway의 외부 인터페이스 주소 뒤 에 숨깁니다. 이는 IPv4에서 주소
- Static — 각 사설 주소를 대응하는 공인 주소로 일대일 변환 합니다. Static IP 주소를 입력합니다.
VSX Cluster의 Virtual System에 NAT 구성:
| 단계 | 지시 |
|---|---|
| 1 | 각 VSX Cluster Member 의 명령줄에 연결합니다. |
| 2 | Expert mode에 로그인합니다. |
| 3 | 해당 Virtual System의 컨텍스트로 전환합니다. [Expert@HostName:0]# vsenv <VSID> |
| 4 | 해당 트래픽이 나가는 Virtual System 인터페이스의 Funny IP 주소 를 알아냅니다(아래 참고). 적어 둡니다. |
| 5 | 이 Virtual System을 관리하는 Security Management Server / Target Domain Management Server에 SmartConsole로 연결합니다. |
| 6 | 왼쪽 탐색 패널에서 Gateways & Servers 를 클릭합니다. |
| 7 | 새 Node Host 객체를 만들고 4단계에서 적어 둔 Funny IP 주소 를 할당합니다. |
| 8 | 새 Node Host 객체를 만들고 NATed IP 주소 를 할당합니다. |
| 9 | 왼쪽 탐색 패널에서 Security Policies 를 클릭합니다. |
| 10 | Access Control > NAT 정책에서, Virtual System 트래픽을 NATed IP 주소 뒤로 숨기는 NAT 규칙을 만듭니다(아래 표). |
| 11 | 이 Virtual System에 Access Control Policy를 설치합니다. |
3단계의 컨텍스트 전환:
[Expert@HostName:0]# vsenv <VSID>10단계에서 만드는 NAT 규칙은 다음과 같이 구성합니다.
| 항목 | 값 |
|---|---|
| Original Source | Any |
| Original Destination | NATed IP 주소를 가진 Node Host 객체(Virtual System의 NATed IP) |
| Original Services | Any |
| Translated Source | Funny IP 주소를 가진 Node Host 객체(Virtual System의 Funny IP) |
| Translated Destination | = Original (그대로) |
| Translated Services | = Original (그대로) |
| Install On | Policy Targets 또는 Virtual System 객체 |
| Comments | 설명 텍스트(예: Manual NAT rule for VSXcluster3-VS2 Funny IP) |
IP Pool NAT 구성 (Configuring IP Pool NAT)
각 Security Gateway마다 그 게이트웨이의 IP Pool NAT 주소를 나타내는 네트워크 객체 를 만듭니다.
SmartConsole에서 원격 접속 VPN용 IP Pool NAT 구성:
- 전역 IP Pool NAT 설정을 구성합니다.
- a. Menu > Global properties 를 클릭합니다.
- b. 왼쪽 탐색 트리에서 NAT - Network Address Translation 을 클릭합니다.
- c. Enable IP Pool NAT 를 선택합니다.
- d. 로깅 설정을 구성합니다.
- Address exhaustion track — IP Pool이 고갈되었을 때 로그를 생성할지 를 제어합니다.
- Address allocation and release track — IP Pool에서 IP 주소를 할당·해제할 때마다 로그를 생성할지 를 제어합니다.
- e. OK 를 클릭합니다.
- f. SmartConsole 세션을 게시합니다.
- 원격 접속 VPN에 참여하는 각 Security Gateway / Cluster마다, 그 게이트웨이의 NAT 주소 IP Pool을 나타내는 객체(Network·Group·Address Range)를 만듭니다.
- a. Objects > Object Explorer 를 클릭합니다(또는
CTRL+E). - b. 새 객체를 만듭니다.
- c. IP 주소(들)를 구성합니다.
- d. OK 를 클릭합니다.
- e. SmartConsole 세션을 게시합니다.
- a. Objects > Object Explorer 를 클릭합니다(또는
- 각 Security Gateway / Cluster 객체에서 IP Pool NAT 설정을 구성합니다.
- a. 왼쪽 탐색 패널에서 Gateways & Servers 를 클릭합니다.
- b. IP Pool NAT 변환을 수행하는 Security Gateway / Cluster 객체를 더블 클릭합니다.
- c. 왼쪽 탐색 트리에서 NAT > IP Pool NAT 를 클릭합니다.
- d. Allocate IP Addresses from 을 클릭하고 해당 IP Pool 객체를 선택합니다.
- e. Use IP Pool NAT for VPN client connections 를 선택합니다.
- f. (선택) Use IP Pool NAT for Security Gateway to Security Gateway connections 를 선택합니다.
- g. OK 를 클릭합니다.
- 관리 중인 모든 Security Gateway와 Cluster 에 Access Control 정책을 설치합니다.
- 각 내부 라우터의 라우팅 테이블을 편집 해, NAT Pool에서 할당된 IP 주소를 가진 패킷이 알맞은 Security Gateway로 라우팅되게 합니다.
MEP 끄기 (Disabling MEP)
- SmartConsole로 Management Server에 연결합니다.
- Menu > Global properties 를 클릭합니다.
- 왼쪽 탐색 트리에서 Advanced 를 클릭합니다.
- Configure 버튼을 클릭합니다.
- 왼쪽 탐색 트리에서 SecuRemote/SecureClient > IKE/IPSec Settings 를 클릭합니다.
- desktop_disable_mep 옵션을 선택합니다.
- OK 를 클릭합니다.
- 관리 중인 모든 Security Gateway와 Cluster에 Access Control 정책을 설치합니다.
Secondary Connect
Secondary Connect란
Secondary Connect 를 쓰면 최종 사용자가 여러 VPN 게이트웨이 뒤의 자원에 동시에 접근 할 수 있습니다. 사용자는 선택한 사이트에 한 번만 로그인 하고도 서로 다른 VPN 게이트웨이 뒤의 자원에 닿을 수 있습니다. VPN 게이트웨이들은 트래픽의 목적지에 따라 필요할 때마다 동적으로 터널을 생성 합니다.
Secondary Connect는 기본으로 켜져(enabled by default) 있 습니다.
트래픽은 site-to-site 통신 없이, 최종 사용자 컴퓨터에서 VPN 게이트웨이로 직접 흐릅니다. 최종 사용자 컴퓨터와 VPN 게이트웨이는 네트워크 토폴로지의 라우팅 파라미터와 목적지 서버 IP 주소를 바탕으로 VPN 터널을 자동 생성 합니다.
최종 사용자는 같은 Management Server 또는 Domain의 Remote Access Community에 속한 모든 VPN 게이트웨이 에 접근할 수 있습니다.
Secondary Connect 환경에서 클라이언트는 먼저 Primary Security Gateway에 연결한 다음, 보조(secondary) VPN을 통해 Secondary Security Gateway 에 연결합니다. Secondary Connect는 레거시 SecureClient 설정과도 호환 됩니다. Secondary Connect를 위한 Security Gateway 요구 사항은 sk65312 를 참고하세요.
Secondary Connect 구성하기
전제 조건 (Prerequisites)
- Secondary Connect에 참여하는 모든 VPN 게이트웨이는 Internal Certificate Authority가 서명한 서버 인증서 를 가지고 있어야 합니다.
- Office Mode IP 주소를 쓴다면, Primary VPN 게이트웨이와 Secondary VPN 게이트웨이가 서로 다른 IP 주소를 쓰도록 해 충돌을 막아야 합니다. 엔드포인트 사용자 컴퓨터는 첫 번째 Security Gateway가 발급한 Office Mode IP 주소 를 써서 Secondary Security Gateway에 접근합니다. 만약 엔드포인트 사용자 컴퓨터가 인증 자격 증명을 캐시하지 않으면, 다른 Security Gateway의 자원에 접근할 때 자격 증명을 다시 입력 해야 합니다.
Secondary Connect 끄기
- 각 Security Gateway 에서
$FWDIR/conf/trac_client_1.ttm파일을 편집합니다. automatic_mep_topology의:default값을true로 설정합니다.enable_secondary_connect항목을 찾습니다. 보이지 않으면 직접 추가합니다.
:enable_secondary_connect (
:gateway (
:map (
:true (true)
:false (false)
:client_decide (client_decide)
)
:default (true)
)
)
enable_secondary_connect의:default값을false로 바꿉니다.- 파일을 저장합니다.
- Access Control Policy를 설치합니다.
Secondary Connect 켜기
- Security Gateway가 Internal Certificate Authority가 서명한 서버 인증서 를 가지고 있는지 확인합니다.
- 각 Security Gateway에서
$FWDIR/conf/trac_client_1.ttm파일을 편집합니다. automatic_mep_topology의:default값을true로 설정합니다.enable_secondary_connect항목을 찾습니다. 보이지 않으면 직접 추가합니다.
:enable_secondary_connect (
:gateway (
:map (
:true (true)
:false (false)
:client_decide (client_decide)
)
:default (false)
)
)
enable_secondary_connect의:default값을true로 바꿉니다.- 파일을 저장합니다.
- Access Control 정책을 설치합니다.