아마존 라이트세일 VPS - SoftEther VPN 로컬 브릿지 Local Bridges

 

 

얼마 전 "SecureNAT Vs 로컬 브릿지 (Local Bridges) 속도 비교"라는 주제로 포스트를 올린 적이 있었습니다. 따라서 로컬 브릿지에 대한 설명은 생략하고 바로 구체적인 설정 방법으로 넘어가겠습니다.

 

참고로 로컬 브릿지의 설정을 따라 하시려면...

 

 

위의 과정을 거쳐서 우선 vpn 서버를 구축해 놓으셔야 합니다.

저는 이 과정을 그동안 업데이트한 위의 세 가지 포스트를 기준으로 설정했음을 미리 알려드립니다. 서버사양 또는 VPS, 운영체제의 종류에 따라 설정 방법이 달라질 수 있음을 참고하시기 바랍니다.

 

저는 우분투 18.04.2  LTS  (GNU/Linux 4.15.0-1037-aws x86_64)를 사용했습니다.

 

그럼 시작하겠습니다.

 

 

1) Server Manager 실행 & 서버 접속

 

 

서버 매니저를 실행한 후에 해당 vpn 서버를 선택 후 접속합니다. 

보통 ip주소로 접속을 많이 합니다. 저는 ip에 도메인을 연결해 놓았습니다.

 

 

2) 가상 허브 설정

 

 

이전에 vpn 서버 구축할 때 생성한 가상 허브에 접속합니다. 가상 허브 목록에서 마우스로 두 번 클릭하거나 해당하는 가상 허브를 한번 클릭 후 하단의 버튼을 클릭해도 됩니다.

 

 

SecureNAT 설정 버튼을 클릭합니다.

 

SecureNAT을 비활성 상태로 전환합니다.

 

 

SecureNAT 상태를 비활성 상태로 전환합니다.

 

위의 이미지 상에서는 SecureNAT상태가 지금 현재 비활성 상태로 되어 있는데요~

저는 이미 로컬 브릿지를 설정했기 때문에 위의 이미지의 버튼 상태가 달라도 문제없습니다.

 

Exit 버튼 눌러 빠져나옵니다.

 

 

3) 로컬 브리지 설정

 

[ 서버 매니저에서 로컬 브릿지 설정 버튼을 클릭 ]

 

 

위의 이미지처럼 차례대로 설정합니다. (빨간 네모 참조)

 

  • 첫 번째 : 이미 설정한 가상 허브 선택

  • 두 번째 : Bridge with New Tap Device 선택

  • 세 번째 : LAN Adapter : eth0 확인

  • 네 번째 : New Tap Device Name : 적절한 장치의 이름 입력 ( 예, sevpn ) 

 

[ 화살표 처럼 Operating 상태가 되어야 정상입니다. ]

 

위의 빨간색 네모처럼 Status 항목에서 Operating 인지 확인합니다.

 

Exit 버튼을 클릭해서 빠져나옵니다.

Exit 버튼을 다시 한번 클릭해서 서버 매니저 창을 닫습니다.

 

 

4) SSH 접속 & 서버 업데이트

 

SSH를 사용하여 본인의 리눅스 서버에 접속합니다.

저는 PuTTY로 접속했습니다. 사용방법은 구글에 조금만 검색해 보시면 많은 자료들이 있습니다.

 

나중에 시간을 내어서 PuTTY 사용법을 포스팅하도록 하겠습니다.

 

 

[ SSH 접속 화면 ]

 

 

작업의 편의를 위해서 루트 계정으로 전환

~$ sudo su                      

 

 

패키지 업데이트 확인 및 설치를 진행

Y 클릭, 만약 분홍색 화면이 나오면 Keep~~~~ 에서 엔터

 

apt update && apt upgrade      

 

 

5) DHCP 서버 설치

# apt install -y isc-dhcp-server        

 

 

 

6) DHCP 서버 설정 파일 편집

# nano /etc/dhcp/dhcpd.conf    

 

 

편집 내용 : 

subnet 192.168.151.0 netmask 255.255.255.0 { 
    authoritative; 
    option domain-name "vpn.kafe.io"; 
    option domain-name-servers 8.8.8.8, 8.8.4.4; 
    option routers 192.168.151.254; 
    option subnet-mask 255.255.255.0; 
    range 192.168.151.100 192.168.151.199; 
}

 

위의 빨간 글씨에서 만약 도메인을 사용하지 않으신다면 

앞에 #을 사용해서 주석 처리하셔도 됩니다.

 

subnet 192.168.151.0 netmask 255.255.255.0 { 
    authoritative; 
    option domain-name "vpn.kafe.io"; 
    option domain-name-servers 8.8.8.8, 8.8.4.4; 
    option routers 192.168.151.254; 
    option subnet-mask 255.255.255.0; 
    range 192.168.151.100 192.168.151.199; 
}

 

 

 

 

위와 같이 편집합니다. 

편집 후 Ctrl + o (저장),  Ctrl + x로 빠져나옵니다. 

 

 

7) DHCP 서버 인터페이스 지정 

( 방금전 3단계에서 자신이 만든 Tap 명칭을 입력해야 합니다.)

 

nano /etc/default/isc-dhcp-server    

 

INTERFACESv4="tap_sevpn" 
INTERFACESv6=""

 

편집 후 Ctrl + o (저장),  Ctrl + x로 빠져나옵니다. 

 

 

 

8) NAT FORWARD 허용 및 확인

 

가상의 네트워크를 AWS의 네트워크와 연결 (포워딩) 해줍니다. 

# sh -c "echo 'net.ipv4.ip_forward = 1' >> /etc/sysctl.conf"        

 

아래 명령으로 잘 적용됐는지 확인

# sysctl -p        

 

 

[ 위의 이미지 처럼 나오면 정상 ]

 

 

9) VPN 트래픽이 AWS로 전달되도록 설정 반드시 순서대로 해야 합니다! 

 

  • 첫 번째 명령 : TAP 디바이스에 아이피 할당
  • 두 번째 명령 : iptables 규칙을 지정 ( 마지막 ip 주의, 아래 이미지 참조 )
  • 세 번째 명령 : dhcp 서버 재시작 (dhcp 서버를 재시작해야만 아이피 할당이 적용됨)

 

# /sbin/ifconfig tap_sevpn 192.168.151.254 netmask 255.255.255.0
# iptables -t nat -A POSTROUTING -s 192.168.151.0/24 -j SNAT --to-source 100.200.7.30
# systemctl restart isc-dhcp-server

 

[ iptables 규칙을 지정할 때 사용할 ip 위치 ]

 

 

위의 이미지처럼 명령어 입력 후 아무런 오류 및 기타 메시지가 나오지 않아야 정상입니다.

만약 오류가 나온다면 정신 건강상 처음부터 밀고 다시 하시는 게 좋을 겁니다.  (제 경험..ㅠㅠ)

 

그럼 접속해 볼까요?

 

예전의 SecureNAT 방식으로 접속하면...

 

[ Softether SecureNAT에서 지정한 임의의 ip로 접속 ] 

거의 대부분 위의 아이피 대역으로 접속이 될겁니다.

 

 

지금 방금 설정한 로컬 브리지 방식으로 접속하면?

 

 

DHCP 서버로 vpn 서버에 접속한다는 내용의 창이 뜨고 잠시 기다리면...

 

 

위와 같은 창이 뜹니다.  위의 설정대로 마쳤다면 위의 IP가 떠야 합니다.

그렇지 않다면 무엇인가~ 어디선가~ 문제가 있는 것입니다.

 

다시 점검을 하시거나, 다시 처음부터 설정하시기 바랍니다.

 

 

10) 재부팅을 위한 스크립트 파일 수정 ( 선택사항 )

 

위의 설정으로 그대로 사용하셔도 큰 문제는 없습니다.

다만 vpn을 사용하는 도중에 속도가 느려진다든지, 중국에서 해당 아이피 대역폭을 막아 버린다든지 여하튼 기타 사유로 서버를 재부팅해야 할 때가 있습니다.

 

그럼 위의 9단계를 다시 거쳐야 합니다. 

 

만약 재부팅 후에도 여전히 작동되게 하려면, 기존 Softether VPN 서버를 구축할 때 생성했던 스크립트를 수정하는 작업이 필요합니다.

 

 

 

■ 참고 : 아마존 라이트 세일 VPS - SoftEther VPN 리눅스 우분투 서버 구축하기

 

 

다시 SSH를 사용하여 본인의 리눅스 서버에 접속합니다.

 

작업의 편의를 위해서 루트 계정으로 전환

~$ sudo su                      

 

 

스크립트 파일 수정 모드

 

# nano /etc/init.d/vpnserver         

 

 

#!/bin/sh
### BEGIN INIT INFO
# Provides:          vpnserver
# Required-Start:    $remote_fs $syslog
# Required-Stop:     $remote_fs $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Start daemon at boot time
# Description:       Enable Softether by daemon.
### END INIT INFO
DAEMON=/usr/local/vpnserver/vpnserver
LOCK=/var/lock/subsys/vpnserver
test -x $DAEMON || exit 0
case "$1" in
start)
$DAEMON start
touch $LOCK
sleep 5
/sbin/ifconfig tap_sevpn 192.168.151.254 netmask 255.255.255.0
iptables -t nat -A POSTROUTING -s 192.168.151.0/24 -j SNAT --to-source 100.200.7.30
systemctl restart isc-dhcp-server
;;
stop)
$DAEMON stop
rm $LOCK
;;
restart)
$DAEMON stop
sleep 3
$DAEMON start
sleep 5
/sbin/ifconfig tap_sevpn 192.168.151.254 netmask 255.255.255.0
iptables -t nat -A POSTROUTING -s 192.168.151.0/24 -j SNAT --to-source 100.200.7.30
systemctl restart isc-dhcp-server
;;
*)
echo "Usage: $0 {start|stop|restart}"
exit 1
esac
exit 0

 

위의 스크립트 소스 중에서..

 

iptables -t nat -A POSTROUTING -s 192.168.151.0/24 -j SNAT --to-source 100.200.7.30

 

위의 마지막 ip를 주의하세요 ( 빨간색 글자 )

6단계를 참조하셔서 본인의 서버에 해당되는 프라이빗 아이피로 수정하셔야 합니다.

 

Ctrl + o (저장), Ctrl + X로 빠져나옵니다.

 

 

 

11) 스크립트를 다시 읽어오고, 정한 iptables 규칙을 저장 & 다시 불러옵니다.

 

# systemctl daemon-reload          

# netfilter-persistent save        

# netfilter-persistent reload      

 

만약 오류가 난다면 

 

# apt update        

# apt install iptables-persistent  

 

서버를 재부팅해도 iptables 규칙이 계속 저장되게 하는 iptables-persistent를 설치후 다시 시도!

 

 

 

12) 서버 재부팅 후 확인

 

 

위의 이미지를 참고하셔서 재부팅 후 잠시 기다리세요. ( 인내심을 가지고... )

"SSH를 사용하여 연결" 버튼을 클릭해서 리눅스 서버에 접속이 되면 재부팅이 완료된 겁니다.

 

다시 vpn 서버에 접속해서....

 

 

 

위의 메시지가 나오면 접속이 된 겁니다.

 

ip 확인하는 사이트에 가셔서 확인해 보세요.

예) https://whatismyipaddress.com/

 

What Is My IP Address? IP Address Tools and More

IP address lookup, location, proxy detection, email tracing, IP hiding tips, blacklist check, speed test, and forums. Find, get, and show my IP address.

whatismyipaddress.com

 

위의 이미지대로 자신의 아이피가 나온다면 성공한 겁니다!!

그럼 즐거운 VPN 생활이 되시기 바랍니다.

 

 

Softether VPN Server 구축 소감 :

저는 중국 생활을 시작한 지 올해로 11년째입니다. 중국에 와서 제일 불편한 것 중 하나가 인터넷이라는 것을 중국에 한번 만이라도 와보신 분들은 아마 격하게 공감하실 겁니다.

 

예전에는 그럭저럭 무료 VPN 어플로 버텨오다가 2017년쯤 본격적으로 VPN 서버 구축을 공부하기 시작했습니다. 서버에 대해서 잘 아는 전문가들이 보기에는 무척 간단해 보일 수도 있지만 리눅스라는 말을 들어보기만 한 저로서는 진입 단계가 무척 높아만 보였습니다.

 

국내에 레퍼런스가 제한적이어서 구글링을 정말 많이 했고, 서버를 생성하고 삭제한 것만 해도 아마 100번 이상은 되었을 겁니다.  벽에 부딪혀서 막막할 때마다 오기가 생겨서 더 열심히 연구한 것 같습니다. 이 과정을 반복해서 도전할 때마다 성취욕이 활활 타오르는 제 자신을 발견하게 되더군요..

 

2017년 8월쯤 최초로 Softether VPN을 접하고 나서 2017년 11월 17일에 처음으로 이곳에 포스팅을 한 후 1년 6개월이 지났네요~ 돌이켜 보니 이곳 블로그 VPN 카테고리에 제법 많은 포스트가 쌓였네요~ 흐뭇합니다.

 

■ 푸우시로의 지식창고 VPN 카테고리 : https://blog.poohsiro.com/category/IT/VPN%20 

 

특히 Softether VPN 로컬 브릿지가 무척 어려웠습니다. 포기했다가도 다시 도전을 반복해 며칠 전 재부팅 후 자동 접속까지 모두 성공한 후 저도 모르게 두 팔을 벌려 환호성을 질렀습니다. 

 

혹시 VPN 설정에 어려움을 느끼시는 분들은 언제든 연락 주세요~

또는 VPN 설정에 도저히 시간을 투자하시기 어려운 분들은 구축을 도와드릴 수 있습니다.

 

제가 개인적으로 운영하는 서버 운영비용을 마련하기 위한 것이니, 부담 갖지 마시고 연락 주시기 바랍니다.

 

■ 연락 방법 1 :  푸우시로의 지식창고 "공지사항"  
■ 연락 방법 2 :  카카오톡 https://open.kakao.com/o/sgrefW5b

 

VPN 상담실

#vpn #okcyber

open.kakao.com

 

VPN 계정 필요하신 분들 계신가요?

안녕하세요. 푸우시로 입니다. 지금 현재 제가 운영 중인 푸우시로의 지식창고 블로그의 유입 중에 VPN 관련 검색어로 들어오시는 분들이 꽤 많이 계십니다. 혹시라도.. VPN 서버를 구축하고 싶은데 어렵다고 느껴..

blog.poohsiro.com

  

이 글을 공유하기

댓글

Designed by JB FACTORY