Tailscale

Summary

설치와 로그인만으로 기기들 간 사설 네트워크(tailnet)를 구성하는 VPN 도구. IP 설정·방화벽 규칙 없이 작동하며, Serve(내부 전용)·Funnel(인터넷 공개) 두 모드로 로컬 서비스를 외부에 안전하게 노출한다.

설치와 로그인만으로 기기들 간 사설 네트워크(tailnet)를 구성하는 VPN 도구. IP 설정·방화벽 규칙 없이 작동하며, Serve(내부 전용)·Funnel(인터넷 공개) 두 모드로 로컬 서비스를 외부에 안전하게 노출한다.

개요

Tailscale은 WireGuard 프로토콜 기반 VPN 서비스다. 기기들 사이에 **사설 네트워크(tailnet)**를 형성하여, 마치 같은 LAN에 있는 것처럼 접근 가능하게 한다.

에이전트 운영 맥락에서 Tailscale의 핵심 역할은 loopback(로컬호스트) 바인딩된 gateway-architecture를 외부에서 안전하게 접근 가능하게 하는 것이다. (출처: bbojjak-openclaw-gateway-architecture-lesson14)

두 가지 모드

Serve — 내부 전용 접근

tailnet에 속한 기기들만 접근 가능.

  • Tailscale 인증 헤더로 신분증 자동 확인
  • 별도 비밀번호 불필요 — tailnet 소속 = 신뢰 증명
  • 팀원의 기기 간 안전한 사내망 구성에 적합
팀원 기기 (tailnet 내)
    ↓ Tailscale Serve
Mac mini Gateway (로컬)

Funnel — 인터넷 전체 공개

tailnet 외부 (인터넷 전체)에서 접근 가능한 공개 HTTPS URL 생성.

  • 비밀번호 필수 — 없으면 Funnel 시작 자체를 거부
  • TLS 인증서 자동 관리 (HTTPS 기본)
  • 외부 서비스 웹훅 수신(채널톡, 포털 등)에 활용
인터넷 (n8n 클라우드 등)
    ↓ HTTPS POST
Tailscale Funnel (공개 URL)
    ↓ HTTPS 터널
Mac mini Gateway (로컬호스트)

Gateway는 인터넷에 직접 노출되지 않음 — Tailscale이 안전한 배달 경로 역할.

주요 사실

  • 설정 자동화: openclaw.json에서 tailscale.mode: "funnel" 설정 시 Gateway 시작과 함께 Funnel 자동 실행. 재시작 후에도 유지. (출처: bbojjak-openclaw-gateway-architecture-lesson14)
  • --bg 함정: 수동 tailscale funnel --bg 실행은 Mac mini 재시작 후 사라짐 → openclaw.json 설정으로 해결.
  • 포트 불일치 주의: Funnel 설정 포트와 실제 Gateway 포트가 다르면 웹훅이 허공에 사라짐. 설정 확인 필수.

보안 계층에서의 위치

gateway-architecture의 보안 4중 잠금에서 1번 레이어:

  1. Tailscale Funnel: HTTPS(TLS 자동관리) — 전송 암호화
  2. Gateway: 인증 토큰
  3. 에이전트 ID 제한
  4. 세션 키 프리픽스 제한

관련 개념

소스