Proxmox 설치 후 Tailscale 설정
Openstack은 Cloud로써 굉장히 기능이 강력하였다
하지만 소규모이기 때문에 좀 더 가벼운 리소스로 Cloud를 구성하고 싶었다
그래서 기억을 더듬던 중 예전에 Youtube에서 보았던 댓글을 힌트 삼아 Proxmox를 설정해 보았다
외부에서 접속하기 위해pfSense + NPM도 추가해 보았지만 HTTP와 HTTPS에 특화되었기 때문에 ❌
Tailscale을 발견하고 route를 활용하여 외부 접속도 성공 할 수 있었다 🔆
Proxmox 설치를 먼저 진행
Proxmox VE Helper의 Talescale 설치 명령어 검색

PVE Shell에 접속

Ubuntu LXC 템플릿 검색
pveam available | grep ubuntu

Ubuntu LXC 템플릿 다운로드
pveam download local ubuntu-22.04-standard_22.04-1_amd64.tar.zst
Ubuntu 컨테이너 생성
General : Unprivileged, Nesting 체크

Template : ubuntu 선택

Disks : hdd 선택

CPU

Memory

Network : 우선 DHCP로 지정 (추후 변경)

DNS

Ubuntu 컨테이너 Console 접속

IP 정보 조회
#eth0의 IP를 조회
ip a

IP 고정
Gateway는 공유기에서 제공하는 IP를 지정한다


컨테이너 재부팅 후 업데이트
apt update && upgrade -y
apt install curl -y
Tailscale 다운로드 명령어 조회

컨테이너 Console에 접속하여 Talescale 설치 명령어 실행
curl -fsSL https://tailscale.com/install.sh | sh
Forward 허용
net.ipv4.ip_forward, net.ipv6.conf.all.forwarding 주석 해제
nano /etc/sysctl.conf

컨테이너 Shutdown
shutdown now
PVE Shell 접속

Unprivileged의 호스트 경로 접근허용
nano /etc/pve/local/lxc/컨테이너아이디.conf
lxc.cgroup2.devices.allow: c 10:200 rwm
lxc.mount.entry: /dev/net/tun dev/net/tun none bind,create=file

컨테이너 Start 후 Console에서 Tailscale 구동
tailscale up --advertise-routes=172.30.1.0/24 --advertise-exit-node
#등록용 URL이 나옴
https://login.tailscale.com/a/임의아이디
외부에서 사용할 PC에서 Tailscale 가입 후 등록용 URL로 이동
이 과정에서 현재 PC도 등록을 해야 한다
그래야 위에서 생성한 컨테이너를 VPN처럼 사용 할 수 있다
Tailscale admin console - Edit route settings

Subnet routes와 Exit node를 체크한다

외부에서 사용할 PC의 exit nodes를 컨테이너로 지정해준다

기타 명령어
# 등록 상태
tailscale status
# 컨테이너의 tailscale 구동 중지
tailscale down
# ping
tailscale ping {Tailscale에서 발급해준 IP}
참고URL
- https://tailscale.com/kb/1019/subnets#enable-ip-forwarding
- https://tailscale.com/kb/1019/subnets#advertise-subnet-routes
- https://tailscale.com/kb/1130/lxc-unprivileged?q=unpri
- https://www.youtube.com/watch?v=QJzjJozAYJo