Security - Neotask by Neotask Documentation | Neotask
Keamanan
Gambaran Umum
Open Claw dirancang dengan arsitektur yang mengutamakan keamanan. Gateway mengikat ke localhost secara default, semua data sensitif dienkripsi saat istirahat, dan eksekusi agen dapat di-sandbox dalam kontainer terisolasi.
Keamanan Jaringan
Loopback Secara Default
Gateway hanya mendengarkan pada 127.0.0.1 (localhost) kecuali Anda secara eksplisit mengubah mode binding. Tidak ada eksposur jaringan eksternal secara default.
Autentikasi
Semua koneksi WebSocket memerlukan autentikasi:
Token auth — Token bearer (UUID atau string kustom)
Password auth — Kata sandi yang di-hash dengan bcrypt
Trusted proxy — Header yang telah diautentikasi dari reverse proxy
Local trust — Koneksi loopback dipercaya secara implisitKeamanan Akses Jarak Jauh
Untuk akses jarak jauh, pendekatan yang direkomendasikan adalah Tailscale VPN atau SSH tunneling — jangan pernah mengekspos Gateway langsung ke internet.
Pemasangan Perangkat
Cara Kerja Pemasangan
Setiap klien yang terhubung ke Gateway harus dipasangkan:
Perangkat menyajikan identitasnya (sidik jari + kunci publik)
Gateway mengeluarkan tantangan pemasangan (nonce)
Perangkat menandatangani nonce dengan kunci privatnya
Anda menyetujui perangkat melalui UI
Gateway mengeluarkan token perangkat untuk koneksi di masa mendatangModel Kepercayaan
Perangkat lokal (loopback) disetujui otomatis untuk kenyamanan
Perangkat non-lokal memerlukan persetujuan eksplisit
Token perangkat disimpan secara lokal dan digunakan kembali saat menghubungkan kembali
Perangkat dapat dicabut kapan sajaEnkripsi
Data Saat Istirahat
AES-256-GCM — Semua token, rahasia, dan kunci API dienkripsi saat istirahat
Kunci yang berasal dari mesin — Kunci enkripsi yang berasal melalui scrypt dari identitas perangkat
Tanpa penyimpanan teks biasa — Token tidak pernah disimpan dalam teks biasaData Dalam Transit
TLS — HTTPS untuk komunikasi API
WSS — WebSocket Secure untuk koneksi Gateway (saat menggunakan Tailscale Serve atau reverse proxy)
Penandatanganan HMAC — Integritas permintaan dengan nonce dan cap waktuSandboxing
Isolasi Berbasis Docker
Eksekusi perintah agen dapat di-sandbox dalam kontainer Docker:
Profil per-agen — Setiap agen dapat memiliki konfigurasi sandbox sendiri
Batas sumber daya — Batas CPU, memori, dan timeout yang dapat dikonfigurasi
Isolasi jaringan — Kontainer dapat diisolasi dari jaringan
Pembatasan sistem file — Agen hanya mengakses workspace mereka
Gambar kustom — Gunakan gambar yang sudah dibangun dengan alat tertentu yang diinstalCakupan Sandbox
| Cakupan | Deskripsi |
|-------|-------------|
| Per-sesi | Kontainer segar untuk setiap sesi |
| Per-agen | Kontainer persisten per agen |
| Bersama | Kontainer bersama di seluruh agen |
Akses Workspace
Agen yang di-sandbox dapat mengakses direktori workspace mereka (dipasang ke dalam kontainer) tetapi tidak dapat mengakses sistem file host di luar workspace mereka.
Persetujuan Eksekusi
Kendalikan perintah apa yang dapat dieksekusi agen pada node dan host Gateway:
Mode
| Mode | Deskripsi |
|------|-------------|
| Allowlist | Hanya perintah yang telah disetujui sebelumnya yang dieksekusi |
| Ask | Perintah yang tidak dikenal meminta persetujuan pengguna |
| Full | Tanpa pembatasan (gunakan dengan hati-hati) |
Konfigurasi Per-Node
Setiap node (macOS, host headless) memiliki konfigurasi persetujuan eksekusi sendiri, disimpan secara lokal. Anda dapat mengizinkan binari tertentu (misalnya, /usr/bin/docker, /usr/local/bin/terraform) sambil memblokir semua yang lainnya.
Mode Elevasi
Beberapa operasi memerlukan menjalankan di host Gateway secara langsung (bukan dalam sandbox). Mode elevated adalah:
Dibatasi oleh izin eksplisit dalam konfigurasi agen
Hanya tersedia di host Gateway
Dinonaktifkan secara default
Dapat diaudit melalui loggingAudit Keamanan
Audit keamanan bawaan memeriksa:
Izin file konfigurasi (harus 600)
Izin file sesi
Versi Node.js (patch keamanan)
Deteksi rahasia teks biasa
Validasi daftar putih plugin
Audit antarmuka jaringan yang terbuka
Kelengkapan konfigurasi authAudit dapat memperbaiki banyak masalah secara otomatis ketika diberi izin.
Praktik Terbaik
Pertahankan Gateway di loopback — Gunakan Tailscale atau SSH untuk akses jarak jauh
Aktifkan sandboxing — Jalankan perintah agen dalam kontainer Docker
Gunakan daftar putih eksekusi — Batasi perintah yang dapat dijalankan agen pada node
Atur token auth — Selalu konfigurasikan token auth, bahkan untuk loopback
Tinjau izin agen — Gunakan profil alat minimal di mana memungkinkan
Perbarui Open Claw secara rutin — Pembaruan mencakup patch keamanan
Audit secara teratur — Jalankan audit keamanan untuk menemukan konfigurasi yang salah
Batasi pemuatan plugin — Hanya instal plugin tepercaya
View full documentation