
tailscale이란?
WireGuard 프로토콜을 기반으로 한 메시(mesh) VPN 서비스이다.
전통적인 VPN과 가장 다른 점은 "중앙 서버를 거치지 않고" 디바이스끼리 직접 암호화된 연결을 맺는다는 것이다.
일반 VPN(예: 회사 VPN)은 모든 트래픽이 게이트웨이 서버 한 곳을 통과하다보니 그래서 속도 병목이 생기고, 서버가 다운되면 다 끊기는 문제가 있다.
Tailscale은 대신 각 디바이스에 가상의 사설 IP(예: 100.x.x.x 대역)를 부여하고, 디바이스들끼리 직접 peer-to-peer로 연결한다. 마치 모든 기기가 같은 LAN 안에 있는 것처럼 동작하게 된다.
중앙 서버는 "Coordination Server"라는 게 있긴 하지만 이 서버는 트래픽을 중계하는 게 아니라, 누가 누구랑 연결할 수 있는지에 대한 키 교환과 라우팅 정보만 관리한다.
주요 사용 사례:
- 집에 있는 NAS나 홈서버에 외부에서 안전하게 접속
- 여러 클라우드 서버를 한 네트워크처럼 묶기
- 소규모 팀의 사내망 대용 (포트포워딩, 방화벽 설정 없이)
- 출장 중 회사 리소스 접근
또, 설정이 굉장히 쉽다는 장점이 있다.
각 디바이스에 클라이언트 설치하고 Google/Microsoft/GitHub 계정으로 로그인하면 끝이다. 포트 열 필요도, 공인 IP 받을 필요도 없다.
개인 사용은 보통 무료 플랜으로 충분하고(디바이스 100대까지), 팀/기업용 유료 플랜이 따로 있다.
1. tailscale 설치 / 기존 로그인 해제
나의 경우엔 맥북에서 우분투 pc에 ssh로 연결, 접속을 하고자 한 상황이다.
우분투 tailescale 설치
curl -fsSL https://tailscale.com/install.sh | sh
만약 기존에 tailscale이 설치 되어 있다면 기존 로그인을 해제해야 한다.
기존 우분투 pc에 이미 tailscale이 설치 되어 있어서 로그아웃 부터 해 주었다.
sudo tailscale logout
로그아웃 되었는지 확인
tailscale status
→ Logged out 같은 메세지가 뜨면 정상

→ tailscale logout은 이 우분투의 연결만 끊는다.
이전 계정 자체나 그 계정에 등록된 다른 기기들엔 영향 없지만 그 계정 소유자가 자기 관리 페이지에서 우분투를 완전히 제거하지 않으면 "비활성 기기"로 남아있을 수 있다.
2. tailscale 계정 만들기
Tailscale | Secure Connectivity for AI, IoT & Multi-Cloud
The connectivity platform for devs, IT, and security teams. Zero Trust identity-based access that deploys in minutes and scales to every resource. Start free.
tailscale.com
위 링크에 접속하면 우측 상단에서 “Get started” 또는 “sign up” 클릭 → 가입하고 나면 빈 admin 페이지가 보일 것이다.
아직 연결 된 기기가 없기 때문에 빈 박스로 보인다.

3. 우분투에서 본인 계정으로 tailscale 로그인
우분투 터미널에서
sudo tailscale up
하면
To authenticate, visit:
https://login.tailscale.com/a/xxxxxxxxxxxx
이렇게 메세지가 뜰 것이다.
이 URL을 연결하고자 하는 pc 브라우저에서 열면 된다. 이때 위에서 만든 본인 계정으로 로그인된 상태여야 한다.
그러면 URL dufaus “Connes [device name] to your tailnet?” 같은 페이지가 뜨고 이 때 “Connect” 클릭 후 성공하면 우분투 터미널에서 자동으로 프롬프트가 돌아오게 된다.

tailscale status
→ 이후 본인 기기가 제대로 연결되었는지 확인하고
tailscale ip -4
→ 우분투 pc에서 할당된 IP를 확인할 수 있다.
4. 연결하고자 하는 pc에 tailscale 설치
맥북 기준 터미널에서 설치 가능하다.
brew install --cask tailscale
없으면 https://tailscale.com/download/mac 에서 다운로드 하면 된다.
5. pc에서 같은 계정으로 tailscale 로그인
설치 후 메뉴바 Tailscale 아이콘 클릭 → "Log in..." → 2단계에서 만든 본인 계정으로 로그인하면된다.
이때 vpn 허용을 해 줘야만 기기가 등록이 된다.

→ 우분투 pc와 맥북 모두 등록 된 걸 확인할 수 있다.
6. 맥북 터미널에서 우분투 ssh 접속
ssh username@IP
→ 우분투의 username과 tailscale ip -4 로 확인한 ip를 입력 해 주면 ssh로 우분투 터미널에 접속이 된다.

이렇게 설정 해 두면 두 기기가 어느 네트워크에 있든 상관없이 서로 연결된다!!
7. vscode ssh 연결
vscode에서 ctrl+shift+p를 눌러서 Remote - SSH: Editing Configuration Files 해당 파일에 내용을 추가 해 주면 vscode에서 해당 우분투를 연결해서 사용할 수 있다.
Host ubuntu-pc
HostName IP
User username
이렇게 입력 해 주면 vscoded에서도 ssh로 연결해서 작업이 가능하다.