OpenClaw 하드 샌드박스 환경 구성하기: WSL + Docker로 안전하게 실행하기

2026. 5. 9. 15:48·AI

OpenClaw가 나온 지는 조금 됐지만, 보안 이슈가 걱정돼 아직 적극적으로 사용하지는 않고 있었다.

그런데 최근 떠오른 아이디어를 실행에 옮기려면 OpenClaw가 필요했다. 그래서 최대한 안전하게 작업하기 위해 OpenClaw 샌드박스 환경을 구성해보기로 했다.

작업 환경

  • Windows
  • WSL
  • PowerShell
  • OpenClaw 2026.5.7 (eeef486)
  • Docker Desktop

OpenClaw에서 하드 샌드박스 환경을 구성하려면 Docker를 사용해야 한다.

먼저 Docker Desktop에서 WSL 연동을 활성화한다.

'Docker Desktop → Settings → Resources → WSL Integration'

여기서 'Enable integration with my default WSL distro'를 체크하고, 아래 목록에서 사용할 Ubuntu 배포판도 활성화한다. 이 설정을 켜야 WSL 환경에서 docker 명령어를 사용할 수 있다.

설정을 변경한 뒤 'Apply & Restart'를 클릭한다.

기존에 WSL에서 docker를 못 찾았는데 위 설정을 통해 docker를 사용할 수 있게 됐다.

mkoui@huipark:~$ docker ps
The command 'docker' could not be found in this WSL 2 distro.
mkoui@huipark:~$ docker ps
CONTAINER ID   IMAGE     COMMAND   CREATED   STATUS    PORTS     NAMES

그리고 OpenClaw 설정을 수정한다

vim ~/.openclaw/openclaw.json

작업할 워크스페이스를 미리 만들어놓고 해당 경로로 defaults 워크스페이스를 변경해 주고 sandbox 옵션을 추가해 준다.

  "agents": {
    "defaults": {
      "workspace": "/home/mkoui/openClaw",
      "models": {
        "openai-codex/gpt-5.5": {}
      },
      "model": {
        "primary": "openai-codex/gpt-5.5"
      },
      "sandbox": {
        "mode": "all",
        "backend": "docker",
        "workspaceAccess": "none",
        "docker": {
          "binds": ["/home/mkoui/openClaw:/home/sandbox/openClaw:rw"]
        }
      }
    }
  },

아래 명령어를 실행해 주면 도커에 openclaw 샌드박스 이미지가 생성이 된다.

docker build -t openclaw-sandbox:bookworm-slim - <<'DOCKERFILE'
FROM debian:bookworm-slim
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update && apt-get install -y --no-install-recommends \
  bash ca-certificates curl git jq python3 ripgrep \
  && rm -rf /var/lib/apt/lists/*
RUN useradd --create-home --shell /bin/bash sandbox
USER sandbox
WORKDIR /home/sandbox
CMD ["sleep", "infinity"]
DOCKERFILE

 

다만 위 명령어는 작업 환경마다 다를 수 있어 해당 명령어로 확인 후 실행한다

sed -n '385,399p' /usr/lib/node_modules/openclaw/docs/gateway/sandboxing.md

그러면 Docker Image가 하나 추가로 생성된 걸 볼 수 있다.

openclaw gateway restart
이제 테스트 해보자
텔레그램에서 /new 명령어를 실행 해 새 세션을 열어주고
[2026-05-09 [토] 오후 3:09] 희태 박: /home/sandbox/openClaw/test.tx 파일 만들어봐

[2026-05-09 [토] 오후 3:09] threads Agent: 만들었어요: /home/sandbox/openClaw/test.tx

[2026-05-09 [토] 오후 3:09] 희태 박: /home/mkoui/outside.txt 파일 생성을 시도하고 성공/실패를 알려줘.

[2026-05-09 [토] 오후 3:10] threads Agent: 실패했어요.
이 세션은 샌드박스 안에서 실행 중이라 /home/mkoui/outside.txt 경로가 없어서 생성할 수 없었습니다:
Directory nonexistent

아주 잘 작동한다.

그런데 브라우저 검색이 안 되는 문제가 생겼다.

[2026-05-09 [토] 오후 3:10] 희태 박: 지금 한국에서 핫한 이슈 하나 검색해서 알려줘
[2026-05-09 [토] 오후 3:10] threads Agent: 지금 바로 확인해 볼게요. 샌드박스에서 웹 접근이 되는지 먼저 가볍게 조회해 봅니다.
[2026-05-09 [토] 오후 3:10] threads Agent: 검색을 시도했는데, 현재 샌드박스에서 DNS 오류로 웹 접속이 안 됩니다.

오류: Temporary failure in name resolution

그래서 지금 “한국에서 핫한 이슈”를 실시간으로 확인해 드리긴 어렵습니다. 웹 접근이 되는 세션에서 다시 시도하거나, 원하시면 제가 확인 가능한 범위 안에서 최근까지 알려진 이슈 후보를 정리해 드릴게요.

Docker 컨테이너에서 웹 검색이 되지 않는 문제가 있었다.


원인은 OpenClaw 샌드박스 컨테이너가 기본적으로 외부 네트워크 접근이 막힌 상태로 실행되었기 때문이다.


웹 검색이 필요하다면 OpenClaw 설정 파일에서 Docker sandbox 설정에 network 옵션을 추가한다.

"docker": {
  "network": "bridge",
  "binds": ["/home/mkoui/openClaw:/home/sandbox/openClaw:rw"]
}


network: "bridge"는 샌드박스 컨테이너가 외부 네트워크에 접근할 수 있게 하는 설정이다.


이 설정을 추가하면 웹 검색이나 curl 요청은 가능해지지만, 네트워크까지 완전히 차단된 샌드박스는 아니게 된다. 파일시스템 격리는 유지되지만, 네트워크 접근은 허용되는 상태다.


따라서 웹 검색이 필요 없는 작업이라면 network 옵션을 주지 않는 편이 더 안전하다.

 

설정을 바꾼 뒤에는 기존 OpenClaw 샌드박스 컨테이너를 삭제하고 Gateway를 재시작한다.

docker rm -f <container name>
openclaw gateway restart

 

[2026-05-09 [토] 오후 3:17] 희태 박: 지금 한국에서 핫한 이슈 하나 검색해서 알려줘

[2026-05-09 [토] 오후 3:20] threads Agent: 참고로 이 작업환경 초기 부트스트랩은 아직 완료 전이지만, 뉴스 검색/요약은 안전하게 진행했어요.

지금 한국 쪽에서 뜨는 이슈 하나는 **‘호르무즈 해협 한국 선박 나무호 화재·피격설’**이에요.

• 한국 선박 나무호가 호르무즈 인근에서 화재를 겪었고,
• 일부에서 “이란 공격/피격 가능성”을 제기하면서 논란이 커졌습니다.
• 트럼프가 관련 질문을 받자 원인 답변 대신 **“나는 한국을 사랑한다”**고 말해 국내외 기사들이 많이 다루는 중입니다.
• 핵심은 아직 화재 원인과 피격 여부가 명확히 확인되지 않았다는 점이에요.

검색 기준: 오늘자 Google News 한국어 RSS 기준.

👏 👏 👏 👏 👏 👏 👏

모두 정상적으로 작동한다.

저작자표시 비영리 변경금지 (새창열림)

'AI' 카테고리의 다른 글

AI Agent 쓰다 보면 메인 세션이 더러워진다!  (0) 2026.05.13
디자인이 어려운 개발자를 위한 AI 디자인 시스템 활용기  (0) 2026.05.08
'AI' 카테고리의 다른 글
  • AI Agent 쓰다 보면 메인 세션이 더러워진다!
  • 디자인이 어려운 개발자를 위한 AI 디자인 시스템 활용기
huipark
huipark
  • huipark
    밝을희 클태
    huipark
  • 전체
    오늘
    어제
    • 분류 전체보기 (145)
      • AI (3)
      • 트러블 슈팅 (5)
      • 회고록 (2)
      • 사이드 프로젝트 (10)
        • 공연 정보 사이트 (5)
        • 도라에몽 잡기 [React] (5)
      • KEYNUT 프로젝트 (18)
      • PongWorld 프로젝트 (7)
      • 마모리(My Memory) 프로젝트 (20)
      • JavaScript (19)
      • react native (8)
      • React (7)
      • AWS (3)
      • 개발 환경 구성 (7)
      • MySql (1)
      • Docker (1)
      • 프로그래머스 (2)
      • 백준 (9)
      • NextJS (4)
      • npm (2)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    AWS Access Key
    react native CLI
    리액트
    react native picker
    Next.js
    React
    Project
    GIT
    리엑트 네이티브 아이콘
    js
    react native 개발
    AWS
    PongWorld
    react native 세팅
    react native
    에러
    fire base
    firebase 라이브러리
    error
    s3 upload
    문자열 대소문자
    aws bucket 정책
    babel.config.js
    리액트 네이티브
    img upload
    Access Key 생성
    리액트 네이티브 에러
    백준
    react native font
    문자열 대소문자 구별
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.6
huipark
OpenClaw 하드 샌드박스 환경 구성하기: WSL + Docker로 안전하게 실행하기
상단으로

티스토리툴바