중국/IT

중국에서 나만의 vpn 서버 구축하기-6(v2ray)

jaynruri 2023. 4. 6. 13:19

v2ray를 설치해서 기본형(?)인 vmess 라는 proxy를 설치했다.
물론 접속해서 사용하는데 큰 문제는 없으나, 
vmess 방식이 잘 막힌다고하여 다른 방식 중의 하나인 vless + xtls 방식으로도 설치를 해봤다.
vless는 이전 vmess 프로토콜의 업데이트 버전이라고 하니... 겸사겸사 

모바일에서는 아무런 문제가 없으나 노트북에서는 접속에 문제가 있어서... 
애매하게 남은 상황이기는 하지만 ㅎㅎ 기록에 남겨본다.

​우선 vless + xtls 방식을 이용하려면
aws 나의 리전의 고정IP를 지정하는 도메인 이름이 필요하다.
이전에는 많은 분들이 freenom.com 이라는 사이트에서 무료 도메인을 받았다고 하지만, 현재 신규 발급은 중단되어 있고, 차선책으로 www.duckdns.org 사이트를 통해서 무료로 도메인을 발급 받을 수 있다.

 

Duck DNS

Duck DNS free dynamic DNS hosted on AWS news: login with Reddit is no more - legal request support us: become a Patreon

www.duckdns.org

 

duckdns 사이트 사용 방법은 추후에 작성하기로 하고, 우선 서버 셋팅법부터 작성한다.

 


1) vps 서버에 로그인 후 서버 업데이트를 실시한다.

apt update && apt upgrade -y

 

2) curl 과 socat 을 설치한다.

apt install curl socat -y


3) 무료 SSL 인증서를 위한 Acme script 를 설치

curl https://get.acme.sh | sh


4) 기본 공급자를  Let's Encrypt 로 설정

~/.acme.sh/acme.sh --set-default-ca --server letsencrypt


5) SSL 인증서를 위한 계정 등록(명령어 중 xxxx@xxxx.com 부분은 본인의 실제 이메일 주소를 입력해야 함) 

~/.acme.sh/acme.sh --register-account -m xxxx@xxxx.com

 

6) SSL 인증서 받기
   (명령어 중 host.mydomain.com 부분은 본인의 실제 호스트 주소를 입력해야 함) 
   위에서 언급한 www.duckdns.org 에서 발급받은 주소를 입력하면 된다.

~/.acme.sh/acme.sh --issue -d host.mydomain.com --standalone


잠시 후 해당 스크립트가 종료되고, 인증서와 키가 저장되어 있는 주소를 아래와 같이 확인할 수 있다.

Your cert is in: /root/.acme.sh/host.mydomain.com/host.mydomain.com.cer
Your cert key is in: /root/.acme.sh/host.mydomain.com/host.mydomain.com.key
The intermediate CA cert is in: /root/.acme.sh/host.mydomain.com/ca.cer
And the full chain certs is there: /root/.acme.sh/host.mydomain.com/fullchain.cer


하지만 이 주소는 임시 저장 위치라서 우리가 사용할 수 없기에, 내 서버의 영구적인 곳에 설치를 해줘야 한다.

 

7) 발급받은 SSL 인증서를 v2ray가 사용할 곳에 설치하기
    (명령어 중 host.mydomain.com 부분은 본인의 실제 호스트 주소를 입력해야 함)

~/.acme.sh/acme.sh --installcert -d host.mydomain.com --key-file /root/private.key --fullchain-file /root/cert.crt

이렇게 확인할 수 있다.

 

8) x-ui 설치하기

bash <(curl -Ls https://raw.githubusercontent.com/vaxilu/x-ui/master/install.sh)

 

9) x-ui 로그인하기(아무것도 수정하지 않은 상태로 접속하는 것이 중요하다)

aws의 고정ip:54321


아이디와 비밀번호는 역시 기본형인 admin, admin 이다.

 

10) https 접속을 위한 보안 설정
     왼쪽의 메뉴 중 面板设置 로 들어간 후 첫 화면인 面板配置에서 관련된 사항을 업데이트 한다.
     面板证书公钥文件路径 부분에는 증명서 위치를,  面板证书密钥文件路径 부분에는 키 위치를 입력해준다.
    즉, 面板证书公钥文件路径 부분에는 /root/cert.crt 로 입력을 하고,
    面板证书密钥文件路径 부분에는 /root/private.key 로 입력을 한다.

 


11) x-ui 재실행 및 재접속
     우선 puTTy에서 x-ui를 재실행한다.

x-ui restart

 

그리고 나의 도메인 주소를 이용하여 접속을 해본다.​

******.duckdns.org:54321

 

성공적으로 로그인했다면 이제 面板设置 - 用户设置로 들어가서 아이디와 비밀번호를 수정해준다.
원래 아이디(admin), 원래 비밀번호(admin), 새 아이디, 새 비밀번호를 입력 후 파란색 버튼(修改)를 눌러준다.

 

12) 사용자 추가
      이제 거의 다 왔다.
      vless + xtls 사용자를 추가하면 된다. 
     入站列表 메뉴 중 파란색 + 버튼을 눌러준다.

그리고 아래와 같이 입력하면 된다.
중요한 사항만 적어보면
Protocol 항목은 vless 
端口(포트)는 443
flow 항목은 xtls-rprx-direct (flow 항목은 아래의 xtls를 on 해줘야 나타난다)
tls 항목은 Off
xtls 항목은 On
域名 항목은 나의 도메인 이름 ***.mydomain.com
公钥文件路径 항목은 /root/cert.crt
密钥文件路径 항목은  /root/private.key
로 입력 후 만들면 된다.

 

이후 생성되는 QR코드로 다양한 클라이언트를 통해서 사용하면 된다.

노트북 접속 문제는 여전히 해결되지는 않고 있지만... 언젠가는 또 해결이 되리라 믿고 ㅎ

728x90