Tailscale (dasbor Gateway)
OpenClaw dapat mengonfigurasi otomatis Tailscale Serve (tailnet) atau Funnel (publik) untuk dasbor Gateway dan port WebSocket. Ini menjaga Gateway tetap terikat ke loopback sementara Tailscale menyediakan HTTPS, perutean, dan (untuk Serve) header identitas.Mode
serve: Serve khusus tailnet melaluitailscale serve. Gateway tetap di127.0.0.1.funnel: HTTPS publik melaluitailscale funnel. OpenClaw memerlukan kata sandi bersama.off: Default (tanpa otomatisasi Tailscale).
Auth
Setelgateway.auth.mode untuk mengontrol handshake:
none(khusus private ingress)token(default saatOPENCLAW_GATEWAY_TOKENdisetel)password(rahasia bersama melaluiOPENCLAW_GATEWAY_PASSWORDatau konfigurasi)trusted-proxy(reverse proxy sadar identitas; lihat Auth Trusted Proxy)
tailscale.mode = "serve" dan gateway.auth.allowTailscale bernilai true,
auth UI Kontrol/WebSocket dapat menggunakan header identitas Tailscale
(tailscale-user-login) tanpa memberikan token/kata sandi. OpenClaw memverifikasi
identitas tersebut dengan me-resolve alamat x-forwarded-for melalui daemon Tailscale lokal
(tailscale whois) dan mencocokkannya dengan header sebelum menerimanya.
OpenClaw hanya memperlakukan request sebagai Serve saat request tiba dari loopback dengan
header x-forwarded-for, x-forwarded-proto, dan x-forwarded-host milik
Tailscale.
Endpoint HTTP API (misalnya /v1/*, /tools/invoke, dan /api/channels/*)
tidak menggunakan auth header identitas Tailscale. Endpoint ini tetap mengikuti
mode auth HTTP normal gateway: auth shared-secret secara default, atau penyiapan
trusted-proxy / private-ingress none yang sengaja dikonfigurasi.
Alur tanpa token ini mengasumsikan host gateway tepercaya. Jika kode lokal yang tidak tepercaya
mungkin berjalan di host yang sama, nonaktifkan gateway.auth.allowTailscale dan minta
auth token/kata sandi sebagai gantinya.
Untuk mewajibkan kredensial shared-secret eksplisit, setel gateway.auth.allowTailscale: false
dan gunakan gateway.auth.mode: "token" atau "password".
Contoh konfigurasi
Hanya tailnet (Serve)
https://<magicdns>/ (atau gateway.controlUi.basePath yang Anda konfigurasi)
Hanya tailnet (bind ke IP Tailnet)
Gunakan ini saat Anda ingin Gateway mendengarkan langsung pada IP Tailnet (tanpa Serve/Funnel).- UI Kontrol:
http://<tailscale-ip>:18789/ - WebSocket:
ws://<tailscale-ip>:18789
http://127.0.0.1:18789) tidak akan berfungsi dalam mode ini.
Internet publik (Funnel + kata sandi bersama)
OPENCLAW_GATEWAY_PASSWORD daripada mengomit kata sandi ke disk.
Contoh CLI
Catatan
- Tailscale Serve/Funnel memerlukan CLI
tailscaleterpasang dan sudah login. tailscale.mode: "funnel"menolak untuk mulai kecuali mode auth adalahpassworduntuk menghindari eksposur publik.- Setel
gateway.tailscale.resetOnExitjika Anda ingin OpenClaw membatalkan konfigurasitailscale serveatautailscale funnelsaat shutdown. gateway.bind: "tailnet"adalah bind Tailnet langsung (tanpa HTTPS, tanpa Serve/Funnel).gateway.bind: "auto"lebih memilih loopback; gunakantailnetjika Anda menginginkan khusus Tailnet.- Serve/Funnel hanya mengekspos UI kontrol Gateway + WS. Node terhubung melalui endpoint Gateway WS yang sama, jadi Serve dapat berfungsi untuk akses node.
Kontrol browser (Gateway jarak jauh + browser lokal)
Jika Anda menjalankan Gateway di satu mesin tetapi ingin mengendalikan browser di mesin lain, jalankan host node di mesin browser dan pertahankan keduanya dalam tailnet yang sama. Gateway akan mem-proxy aksi browser ke node; tidak diperlukan server kontrol atau URL Serve terpisah. Hindari Funnel untuk kontrol browser; perlakukan pairing node seperti akses operator.Prasyarat + batasan Tailscale
- Serve memerlukan HTTPS diaktifkan untuk tailnet Anda; CLI akan meminta jika belum ada.
- Serve menyisipkan header identitas Tailscale; Funnel tidak.
- Funnel memerlukan Tailscale v1.38.3+, MagicDNS, HTTPS diaktifkan, dan atribut node funnel.
- Funnel hanya mendukung port
443,8443, dan10000melalui TLS. - Funnel di macOS memerlukan varian aplikasi Tailscale open-source.
Pelajari lebih lanjut
- Ikhtisar Tailscale Serve: https://tailscale.com/kb/1312/serve
- Perintah
tailscale serve: https://tailscale.com/kb/1242/tailscale-serve - Ikhtisar Tailscale Funnel: https://tailscale.com/kb/1223/tailscale-funnel
- Perintah
tailscale funnel: https://tailscale.com/kb/1311/tailscale-funnel