Proxmox LXC를 이용해서 Wireguard VPN 서버 구축하기.(Feat. Wg-easy)
안녕하세요. 달소입니다.
이번글은 Proxmox에서 VPN서버를 가벼운 LXC 컨테이너를 이용해서 구축하는방법입니다.
LXC 자체가 VM 보다 가볍기 때문에 VPN서버용도로 만들기에 딱이라고 생각합니다 ㅎㅎ
물론 관리편의성을 위해 docker + wg-easy를 이용해서 설치할것이기때문에 차근차근 따라와주시면 되겠습니다.
전체적인 순서는
LXC 생성(Ubuntu 22) + Docker 설치 + wg-easy(Wireguard GUI 버전) 으로 진행예정입니다.
LXC 컨테이너 생성하기
먼저 사용할 Ubuntu 22 템플릿을 다운로드 받아주겠습니다.
LXC 컨테이너는 경량화된 리눅스로 템플릿이 별도로 있기때문에 사용하고 계신 스토리지의 CT 템플릿 -> 템플릿으로 갑니다.
보면 꽤나 많은 템플릿을 기본적으로 지원하는것을 확인할 수 있습니다
다운로드가 완료되면 컨테이너를 생성하겠습니다.
lxc 컨테이너는 보안상 권한이 없는 컨테이너로 만들어주셔야 안전합니다.
그리고 템플릿은 아까 만든 템플릿으로!
CPU랑 메모리는 원하는대로 주시고 네트워크 IP할당도 여기서해줍니다.
DNS는 언제나 8.8.8.8
생성이 완료되면 콘솔을 실행시켜주면됩니다.
확실히 리소스를 어마어마하게 적게먹는군요
Docker 설치하기
경량화 LXC이다보니 apt update && apt upgrade -y 후에 curl 명려어도 설치해주셔야합니다.
apt install curl
https://svrforum.com/os/231671
+ docker-compose도 설치해주세요.(apt install docker-compose)
Wireguard 설치하기(Feat. WG-Easy)
사용할 이미지는 wireguard web ui 버전인 WG-Easy 입니다.
https://svrforum.com/svr/43830
저는 기존에 생성해놓은 데이터가있기때문에 해당 디렉터리를 옮겨서 진행했습니다.
docker-compose.yml 파일을 수정 후 컨테이너를 생성합니다.
컨테이너 생성 후 ip:51521 포트로 접근해보시면 관리콘솔이 뜨시고
포트포워딩만 하시면 정상적으로 사용이 가능하실겁니다!
전 기존에 사용하던 데이터들도 그대로 마이그레이션했기때문에 데이터도 그대로입니다.
포트포워딩은 51820 -> ip:51820으로 해주시고 변경하려면 docker-compose의 내용을 수정해주시면됩니다
한줄짜리 pivpn 고고
curl -L https://install.pivpn.io | bash
pivpn으로 설정했어요
pivpn이 커맨드지만 쉬운거 같아요
이건 open vpn 인거같은데 맞을까요??
ㅎㅎ 개인적으로 wireguard vpn이 너무 편해서...
둘다 지원합니다. 저는 wireguard 선택해서 설치 했고요
wireguard가 성능이 월등하죠
오호 그렇군요... GUI가 아니라면 클라이언트 추가시에도 편리할까요??
네
pivpn add 클라이언트명 하시면 돼요
오오 엄청좋군요! 나중에 한번 테스트해봐야겠습니다 ㅎㅎ
LXC를 정확히 이해 못해서 그런데 ㅠ
LXC가 VM을 완전히 대체하는 효율좋은 신기술 같은건가요?
개념자체가 다릅니다.
LXC 는 기본 Host 커널을 공유하는 경량화 VM이고
VM은 아예 격리된 가상머신이라고보시면됩니다.
똑같이 설치해서 도커 컨테이너까지 띄웠는데 왜 관리콘솔에 접속이 안될까요?..
51821 포트로 방화벽 오픈은 되어있으신건가요?
netstat -lntp로 51821이 listen인지 확인하시면됩니다
혹시 이런글볼때마다 쉘이 되게 예쁘게 꾸며져있는데 어떻게 하신건지 말씀해주실ㄹ수 있나요?
https://blog.dalso.org/article/bashshell-setting
요거 참조하시면 되실거같습니다~
cmt alert