티스토리 뷰
목차
제가 있는 곳은 외부로부터 다양한 디지털 공격으로 인해 내부 내트워크에서 사설망을 사용합니다. 따라서 편하게 사용하고 있던 윈도우 RDP가 막혀.. 다른 방법을 찾던 중 물리적 장비 없이 운영할 수 있는 Lightsail과 무료 VPN 프로그램인 Softether VPN을 알게되어 둘의 조합을 공부하게 되었습니다. 결론적으로는 언제 어디서든 RDP를 쉽고 편하게 사용하고 있습니다!
목차
1. AWS Lightsail 서버 생성하기
먼저 AWS Lightsail에 접속하셔서 가입한 후, 서버를 생성합니다.
인스턴스 생성을 클릭합니다.
인스턴스 지역을 선택합니다.
사용하는 목적에 따라 적당한 지역을 선택합니다.
인스턴스 운영체제를 선택합니다.
Softether VPN Server는 리눅스를 지원하므로 Ubuntu를 사용합니다.
여기서는 다른 운영체제를 다루지 않겠습니다(사실 안해봐서 할줄 몰라요...).
인스턴스 사양을 선택합니다.
인스턴스 사양에 따라 다양한 플랜이 있지만, 이용자와 예상 트래픽에 따라 플랜을 선택하면 됩니다.
전송(트래픽)은 기본적으로 데이터를 주고 받는 부분을 함께 생각해야 되므로 플랜에 나와있는 용량의 절반을 사용한다고 생각하시면 편할거에요.
다 했으면 생성을 클릭합니다!
짧은 시간을 기다리면 인스턴스가 실행됩니다.
2. Lightsail에 Softether VPN Server 설치하기
Lightsail은 실물이 없는 가상서버입니다. 따라서 온라인 상태로 서버에 접속하여 Softether VPN Server를 설치하고 설정해야 합니다.
SSH 연결하기
SSH는 Secure Shell의 약어로, 호스트에 원격으로 접속하기 위해 사용하는 보안 프로토콜입니다. 초록색 네모 부분의 버튼을 클릭하거나, 인스턴스에 들어가서 SSH에 연결합니다.
아래와 같은 창이 뜨면 SSH 연결에 성공한 것입니다.
먼저 서버의 모든 프로그램을 최신 버전으로 업데이트하기 위해 아래 명령어를 입력하고 실행합니다.
sudo apt update -y
업데이트 적용하기
아래의 명령어를 입력하고 실행합니다.
sudo apt upgrade -y
엄청난 업데이트를 진행합니다...
중간에 무슨 업데이트를 진행할건지 물어보는데, Ubuntu 20.04 버전에서 업데이트를 진행하면 SSH 연결이 안되는 오류가 발생하므로 업데이트를 설치하지 않고 지나갑니다.
필수요소 설치
Softether VPN Server를 설치하기 위해 필요한 소프트웨어를 사전에 설치해줍니다. 아래 명령어를 입력해서 설치합니다.
sudo apt install -y build-essential
Softether VPN Server 설치파일 다운로드
Softether VPN Server를 설치하기 위해 설치파일 주소를 여기에서 확인 후, SSH에서 다운로드 받습니다.
파일은 다음과 같이 검색합니다.
wget 명령어를 통해서 파일을 다운로드 받으면 되고, 파일 주소는 파일명 우클릭 후 링크 복사를 통해 확인이 가능합니다(아래 주소는 Ver 4.41, Build 9787, rtm).
다음 명령어를 통해 압축을 풀어줍니다.
tar zxvf softether-vpnserver-v4.41-9787-rtm-2023.03.14-linux-x64-64bit.tar.gz
Softether VPN Server 소스 컴파일
압축 푼 파일을 빌드하기 위해 아래 명령어를 통해 폴더를 이동하고 빌드를 진행합니다.
cd vpnserver
make
컴파일 산출물 이동하기
산출물을 이동하기 위해 루트권한을 획득하고 디렉토리를 이동합니다. 아래 명령어를 순서대로 진행합니다.
sudo su
cd ..
mv vpnserver /usr/local/
ls -al /usr/local/vpnserver
다음과 같이 파일 목록이 나오면 이동된 것입니다!
권한 설정
아래 명령어를 통해 vpnserver에 권한 설정을 해줍니다.
cd /usr/local/vpnserver
chmod 600 *
chmod 700 vpncmd
chmod 700 vpnserver
DAEMON 설정
Softether VPN Server가 꺼지지 않고 계속 작동할 수 있도록 아래 명령어를 통해 설정을 진행합니다.
cat > /etc/init.d/vpnserver
#!/bin/sh
### BEGIN INIT INFO
# Provides: vpnserver
# Required-Start: $network $remote_fs
# Required-Stop: $network $remote_fs
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: SoftEther VPN Server
### 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
;;
stop)
$DAEMON stop
rm $LOCK
;;
restart)
$DAEMON stop
sleep 3
$DAEMON start
;;
status)
[ -f $LOCK ] && echo exit 0 || exit 1
;;
*)
echo "Usage: $0 {start|stop|restart}"
exit 1
esac
exit 0
모든 내용을 입력한 후에는 CTRL + C 를 눌러 저장합니다.
이후에 권한 등록, 서비스 등록 후 서비스를 실행합니다.
chmod 755 /etc/init.d/vpnserver
systemctl enable vpnserver
systemctl start vpnserver
아무런 오류가 뜨지 않으면 실행이 성공한 것입니다!
Lightsail 방화벽 설정
Softether VPN Server에 접속하기 위해 먼저 TCP 9999 방화벽을 열어줍니다.
여기까지 Lightsail에 Softether VPN Server 설치를 완료하였습니다!