본문 바로가기
ETC story/Mobile & IT

나만의 VPN 서버를 만들어보자 - Wireguard VPN 설치

by 애쉬™ 2020. 8. 18.

정말 오랜만에 글 쓰네요. 

 

제가 일하고 있는 에티오피아는 인터넷 사정이 워낙 안 좋아서, 7월은 거의 24일동안 인터넷이 안되었고, 

중간에도 간간히 되었다 안 되었다 합니다. 

 

오늘도 주말동안 안되다가 월요일 저녁에 살아난 기념으로 글 한번 올려봅니다.

 

참, 여기는 3G도 안 좋아요..

3G에서 그냥은 카톡도 안 보내져서 (수신은 되고) , VPN을 켜야지 발송이 되는 정말.. 한국분들은 상상하기 어려운 조건이랍니다. 

 

그래서, 유난히 여기 온 이후로 VPN에 관심도 많아진 것인지도 모르겠습니다.

한국에 살면요?? 그냥, 유니콘https 이런 앱 하나면 머, 막힌 사이트도 잘 들어가지고, VPN은 굳이 쓸 필요성을 못 느낀다죠..

 

국내에 SK가 해외속도 느리다고들 불평하시죠? 여기 한번 와 보세요. 해외 접속되는게 다행일 정도랍니다.

 

2020/06/18 - [ETC story/Mobile & IT] - 나만의 VPN서버를 갖자. (V2ray 추천)

 

나만의 VPN서버를 갖자. (V2ray 추천)

안녕하세요. 한국에 있으면 크게 신경 쓸 필요도 없을지도 모르는 것이 바로 이 VPN입니다. VPN은 Virtual Private Network 약자로, 가상개인망을 제공해주는 서비스입니다. 즉, vpn을 통해서 접속을 하게

loveash.kr

2020/05/31 - [ETC story/Mobile & IT] - Oracle Cloud 무료 Tier를 이용하는 여러방법 링크

 

Oracle Cloud 무료 Tier를 이용하는 여러방법 링크

안녕하세요. 오라클에서 좋은 행사를 하고 있어서 기록차원에서 남겨봅니다. oraclecloud.com 에서는 무료로 2개의 VM을 지원하고 있습니다. (각 VM별 50GB의 용량 + 5TB 트래픽/월) 이걸 잘 이용하면, 개�

loveash.kr

암튼, 예전에 OUTLINE 서버 설치글도 올렸고, V2Ray 설치법도 올렸는데... 이건 머냐구요?

엄밀히 말하면 outline이나 v2ray는 VPN이라기 보다는 Proxy로 분류가 된답니다. 

사실 사용하는 입장에서는 큰 차이가 없는데, 일부 사이트에서는 Proxy 어쩌구 하면서 뜨는 사이트가 가끔 있더라구요.

 

그럼 VPN은 어떤 것이 있냐구요?

방식으로 따진다면, OpenVPN이 아주 유명하고, IKEv2 란 기술도 마이크로소프트와 시스코가 합작해서 좋고, 

프로그램으로 따진다면 부동의 1,2위인 Express VPN, Nord VPN도 있고, 

사용자들의 정보를 빨아먹는 중국의 수많은 VPN 들도 있습니다. 

 

그중에서도 Wireguard란 녀석은 최근에 만들어진 녀석으로 속도도 빠르다는 장점이 있지요.. 

설치법도 간단해서, 제 블로그에 기록차 남겨봅니다. 

 

두가지 설치법이 제가 성공한 방법인데...

 

1. 첫번째는 우분투, 데비안 최신버전 등에 사용할 수 있는 방법입니다.

Pivpn을 이용하여, OpenVPN과 Wireguard 중에서 선택하여 설치할 수 있는 방법입니다.

제 경우는 집에 있는 서버가 Odroid이고, Debian 9 Stretch이여서, 아쉽게도 이 방법을 사용하면 OpenVPN에만 설치가 되더군요.

그래서 오라클 클라우드(우분투)에만 설치를 하였습니다. 

설치방법은 간단하여, 

curl -L https://install.pivpn.io | bash

위의 명령어로 끝납니다. 

그 이후로는 원하는 포트 입력하고, OPENVPN과 WIREGUARD중 선택하고 나면,,,, 알아서 쭉쭉쭉~~

그리고 재부팅하라는 화면 나와서 재부팅하고 나서는 사용자만 추가하면 끝.

사용자 추가는 pivpn add 를 쳐 주면 되고,,

사용자 이름을 추가하고 나면, /home/pi/configs 등의 사용자 폴더에 (어느 폴더인지 알려주니 신경안 쓰셔도 되요^^)

추후 클라이언트에서 접속할 설정파일이 생성됩니다.

 

그 이후 설정파일을 윈도우 또는 모바일로 옮긴 다음에, Wireguard클라이언트에서 import 하여 접속하시면 끝!!! 

아주 쉽습니다. 

설치시에 입력한 포트를 열어주시는 것은 잘 아시죠?^^ (제 이전글 봐도 나옵니다)

 

2.  다음방법은 Docker를 이용하는 방법입니다. 

사실 데비안9에서 설치하는 여러방법을 찾아서 시도해 봤지만, 잘 안되더라구요. 

그래서 이용한 것이 Docker인데, 아주 쉽게 설정되고, 잘 쓰고 있습니다.

잘 설명되어 있는 곳이 있어서 링크 먼저 답니다.

https://hub.docker.com/r/linuxserver/wireguard

 

Docker Hub

 

hub.docker.com

여기 중간에 나오는 것을 복사해서 넣으시면 됩니다. 

docker create \
  --name=wireguard \
  --cap-add=NET_ADMIN \
  --cap-add=SYS_MODULE \
  -e PUID=1000 \
  -e PGID=1000 \
  -e TZ=Europe/London \
  -e SERVERURL=wireguard.domain.com `#optional` \
  -e SERVERPORT=51820 `#optional` \
  -e PEERS=1 `#optional` \
  -e PEERDNS=auto `#optional` \
  -e INTERNAL_SUBNET=10.13.13.0 `#optional` \
  -p 51820:51820/udp \
  -v /path/to/appdata/config:/config \
  -v /lib/modules:/lib/modules \
  --sysctl="net.ipv4.conf.all.src_valid_mark=1" \
  --restart unless-stopped \
  linuxserver/wireguard

단, 각자 환경에 따라 수정하셔야 하는데, Docker를 이용해 보신 분이라면 쉽게 이해하실 수 있습니다.

저는 기본 옵션에서 수정한 것이...

TZ=Europe/London  이 부분을 TZ=Asia/Seoul 으로..

SERVERURL=wireguard.domain.com  이 부분을 본인의 IP주소 또는 Auto로..

-p 51820:51820/udp  이 부분은 외부포트:도커포트 이기 때문에, 외부를 보안을 위해서 51820이 아닌것으로 바꾸었다면 그 포트를 적어주시면 됩니다. 

-v /path/to/appdata/config:/config   그리고 이 부분을 자신의 셋팅대로 만들어 주셔야 합니다.

/path/to/appdata란 폴더가 없으시다면, 본인의 선호대로 일단 폴더는 만들어주셔야, 도커 실행시 config란 폴더와

그 안에 자료가 생성됩니다.

 

위에서 docker를 생성한 후,

docker exec wireguard

의 명령어를 통해, wireguard를 실행시키시면 끝!  단, 위에서 생성한 /path/to/appdata/config 폴더에 가시면, peer1 머 이런 폴더가 있습니다. 그 안에 들어가면 peer1.conf와 같은 설정 파일이 생성되고, 그 내용을 1번의 방법처럼, 

옮기신 뒤에 윈도우나 모바일에서 사용하시면 됩니다. 

 

이로서, 본인만의 최신 VPN 서버를 가지게 되신 겁니다^^

 

그럼 행복한 하루 되세요!!

댓글