결국… Tailscale을 마지막 VPN(?)으로 삼기로하였습니다.
예전에도 소개해드린적이 있는데 기기수가 무료계정의 기기수가 20 -> 100개로 늘어나고 다양한 기능들이 추가로 많이 생겼습니다.
VPN의 니즈는 사실 간단합니다.
외부에서 내부로 통하는 포트를 열지않고 내부망에 붙어서 작업이나 긴급대응을 하는 용도인데요.
이를 위해서 예전에는 보통 OpenVPN, 현재는 Wireguard를 이용한 VPN을 많이들 사용하셨으리라 생각합니다.
보통은 아래와같은 구조(?) 로 운영하시리라 생각합니다.
아무래도 서버를 직업 운영하다보니 자체 호스팅 가능한걸 찾고, 이를 통해서 플랫폼에 종속되지않는 삶(?)을 원해서 Wireguard 이후에도 2FA가 가능한, 좀더 보안성이 있고 관리하기 편한 Netbird까지 힘들게 구축했었습니다.
Netbird의 경우 SSO인증부터 각 노드별 ACL, Routing 까지 모두 가능한 All in One으로 잘 쓰고있긴 했는데.. 하나를 더 추가하려고하니 결국 이것도 아웃이였습니다.
그 하나가 바로 원격지 서버구축인데요.
제가 생각하는 원격지 서버구축은 흔히들 말하는 데이터센터 이중화 입니다.
보통 기업들이 IDC를 여러군데 사용을 하고 A센터가 죽으면 B센터로 트래픽을 돌리는등을 하는데 저도 마찬가지로 운영하는 서비스도 많아지고 사용자분들이 많아지다보니 데이터의 소중함을 좀 더 느끼고있고 이를 대체할 수 있는 방안을 찾다보니 이방법이 최선이 아닐까 싶었습니다.
아래와같은 형식도 비슷합니다 ㅎ 오프사이트 백업이지만 저는 여기서 운영까지 함께해보려고합니다
물론 남는 장비(오드로이드)도 있으니,, 금상첨화지요 ㅎㅎ..
원격지 서버구축을 하고 VPN을 묶으려고하니 결국 하나로쓰자니 죽으면 2번째 서버가 접근이안되고, 나누자니 관리가 어려운 현상이 있었습니다.
결론적으로, Tailscale의 경우 모든게 지원이 됩니다.
- Wireguard 기반의 VPN
- 원격지에서 내부 접속용.(NAT를 통한 노드간 통신 지원)
- Site to Site 접속용. (노드에 Tailscale 클라이언트만 설치하면 노드간 통신 가능)
- 기본 OS 외 다양한 OS 지원 가능. (Opnsense, UDM, Synology 등등)
- 서브넷 라우팅 가능(기기 한대에 설치하면 그 기기를 통한 내부망 접속 가능)
- SSO 인증 지원(VPN 연결시 google 로그인으로 인증)
- 전용 UI로 손쉬운 기기 관리. (but, ACL은 json으로 조금 복잡..)
- 번거롭게 포트 열필요없음, NAT, UPnP를 통한 노드간 통신 가능.
이외에 다양한 기능 지원, Tailscale SSH, Magic DNS 등을 지원합니다.
여기서 무료플랜의 경우 최대 100대까지 지원이 되는데,, 대부분의 기능을 다 지원합니다.
돈을 좀 더낸다고하더라도 충분히 사용할 가치가 있어보이기도 하구요.
최종적으로 구상하고있는 그림은 아래와 같은 형태입니다.
아래 시스템들을 하나로 묶고 PC나 모바일이나 한곳에서 Tailscale 클라이언트 접근만하면 모두 통신이 되는,, 아주 굿이죠?
Home-wifi(UDM) – Opnsense(서비스용) – Oracle Cloud(모니터링용) – DR용(본가 시스템)
Tailscale에 대한 소개는 아래 글에서 자세히 다루고 있으니 참고해보시면 좋을듯 하고 다음 글부터는 Tailscale 기능을 하나씩 쪼개서 다뤄보도록 하겠습니다.