이번 티스토링에서는 VPN(Virtual Private Netwok :가상사설망) 서버를 구축해 보겠습니다. 예전에 올린 글에서 VPN 프로그램을 이용하지 않고 이용할 수 있는 방법을 알려드렸습니다. 링크를 확인해보니 티스토리에 처음으로 올린글입니다(http://www.dsun.kr/1 글 인덱스 1입니다 ^^*).

 

클릭 : VPN 연결

 

 VPN을 이용하게된 이유는 하루종일 있어야 하는 곳에서 점심시간에 스트레스 해소와 친목을 위한 롤(LOL)을 하기 위해서 였습니다(하루종일 있어야 하는 곳에서 점심시간까지 개인적인 자유를 점점 차단 당해 가고 있습니다 ㅠㅠ).

 

 이런저런 이유로 다양한 사이트가 차단이 되었습니다. 어느 정도 해결할 수 있는 방법이 VPN이었습니다(휴대폰 테더링으로 사용을 해보기도 했지만 제 휴대폰이 3G라서 한계가 있었습니다 ㅠㅠ). 위에 링크에서 VPN원리에 대해서 설명되어 있으니 참고하시기 바랍니다.

 

 그전에도 집에서 놀고 있는 컴퓨터로 VPN 서버를 구축해 볼려고 노력을 했지만 번번히 실패를 했습니다.

 

 

 

Round 1 !!

 

 처음에는 KT의 홈허브(Home Hub) 공유기를 사용하고 있는데 공유기 설정을 제대로하지 못해서 문제가 되었습니다. KT 인터넷 회선에서 공유기(홈허브)로 공유를 하고 있는 상태에서 구축하려는 VPN 서버의 LAN 포트로 포트 포워딩(Port Forwarding)을 하여 시도했습니다.

 

 가장 구축하기 쉬운 PPTP(Point-to-Point Tunneling Protocol)로 시도해 보기로 했습니다. PPTP1723포트와 GRE(47 포트)라는 특별한 포트를 필요로 합니다. 그런데 KT 홈허브의 포트 포워딩이 GRE를 포워딩 해주지 못했습니다(2일 동안이나 잠을 설쳐가며 노력했지만 실패를 했습니다. ㅠㅠ).

 

 

Round 2 !!

 

 위에 링크에서 http://www.vpngate.net/ 를 소개 했었습니다. 여기에 등록되어 올라오는 VPN들은 문제가 거의 없긴 하지만 개인이 운영하는 VPN이 대부분이라서 그런지 특별한 공지없이 연결이 안되거나 속도가 떨어지는 경우가 종종 발생 하였습니다(공짜로 이용하는 넘이 요구사항도 많기는???  ㅡㅡ;). 안정적인 VPN 서버를 찾아 다니는 것도 한계가 있는 것 같아서 다시 VPN 서버 구축을 시도했습니다.

 

 구글, 네이버, 다음에서 여러가지 자료를 찾아 보고 이번는 자료를 확실히 수집해서 다시 시도를 했습니다. Round 1에서 실패 했던 GRE문제 해결을 위해서 공유기를 설정을 변경했습니다(공유기를 새로 구입하지 않고 가능한 방법을 찾았습니다). 포트 포워딩을 하지 않고 바로연결 할 수 있도록 공인 IP를 받아오록 했습니다.

 

 KT 홈허브설정에서 구축하려는 VPN 서버의 LAN 포트를 다이나믹에서 공인으로 변경을 하였습니다. 이렇게 되면 VPN 서버는 KT의 DHCP 서버에서 공인 IP를 할당 받게 됩니다. 요즘 1회선에 2대까지만 허용하도록 강제로 제한 하고 있는데 저는 노트북, VPN서버 2대를 사용하기 때문에 차단을 피해 갈 수 있었습니다(차단을 우회 하는 방법도 있다고 하니 찾아 보시기 바랍니다).

 

 저는 서버를 구축하여 다양한 서비스를 계획하고 있습니다. 그중에 하나가 VPN 서버입니다. 우선 저는 놀고 있는 데스크탑에 윈도우 서버 2012 R2를 설치 했습니다(학생이시면 http://www.dreamspark.com/ 에서 윈도우 서버 2012 R2를 구해 보시기 바랍니다).

 

 윈도우 서버 2012 R2를 설치하고 수집한 VPN 구축 방법 자료들을 참고하여 작업을 했습니다. PPTP로 집에 있는 VPN서버로 접속은 되는 듯 했지만 GRE가 동작을 하지 않는 듯 했습니다.

 

 PPTP는 포기하고 L2TP(Layer 2 Tunneling Protocol)를 시도 했습니다. VPN접속이 정상적으로 동작을 했지만 인터넷 연결이 되지 않았습니다(답답해 미치는 줄 알았습니다 ㅠㅠ). Round 3로 가기 전에 VPN 프로토콜에 대해서 간략하게 정리해 보겠습니다.

 

PPTP : 2계층에서 암호화를 제공하며 따로 설정하지 않아도 이용 가능 (1723 TCP, 47 GRE)

L2TP/IPsec : 가상사설망을 구축하기 위한 IETF의 프로토콜, IPSec 보안 프로토콜, AppleTalk, IPX와 같은 비 IP 프로토콜 지원 (1702 TCP, 500 UDP)

SSTP : Secure Socket Tunneling Protocol, PPTP 및 L2TP/IPsec 트래픽을 차단하는 방화벽을 통해 트래픽을 전달, https 보안 프로토콜 이용 (443 TCP, 인증서)

IKE or IKEv2 : Internet Key Exchange, IPsec의 자동 키 교환 프로토콜

 

(간략하게 정리를 하기는 했지만 어려워 보이네요 ㅠㅠ)

 

 

 Round 3 !!

 

 그동안의 경험을 바탕으로 좀더 많은 자료를 찾았습니다(Round 2에서 2일 동안 고생했습니다). 이번 Round에서는 윈도우 2012 R2에서 VPN 서버 구축 완료를 하여 알려 드리겠습니다.

 

 윈도우 2012 R2가 최신 OS인 만큼 다양한 기술이 있습니다. 간단한 소개 영상을 볼까요? (개인적으로 선택한 이유이기도 합니다)

 

 

 이제 본격적으로 VPN 서버를 구축해 보겠습니다.

 

 

 목차

1. 원격 액세스 및 IIS 역할 추가

2. 라우 팅 및 원격 액세스 구성

3. L2TP/IPSec, IKEv2 설정

4. 인터넷 사용자 리디렉션

5. VPN 접속 사용자 추가 및 액세스 허용

6. VPN 연결 (PPTP) 7. VPN 연결 (L2TP/IPSec)

 

1. 원격 액세스 및 IIS 역할 추가

 서버 관리자에서 관리(M) -> 역할 및 기능 추가를 실행 합니다.

 

 

 

 

 역할 및 기능 추가 마법사가 실행이 됩니다. 다음(N) 버튼을 누릅니다.

 

 

 

 설치 유형에서 역할 기반 또는 기능 기반 설치를 선택하고 다음(N) 버튼을 누릅니다.

 

 

 

 서버 선택에서 서버 풀에서 서버 선택을 하고 서버 풀에서 서버를 선택합니다. 다음(N)을 클릭합니다.

 

 

 

 서버 역할 선택에서 원격 액세스를 선택하고 다음(N) 누릅니다(추가 항목이 있을 경우 자동으로 추가가 됩니다).

 

 

 

 기능 선택에서는 선택없이 넘어 갑니다.

 

 

 

 원격 액세스 화면이 나타납니다. 설명을 읽어 보시고 다음(N)을 클릭합니다.

 

 

 

 역할 서비스 선택에서 DirectAccess 및 VPN(RAS)를 선택을 합니다. 추가로 필요한 역할 및 기능 알림창이 뜹니다(SSTP VPN 구성을 위해서 자동으로 IIS가 추가 됩니다). 기능 추가 버튼을 누른뒤 라우팅도 선택을 하고 다음(N)을 클릭합니다.

 

 

 

 웹 서버 역할(IIS) 화면이 나타납니다. 읽어보시고 다음(N)을 클릭합니다.

 

 

 

 역할 서비스 선택 화면에서 선택된 그대로 두고 다음(N)을 클릭합니다.

 

 

 

 설치 선택 확인 화면이 나타납니다. 확인해 보시고 다음(N)을 누릅니다.

 

 

 

 설치가 시작 됩니다.

 

 

 

 설치가 완료되면 서버 관리자에서 경고 표시가 나타납니다. 시작 마법사 열기를 실행하시면 됩니다(또는 제어판 -> 시스템 및 보안 -> 관리 도구 -> 라우팅 및 원격 액세스).

 

 

 

 저는 시작 마법사 열기로 진행 하였습니다. Remote Access 구성 화면에서 VPN만 배포(V)를 선택합니다.

 

 

 

 

 

2. 라우 팅 및 원격 액세스 구성

 

 라우팅 및 원격 액세스 화면이 나타납니다. 서버명(로컬) 항목에서 오른쪽 마우스 클릭을 하고 라우팅 및 원격 액세스 구성 및 사용(C)를 실행합니다.

 

 

 

 라우팅 및 원격 액세스 서버 설치 마법사 화면이 나타납니다. 다음(N)을 클릭합니다.

 

 

 

 구성 화면에서 사용자 지정 구성(C)을 선택하고 다음(N) 버튼을 클릭합니다.

 

 

 

 VPN 액세스(V), NAT(A), LAN 라우팅(L)을 선택하고 다음(N)을 클릭합니다(인터넷 우회를 하기 위해서 NAT, LAN 라우팅을 선택).

 

 

 

 마침을 클릭하시면 설정이 완료됩니다.

 

 

 

 라우팅 및 원격 액세스 화면이 뜨고 서비스 시작을 눌러 서비스를 시작합니다.

 

 

 

 

 라우팅 및 원격 액세스 화면에서 서버명(로컬) 항목에서 오른쪽 마우스를 클릭하고 속성(R)로 들어 갑니다. 현재 상태에서는 PPTP만 VPN서버로 접속이 가능합니다.

 

 

3. L2TP/IPSec, IKEv2 설정

 

 

 

 L2TP/IPSec, IKEv2를 이용하기 위해서는 보안텝에서 L2TP/IKEv2 연결에 사용자 지정 UPsec 정책 허용(L)을 선택하니다. 미리 공유한 키(K)에 키값을 입력합니다. 클라이언트에서 L2TP/IPSec, IKEv2로 접속할때 필요한 키입니다.

 

 

 

 IPv4텝에서 고정 주소 풀(S)을 선택을 하고 추가(D) 버튼을 클릭합니다.

 

 

 

 IPv4 주소 범위 편집 화면에서는 VPN 으로 접속 한 클라이언트에게 할당할 IP 주소 범위를 지정합니다. 아래 그림과 같이 지정을 하면 20개를 할달 할 수 있습니다(필요에 따라서 조정 하시면 됩니다).

 

 

 

 서비스를 재시작 해야 될수도 있습니다. 서버명(로컬) 항목에서 오른쪽 마우스를 클릭하고 모든작업(K) -> 다시 시작(E)를 실행해서 다시 시작 하시면 됩니다.

 

 

 

 아마 여기까지 진행을 하시면 PPTP, L2TP/IPSec, IKEv2로 VPN 서버로 접속이 가능 합니다. 하지만 인터넷을 우회해서 사용을 할 수 없는 상태입니다. 인터넷을 우회해서 사용할 수 있도록 설정을 해보겠습니다.

 

 

4. 인터넷 사용자 리디렉션

 

 라우팅 및 원격 액세스 화면에서 NAT 항목에서 오른쪽 마우스를 클릭하고 새 인터페이스(I)를 실행합니다.

 

 

 

 NAT(Network Address Translation)를 적용할 인터페이스(N) 이더넷를 선택을 하고 확인 버튼을 누릅니다.

 

 

 

 NAT(네트워크 주소 변환) 속성 화면이 나타나는데 공용 인터페이스를 인터넷에 연결(U), 이 인터페이스에 NAT 사용(E)을 선택합니다.

 

 

 

 서비스 및 포트 텝으로 이동합니다. 서비스(S)에서 IP 보안(IKE), IP 보안(IKE NAT 통과), VPN 게이트웨이(L2TP/IPsec - 이 서버에서 실행), VPN 게이트웨이(PPTP)를 선택합니다. 개인 주소(P)에 주소를 127.0.0.1로 4가지 모두 설정합니다.

 

 

 

 

 아래는 서비스(S)가 설정된 상태입니다.

 

 

 

 서비스를 다시 시작하면 VPN 서버 구축이 완료 됩니다.

 

 

 

 티스토링이 많이 길어 졌습니다. 여기까지 봐주셔서 고맙습니다. 그림이 많아서 그렇지 실제 내용을 얼마되지 않습니다(그림으로 때울려고 하다니 ㅡㅡ;).

 

 글이 너무 길어지는 것 같아서 다음 티스토링에서 PPTP, L2TP/IPSec, IKEv2VPN연결하는 방법을 올려 드리겠습니다.

 

 

 

---------- 2014년 3월 20일 : 내용 추가 ----------

 새로운 티스토링으로 올릴려고 했지만 흐름이 끈기는 것 같아서 추가로 내용을 올립니다.

 

 

5. VPN 접속 사용자 추가 및 액세스 허용

 

 만들어진 VPN 서버로 접속할 사용자를 추가해 보겠습니다. 제어판 -> 시스템 및 보안 -> 관리 도구 -> 컴퓨터 관리로 들어 갑니다.

 

 

 

 컴퓨터 관리에서 로컬 사용자 및 그룹 -> 사용자에서 마우스 오른쪽 버튼을 클릭하여 새 사용자(N)...로 새 사용자를 실행합니다.

 

 

 새 사용자 화면에서 사용자 이름(U), 전체 이름(F), 설명(D), 암호(P), 암호 확인(C)을 입력합니다. 사용자 이름은 VPN접속시 로그인 사용자 입니다(될 수 있으면 알파벳으로 입력합니다). 사용자가 암호를 변결할 수 없음(S), 암호 사용기간 제한 없음(W)를 선택합니다(사용자가 암호를 변경할 수 없도록 합니다). 만들기(E)버튼을 눌러 추가를 합니다.

 

 

 

 아래 그림을 보면 추가된 사용자가 보입니다. 추가된 사용자에서 오른쪽 마우스를 클릭하여 속성(R)으로 들어갑니다.

 

 

전화 접속 로그인 텝에서 네트워크 액세스 권한액세스 허용(W)을 선택합니다. 액세스 허용을 해야지만 VPN 접속시에 해당 사용자가 VPN 서버 네트워크에 액세스를 할 수 있습니다.

 

 

 

 추가된 사용자로 다중 접속이 가능합니다. VPN 사용자로 하나만 추가해서 사용하시면 될 것 같습니다.

 

 

 6. VPN 연결 (PPTP)

 

 이제는 VPN 서버로 PPTP로 연결하여 사용해 보겠습니다(기준은 윈도우8, 윈도우8.1 입니다).  제어판 -> 네트워크 및 인터넷 -> 네트워크 및 공유 센터로 이동합니다. 새 연결 또는 네트워크 설정을 실행합니다.

 

 

 

 연결 또는 네트워크 설정에서 회사에 연결을 선택하고 다음(N) 버튼을 클릭합니다.

 

 

 

 회사에 연결 화면에서 아니요, 새 연결을 만듭니다.(C)를 선택하고 다음(N)을 클릭합니다.

 

 

 

 연결 방법 선택에서 내 인터넷 연결 사용(VPN)(I)를 선택합니다.

 

 

 

 연결할 인터넷 주소 화면에서 인터넷 주소(I)VPN서버 주소(또는 IP)를 입력합니다. 대상 이름(E)는 본인이 구분할 수 있는 연결 주소를 입력합니다. 만들기(C) 버튼을 클릭하여 VPN 연결을 생성합니다.

 

 

 

 제어판 -> 네트워크 및 인터넷 -> 네트워크 연결로 이동합니다. 추가된 VPN 연결이 보입니다. PPTP로 연결 설정을 위해서 오른쪽 마우스를 클릭하여 속성(R)으로 들어갑니다.

 

 

 보안 텝에서 VPN 종류(T)PPTP(지점 간 터널링 프로토콜)을 선택합니다. 다음 프로토콜 허용(P)을 선택하고 Microsoft CHAP Version 2 (MS-CHAP v2)를 체크합니다.

 

 

 

 네트워크 연결에서 생성된 VPN연결에서 오른쪽 마우스를 클릭하여 연결/연결 끊기(O)를 실행합니다.

 

 

 

 연결 화면에서 생성된 VPN 연결을 선택하고 연결(C) 버튼을 클릭합니다. 

 

 

 

 로그인 화면에서 위에서 추가 했던 사용자 이름과 암호를 입력하고 확인 버튼을 누릅니다.

 

 

 로그인이 정상적으로 완료가 되면 아래와 같이 연결됨 상태가 됩니다. 연결이 완료가 되면 VPN 연결을 통하여 모든 트래픽이 VPN서버를 거처서 우회를 하게 됩니다. 연결을 종료 하기 위해서는 연결 끊기(D)를 클릭하시면 됩니다. 연결 설정이 완료된 상태이기 때문에 필요할때 마다 연결해서 사용을 하시면 됩니다.

 

 

 

 

 7. VPN 연결 (L2TP/IPSec)

 

 이번에는 L2TP로 연결을 해보겠습니다. VPN 연결 속성에서 보안 텝에서 VPN 종류(T)IPsec을 사용한 계층 2 터널링 프로토콜(L2TP/IPSec)를 선택합니다. 다음 프로토콜 허용(P)을 선택하고 Microsoft CHAP Version 2 (MS-CHAP v2)를 체크합니다. 고급 설정(S) 버튼을 클릭합니다.

 

 

 

 고급 속성에서 인증에 미리 공유한 키 사용(P)에서 키(K)를 입력합니다. 위에서 "3. L2TP/IPSec, IKEv2 설정"하는 내용에서 L2TP/IKEv2 연결에 사용자 지정 IPSec 정책 허용(L)을 선택하고 미리 공유한 키(K)를 입력했었습니다. 동일한 키를 입력하시면 됩니다. 확인 버튼을 클릭하고 VPN 연결 속성 창에서 확인 버튼을 눌러서 저장합니다.

 

 

 

 아래 그림에서 보시면 L2TP로 설정된 연결을 보실 수 있습니다.

 

 

 

 지금까지 VPN 서버를 구축하고 VPN 연결 설정을 생성해 보았습니다. 처음부터 지금까지 읽어 주신 분들에게 고맙습니다. 직접 해보시고 어려움이 발생하시면 댓글로 문의해 주시면 답변해 드리겠습니다.

 

 

※ 쿠팡 파트너스 활동을 통해 일정액의 수수료를 제공받을 수 있습니다.