Security - Neotask by Neotask Documentation | Neotask
Bezpieczeństwo
Przegląd
Open Claw jest zaprojektowany z architekturą bezpieczeństwo-jako-priorytet. Brama domyślnie jest powiązana z localhost, wszystkie wrażliwe dane są szyfrowane w spoczynku, a wykonanie agentów może być izolowane w kontenerach.
Bezpieczeństwo sieci
Pętla zwrotna domyślnie
Brama nasłuchuje tylko na 127.0.0.1 (localhost), chyba że wyraźnie zmienisz tryb powiązania. Domyślnie brak zewnętrznej ekspozycji sieciowej.
Uwierzytelnianie
Wszystkie połączenia WebSocket wymagają uwierzytelniania:
Uwierzytelnianie tokenem -- Token bearer (UUID lub niestandardowy ciąg)
Uwierzytelnianie hasłem -- Haszowane hasło (bcrypt)
Zaufany proxy -- Wstępnie uwierzytelnione nagłówki od odwrotnych proxy
Lokalne zaufanie -- Połączenia z pętlą zwrotną są niejawnie zaufaneBezpieczeństwo zdalnego dostępu
Dla zdalnego dostępu zalecane podejście to VPN Tailscale lub tunelowanie SSH -- nigdy nie wystawiaj bramy bezpośrednio na internet.
Parowanie urządzeń
Jak działa parowanie
Każdy klient łączący się z bramą musi być sparowany:
Urządzenie prezentuje swoją tożsamość (odcisk + klucz publiczny)
Brama wydaje wyzwanie parowania (nonce)
Urządzenie podpisuje nonce swoim kluczem prywatnym
Zatwierdzasz urządzenie przez interfejs użytkownika
Brama wydaje token urządzenia dla przyszłych połączeńModel zaufania
Urządzenia lokalne (pętla zwrotna) są automatycznie zatwierdzane dla wygody
Urządzenia nielokalne wymagają wyraźnego zatwierdzenia
Tokeny urządzeń są przechowywane lokalnie i ponownie używane przy ponownym połączeniu
Urządzenia mogą być odwołane w dowolnym momencieSzyfrowanie
Dane w spoczynku
AES-256-GCM -- Wszystkie tokeny, sekrety i klucze API są szyfrowane w spoczynku
Klucze pochodne od maszyny -- Klucze szyfrowania wyprowadzone przez scrypt z tożsamości urządzenia
Brak przechowywania w postaci jawnej -- Tokeny nigdy nie są przechowywane w postaci jawnejDane w tranzycie
TLS -- HTTPS dla komunikacji API
WSS -- WebSocket Secure dla połączeń bramy (przy użyciu Tailscale Serve lub odwrotnego proxy)
Podpisywanie HMAC -- Integralność żądań z nonce i znacznikiem czasuSandboxing
Izolacja oparta na Docker
Wykonanie poleceń agenta może być izolowane w kontenerach Docker:
Profile per agent -- Każdy agent może mieć własną konfigurację piaskownicy
Limity zasobów -- Konfigurowalne limity procesora, pamięci i limitu czasu
Izolacja sieci -- Kontenery mogą być izolowane sieciowo
Ograniczenie systemu plików -- Agenci mają dostęp tylko do swojej przestrzeni roboczej
Niestandardowe obrazy -- Używaj wstępnie zbudowanych obrazów z zainstalowanymi konkretnymi narzędziamiZakresy piaskownicy
| Zakres | Opis |
|--------|------|
| Per sesja | Nowy kontener dla każdej sesji |
| Per agent | Trwały kontener per agent |
| Udostępniony | Wspólny kontener między agentami |
Dostęp do przestrzeni roboczej
Agenci z piaskownicą mogą uzyskać dostęp do swojego katalogu przestrzeni roboczej (zamontowanego do kontenera), ale nie mogą uzyskać dostępu do systemu plików hosta poza swoją przestrzenią roboczą.
Zatwierdzenia Exec
Kontroluj, jakie polecenia agenci mogą wykonywać na węzłach i hoście bramy:
Tryby
| Tryb | Opis |
|------|------|
| Lista dozwolonych | Wykonują się tylko wcześniej zatwierdzone polecenia |
| Pytaj | Nieznane polecenia wymagają zatwierdzenia użytkownika |
| Pełny | Brak ograniczeń (używaj ostrożnie) |
Konfiguracja per węzeł
Każdy węzeł (macOS, host headless) ma własną konfigurację zatwierdzania exec, przechowywaną lokalnie. Możesz zezwolić na konkretne binaria (np. /usr/bin/docker, /usr/local/bin/terraform), blokując wszystko inne.
Tryb podwyższony
Niektóre operacje wymagają bezpośredniego uruchamiania na hoście bramy (nie w piaskownicy). Tryb podwyższony to:
Bramkowany przez wyraźne uprawnienie w konfiguracji agenta
Dostępny tylko na hoście bramy
Domyślnie wyłączony
Audytowalny przez logowanieAudyt bezpieczeństwa
Wbudowany audyt bezpieczeństwa sprawdza:
Uprawnienia pliku konfiguracyjnego (powinny wynosić 600)
Uprawnienia pliku sesji
Wersja Node.js (poprawki bezpieczeństwa)
Wykrywanie sekretów w postaci jawnej
Walidacja listy dozwolonych wtyczek
Audyt otwartego interfejsu sieciowego
Kompletność konfiguracji uwierzytelnianiaAudyt może automatycznie naprawić wiele problemów po udzieleniu pozwolenia.
Najlepsze praktyki
Trzymaj bramę na pętli zwrotnej -- Używaj Tailscale lub SSH dla zdalnego dostępu
Włącz sandboxing -- Uruchamiaj polecenia agentów w kontenerach Docker
Używaj list dozwolonych exec -- Ogranicz, które polecenia agenci mogą uruchamiać na węzłach
Ustaw tokeny uwierzytelniające -- Zawsze konfiguruj uwierzytelnianie tokenem, nawet dla pętli zwrotnej
Przeglądaj uprawnienia agentów -- Używaj minimalnych profili narzędzi tam, gdzie to możliwe
Aktualizuj Open Claw -- Aktualizacje zawierają poprawki bezpieczeństwa
Regularnie audytuj -- Uruchamiaj audyty bezpieczeństwa, aby wykryć błędne konfiguracje
Ogranicz ładowanie wtyczek -- Instaluj tylko zaufane wtyczki
View full documentation