Home » 산딸기 가지고 놀기 » 라즈베리파이 서버 활용 강좌 : VPN Server(OpenVPN) 구축하기(open ssl)

 

안녕하십니까… 산딸기 마을 이장 나무꾼 입니다.

 

오늘은 ” 멀 하지 ? ” 라고 고민을 하던 차에 저희 카페 회원님(영광입니다)의 요청을 받게 되어

Open VPN Server 를 구축해 보려고 합니다.

 

Open VPN ? 머지 ?? 라고 생각하시는 분들이 계시겠지만, 간단히 제가 사용하는 표현법으로 표현을 드리자면, 서울에 위치한 PC와 부산에 있는 PC가 있다고 가정을 하고 각 각의 분리되어 있는 네트웍을 하나로 묶어주는 기능이다 라고 표현을 하고 싶습니다.

 

자 그럼 서론은 각설하고 일단 설치를 진행해 보겠습니다.

 

Pi VPN Server 구축하기

 

1. OpenVPN 설치하기

sudo apt-get install openvpn

openVPN_1

 

그림 1)

정상적으로 설치가 완료 되었다면 그림 2)와 같이  VPN  데몬이 정상적으로 올라간 화면을 보게될 것입니다.

openVPN_2

그림 2)

 

2. OpenVPN  환경설정하기

cd /etc/openvpn
sudo cp -r /usr/share/doc/openvpn/examples/easy-rsa/2.0 ./easy-rsa

openVPN_3

그림 3)

현재 해외 포스터의 경우 명령어의 일부가 생략된 부분이 많고, 아래 내용을 처리해 주지 않으면 파일 오류들이 많이 발생한다.

 sudo chown -R $pi /easy-rsa 
 or sudo chown -R pi:pi /easy-rsa

 

그림 easy-rsa 폴더 안에 vars 파일을 열어, export EASY_RSA=”`pwd`” 항목을 찾아 그림 4)와 같이 수정 또는 교체를 합니다

cd easy-rsa
sudo nano easy-rsa/vars

 

#처리 또는 Replace

export EASY_RSA=”`pwd`”

export EASY_RSA=”/etc/openvpn/easy-rsa”

openVPN_4

그림 4)

그림 5) 와 같이 이메일 주소를 변경하지 않으면 ./vars 나  ./clean-all 수행 시에 오류가 발생하는 경우가 있습니다.

openVPN_5

그림 5)

 

위 수정된 내용을 아래 명령어를 수정하여, 적용을 합니다.

정삭적으로 갱신이 이루어 진다면 그림 6)과 같은 화면을 보실 수 있습니다.

source vars

openVPN_6

그림 6)
./vars
./clean-all

openVPN_7

그림 7)

 

다음으로 인증기관에 대한  정보를 입력하는 절차 입니다.

사전에 그림 5)에서의 다룬 정보들을 모두 수정하였다면 엔터만 입력하시면 됩니다.

./build-ca

openVPN_8

그림8)

 

3. 인증키 생성하기

 

3-1. 서버용 인증키 생성하기

서버에 인증키를 생성하는 과정입니다. 이 과정에서 servername 은 임의설정이 가능합니다.

저는 servername(임의설정가능) 을 rasplay 로 설정을 하고 패스워드 또한 별도로 설정했습니다.

마지막 y/n 질문에는 그냥 엔터를 치시면 됩니다.

./build-key-server rasplay

openVPN_9

그림 9)

 

3-2. 클라이언트용 키 생성하기

3-1번 과정에서 서버용 인증서를 생성하였으니, 이제 접속자들이 사용할 클라이언트용 인증키를 생성해보겠습니다.  build-key 명령어를 수행합니다.

* client name(임의설정 가능) 을 test로 입력하여 테스트 하겠습니다.

./build-key test

openVPN_10

그림 10)

 

3-3. 인증서 1024bit 암호화 작업

./build-dh

openVPN_11

그림 11)

 

3-4 생성된 인증서 OpenVPN 폴더로 이동하기

cd keys
sudo cp ca.crt ca.key dh1024.pem rasplay.crt rasplay.key /etc/openvpn

openVPN_12

 그림 12)

4. VPN Package 생성 및 환경설정

 

4-1. 환경설정파일 백업하기

패키지 구성과 환경구축을 위해 아래 폴더로 이동을 하고 기존에 생성을 해둔 파일을 인증서 폴더와 함께 복사합니다.

cd /usr/share/doc/openvpn/examples/sample-config-files
cp client.conf /etc/openvpn/easy-rsa/keys
cp server.conf.gz /etc/openvpn/easy-rsa/keys

openVPN_13

그림 13)

환경구축을 위해 파일을 수정 전에 관련파일을 압축 해 둡니다.

cd /etc/openvpn/easy-rsa/keys 
gunzip server.conf.gz

openVPN_14

그림14)
 

4-2. 서버 환경설정 파일 수정하기

keys 폴더 내에 있는 server.conf 파일을 열어 새롭게 생성한 인증서로 교체를 해 줍니다.

sudo nano server.conf

openVPN_15

 

그림 15)
* ctrl + x 를 눌러 저장을 합니다.

 

4-3. 클라이언트 환경설정 파일 수정하기

client.conf 파일을 열어 그림 16), 그림 17) 처럼 파일을 수정하여 줍니다.

sudo nano client.conf

openVPN_16

그림 16)

openVPN_17

 

그림 17)

 

지금까지 긴을을 읽어 주셔서 감사드립니다.

다음 VPN 강좌는 PPTP VPN 서버 구축에 대한 강좌를 진행 해 보겠습니다.

 

[참고사이트]

http://wiki.debian.org/OpenVPN

http://openvpn.net/index.php/open-source/documentation.html

http://25zerotwo.com

 

6 Replies to “라즈베리파이 서버 활용 강좌 : VPN Server(OpenVPN) 구축하기(open ssl)”

  1. cvdf95 댓글:

    요청드렸던 cvdf95입니다.

    도움받을 곳이 없어 요청드렸던 것인데 이렇게 자세히 설명해 주셔서 감사합니다^^

    지금 중국에 거주하고있는데 이번에 한국이 들어갈줄 알았더니 더 오래걸리겠네요.

    다음번에 한국 들어가면 시도해 보도록 하겠습니다 감사합니다

  2. cvdf95 댓글:

    중국에선 막혀있네요 우회해서 댓글 달았습니다

  3. cvdf95 댓글:

    http://imgur.com/oOucChL

    수정도 안되네요 ㅠㅠ

    1. 나무꾼 댓글:

      에겅… 혹시 메일 주소가 있으시면 부탁 드리겠습니다.
      파일로 메일을 보내 드리겠습니다.

    2. 나무꾼 댓글:

      메일로 보내 드렸습니다. ^^
      네이버 메일 확인해 보세요

  4. 김현준 댓글:

    그림2에서 다음과같이 안되는데 이럴경우어떻게하죠?

Comments are closed.

산딸기마을 포스트 검색

공동제작 공동프로젝트 무상후원 기관

산딸기마을 기부하기

산딸기마을 방문자 현황

Flags Countries Visits Page views
South Korea 626063 1845660
United States 10882 26091
Japan 5011 13204
Germany 2755 5151
India 1897 2902
Canada 1729 4640
United Kingdom 1596 2642
Australia 1240 2901
Russia 1219 1677
China 1077 2239
Total Pageviews: 1936700