본문으로 건너뛰기

Tailscale 원격 개발

Tailscale을 활용한 원격 개발 환경 설정 가이드입니다.

📝 초안 (Draft)

이 문서는 검토 중입니다. 내용이 변경될 수 있습니다.

개요​

Tailscale은 WireGuard 기반의 메시 VPN으로, 안전하고 간편한 원격 개발 환경을 제공합니다.

사용 시나리오​

시나리오설명
원격 서버 접속로컬 PC → 개발 서버
팀 협업팀원 간 서버 공유
홈 서버 접속외부 → 홈 서버
Docker 서비스 접근원격 Docker 컨테이너 접근

설치​

Linux​

# Ubuntu/Debian
curl -fsSL https://tailscale.com/install.sh | sh

# 시작
sudo tailscale up

macOS​

# Homebrew
brew install tailscale

# 또는 App Store에서 설치

Windows​

공식 사이트에서 다운로드: https://tailscale.com/download

기본 설정​

1. 로그인​

# 브라우저로 인증
sudo tailscale up

# 또는 인증 키 사용
sudo tailscale up --authkey=<key>

2. 상태 확인​

# 연결 상태
tailscale status

# IP 확인
tailscale ip -4

3. SSH 접속​

# Tailscale IP로 SSH
ssh [email protected]

# 또는 MagicDNS 사용
ssh user@hostname

개발 환경 설정​

Docker 서비스 접근​

# 원격 서버의 Docker 서비스에 접근
# Tailscale IP:PORT로 접속

# 예: 원격 PostgreSQL
psql -h 100.x.x.x -p 5432 -U postgres

# 예: 원격 웹 서버
curl http://100.x.x.x:8080

VS Code Remote SSH​

// ~/.ssh/config
Host dev-server
HostName 100.x.x.x # Tailscale IP
User your-username
ForwardAgent yes

VS Code에서 Remote-SSH 확장으로 연결

Claude Code 원격 실행​

# 원격 서버에서 Claude Code 실행
ssh dev-server
cd /path/to/project
claude

MagicDNS​

활성화​

Admin Console에서 DNS → MagicDNS 활성화

사용​

# hostname으로 접속 (IP 대신)
ssh myserver

# 전체 도메인
ssh myserver.tailnet-name.ts.net

보안 설정​

ACL (Access Control Lists)​

// Tailscale Admin Console → Access Controls
{
"acls": [
{
"action": "accept",
"src": ["group:developers"],
"dst": ["tag:dev-server:*"]
}
]
}

태그 활용​

# 서버에 태그 부여 (Admin Console)
tag:dev-server
tag:production

유용한 명령어​

# 상태 확인
tailscale status

# 네트워크 진단
tailscale netcheck

# 로그아웃
tailscale logout

# 서비스 재시작
sudo systemctl restart tailscaled

일반적인 문제​

연결 안 됨​

# 방화벽 확인
sudo tailscale netcheck

# 서비스 재시작
sudo systemctl restart tailscaled

느린 연결​

# Direct connection 확인
tailscale status
# "direct" vs "relay" 확인

관련 문서​