2026년 OpenClaw 게이트웨이 무노출 배포: Tailscale Serve/Funnel vs Cloudflare Tunnel(cloudflared) + 원격 Mac SSH 재현 절차·FAQ
공인 IP나 공유기 포트포워딩 없이도 헤드리스 Mac에서 OpenClaw 호환 HTTP 게이트웨이에 도달할 수 있습니다. 2026년 실무 패턴은 역방향 연결입니다: 서비스는 127.0.0.1(또는 사설 인터페이스)에 바인딩하고, TLS·신원은 Tailscale 또는 Cloudflare에서 종료합니다. 이 글에서는 Tailscale Serve, Tailscale Funnel, Cloudflare Tunnel(cloudflared)을 비교하고, 복붙 가능한 원격 Mac SSH 절차와 FAQ 매트릭스를 정리합니다.
한 줄 요약
결론: 클라이언트가 모두 tailnet에 있고 신원 모델을 최대한 좁히고 싶다면 Tailscale Serve를 우선합니다. 자사 도메인 아래 안정적인 공개 호스트명이 필요하고 Mac을 직접 노출하지 않으려면 Cloudflare Tunnel을 고려합니다. Tailscale 인프라를 경유한 공개 URL이 필요할 때만 Tailscale Funnel을 의도적으로 선택하고, 정책·가시성 트레이드오프를 수용합니다.
- 무노출: 게이트웨이 포트에 대한 가정용 라우터 인바운드 허용 규칙이 없음. Mac이 아웃바운드로 터널을 맺습니다.
- SSH 우선: 원격 접속을 먼저 강화한 뒤 HTTP 노출을 겹칩니다. OpenClaw 배포 맥락은 2026 OpenClaw 배포 트렌드: 독점 물리적 Mac mini에서 오프라인 우선 AI Employee 구축하기를 참고하세요.
- 로컬 바인딩: 게이트웨이는 루프백에서 돌리고 터널이 TLS를 종료하게 하면 광역 실수 노출을 줄입니다.
1. OpenClaw에 대한 "무노출"의 의미
OpenClaw 스타일 게이트웨이는 HTTP 서비스입니다. 여기서 무노출은 운영 정의입니다: 해당 서비스에 대해 Mac이 WAN 리스너를 열어두지 않는다는 뜻입니다. 대신 Tailscale 같은 인증 오버레이, 또는 Cloudflare로의 아웃바운드 터널로 연결됩니다. 인증된 사용자 또는 Cloudflare 엣지에는 여전히 노출이 있습니다—익명 인터넷 전역 포트 스캔이 데몬에 직접 닿지 않게 하는 것이 목표입니다.
독점 원격 Mac 노드에서 Runner·SSH 격리까지 함께 설계할 때는 GitLab Runner(macOS)와 GitHub Actions 자체 호스팅 Runner 비교 글의 동시성·SSH 계정 격리 축도 같이 보시면 운영 그림이 맞습니다.
2. Tailscale Serve vs Funnel(개념 구분)
Tailscale Serve는 tailnet에 서비스를 게시하고(tailnet 이름 기준 HTTPS 포함) 처리합니다. 팀·단말이 모두 Tailscale에 올라와 있을 때 기본 선택이며, ACL과 tailnet 신원으로 접근 제어가 단순합니다.
Tailscale Funnel은 선택한 HTTPS 경로를 Tailscale 인프라를 통해 공인 인터넷에 노출합니다. 공개 URL을 빨리 얻는 경로가 될 수 있지만, 의도적인 공개 인그레스로 취급해야 합니다. DNS 이름, 속도 제한, 업스트림 앱 인증 강도를 반드시 검토하세요.
3. Cloudflare Tunnel(cloudflared) 한 문단 요약
cloudflared는 Mac에서 Cloudflare로 아웃바운드 연결을 유지합니다. 방문자는 Cloudflare 엣지를 치고, 엣지→터널→localhost로 전달됩니다. 주택 회선 포트를 열지 않고 공개 호스트명, WAF·봇 도구, Access 정책을 쓸 수 있습니다. 트레이드오프는 Cloudflare 신뢰·과금 영역에 들어가며, 장애 시 엣지 오류와 로컬 서비스 로그를 상관해야 한다는 점입니다.
4. 의사결정 매트릭스(2026)
| 기준 | Tailscale Serve | Tailscale Funnel | Cloudflare Tunnel |
|---|---|---|---|
| URL에 누가 도달? | tailnet 구성원(ACL 제한) | 공인 인터넷(HTTPS) | 공인 인터넷(Cloudflare 도메인 호스트명) |
| 라우터 포트포워딩? | 불필요 | 불필요 | 불필요 |
| 신원 모델 | Tailscale 신원 + ACL | 공개 + 앱 인증(강해야 함) | Cloudflare Access/WAF + 앱 인증 |
| 적합한 경우 | 이미 Tailscale을 쓰는 조직·기기 | 빠른 공개 데모, Funnel 의미 수용 | 운영 호스트명, 엣지 정책, 멀티 리전 |
5. 재현 가능한 원격 Mac 기준선(SSH)
Serve/Funnel/cloudflared 전에 Mac(또는 SSH 세션)에서 다음을 확인합니다.
- 원격 로그인(SSH) 활성화: 시스템 설정 → 일반 → 공유. 키 기반 인증을 권장하고, 정책상 가능하면 관리자 계정의 패스워드 인증을 끕니다.
- 게이트웨이가 로컬에서만 리슨하는지:
lsof -nP -iTCP -sTCP:LISTEN | grep LISTEN로 OpenClaw HTTP 포트가127.0.0.1또는 LAN 전용인지 확인하고, WAN 면에서0.0.0.0에 열려 있지 않은지 봅니다. - 방화벽: SSH는 관리 출처만 허용. 터널이 인그레스를 담당한다면 앱 포트를 추가로 뚫지 않습니다.
- 영속성: 재부팅 후에도 터널이 살아 있도록
launchdplist 또는 선택한 프로세스 감독기를 사용합니다.
5.1 SSH 최소 점검
ssh -G user@host | egrep '^(user|hostname|port|identityfile)'— 의도한 호스트 별칭인지 확인합니다.- 다른 tailnet 기기에서:
curl -fsS http://100.x.y.z:PORT/health(플랜에 맞는 헬스 경로로 교체).
6. 경로 A — Tailscale Serve(tailnet 전용)
Mac에 Tailscale을 설치·노드 인증한 뒤 Serve로 tailnet HTTPS를 로컬 게이트웨이로 리버스 프록시합니다. CLI 플래그는 시기별로 변하므로 최신 Tailscale 문서의 tailscale serve를 따르세요. 개념적으로 tailnet DNS 이름을 http://127.0.0.1:<게이트웨이-포트>에 매핑합니다.
7. 경로 B — Tailscale Funnel(공인 HTTPS)
조직에서 공개 인그레스를 허용할 때만 Funnel을 켭니다. 노드에 Funnel을 활성화하고 HTTPS 프런트를 정의한 뒤 동일한 로컬 업스트림을 가리킵니다. 엣지가 인터넷 전체에 열리므로 API 키·OAuth·구성 요소 간 mTLS 등 애플리케이션 단 인증을 반드시 강제합니다.
8. 경로 C — Cloudflare Tunnel 빠른 흐름
- Cloudflare Zero Trust 대시보드에서 터널을 만들고 Mac에
cloudflared를 설치합니다. - 토큰 또는 자격 증명 파일로 커넥터를 실행하고, 대시보드에서 터널 상태가 정상인지 확인합니다.
- 공개 호스트명 라우트를
http://localhost:GATEWAY_PORT로 추가합니다(로컬에서 TLS를 직접 쓰는 경우는 드물며, 보통 Cloudflare에서 종료). - 업스트림에 닿기 전에 Access 정책이나 WAF 규칙을 겹칩니다.
9. FAQ — 증상 → 의심 원인 → 조치
| 증상 | 의심 | 조치 |
|---|---|---|
| Cloudflare 엣지 502 | 로컬 서비스 중단 또는 터널 설정 포트 오류 | Mac에서 curl -v http://127.0.0.1:PORT 확인 후 plist/명령 수정, cloudflared 재시작 |
| Tailscale Serve 인증서 오류 | 호스트명 불일치 또는 오래된 serve 설정 | 올바른 서비스 이름으로 serve 재실행, 문서에 따라 TLS 상태 정리 |
| Funnel은 됐다가 403 | ACL 또는 Funnel 정책 변경 | tailnet ACL JSON 감사, 노드 태그 확인, 관리 감사 로그 검토 |
| SSH는 되는데 터널만 실패 | 상위 네트워크의 아웃바운드 필터 또는 DNS | Mac에서 벤더 엔드포인트로 dig·HTTPS 연결 테스트 |
터널을 Mac mini에서 종료하기 좋은 이유
오버레이 터널과 로컬 HTTP 게이트웨이는 며칠씩 감시 없이 돌아가야 합니다. Apple Silicon Mac mini는 유휴 전력이 매우 낮고(대략 수 와트대), 무소음에 가깝고, launchd 장기 작업에 익숙한 macOS 안정성을 제공합니다. 같은 머신에서 SSH용 네이티브 Unix 셸, Homebrew 등으로 cloudflared를 올리기 쉽고, Gatekeeper·SIP·FileVault로 일반적인 상시 가동 Windows 박스보다 악성코드 표면이 작습니다.
옷장에 두고 가벼운 자동화 부하에서도 쓰로틀 걱정 없이 게이트웨이 스택을 돌리려면 Mac mini M4는 비용 대비 강한 앵커입니다. 아래에서 tailnet 규모와 트래픽에 맞는 구성을 확인해 보세요.