샌드박스 개요
OpenClaw의 샌드박스 시스템은 AI가 생성한 코드에 안전한 실행 환경을 제공합니다. 코드는 격리된 컨테이너에서 실행되어 악성 코드가 호스트 시스템에 영향을 미치는 것을 방지합니다.
샌드박스 활성화
openclaw sandbox enable
사전 요구 사항: Docker(권장) 또는 gVisor, 충분한 시스템 리소스
샌드박스 상태
openclaw sandbox status
샌드박스 설정
{
"sandbox": {
"enabled": true,
"engine": "docker",
"image": "openclaw/sandbox:latest",
"limits": {
"memory": "256m",
"cpu": "1.0",
"timeout": 30000,
"maxOutputSize": "1mb",
"maxFileSize": "10mb",
"networkAccess": false
},
"runtimes": ["node", "python", "bash"],
"blockedModules": ["os", "subprocess", "shutil"],
"tempDir": "/tmp/openclaw-sandbox"
}
}
수동 코드 실행
openclaw sandbox exec --lang python "print('Hello, World!')"
openclaw sandbox exec --lang node "console.log('Hello!')"
openclaw sandbox exec --lang python --file script.py
샌드박스 인스턴스 관리
openclaw sandbox restart
openclaw sandbox stop
openclaw sandbox cleanup
openclaw sandbox update
보안 설정
기본적으로 네트워크 접근이 차단됩니다. 위험한 시스템 호출과 모듈도 차단할 수 있습니다:
{
"sandbox": {
"blockedSyscalls": ["fork", "exec", "socket"],
"blockedModules": {
"python": ["os", "subprocess", "socket", "ctypes"],
"node": ["child_process", "fs", "net", "cluster"]
}
}
}
채널에 코드 실행 활성화
{
"channels": {
"discord-dev": {
"tools": ["code_exec"],
"sandbox": {
"allowedLanguages": ["python", "node"],
"maxExecutionsPerMinute": 5
}
}
}
}
정리
샌드박스 시스템은 OpenClaw 코드 실행 기능의 보안 기반입니다. 엄격한 리소스 제한, 네트워크 격리, 모듈 블랙리스트를 통해 AI가 생성한 코드가 호스트 시스템에 해를 끼치지 않도록 보장합니다.