OpenClaw exec 승인·allowlist: 공유 렌털 Mac mini 2026 (VmMac)
플랫폼 보안 책임자는 VmMac 렌털 Apple Silicon Mac mini에 OpenClaw를 올릴 때 tools.exec를 “플러그인 하나”가 아니라 호스트급 루트 권한에 해당하는 잠금장치로 봐야 한다. exec 승인은 자율 에이전트와 셸 사이의 인터록으로, 보안 모드·ask·allowlist와 UI 가 없을 때의 보수적 askFallback을 엮는다. 본 2026 매트릭스는 launchd로 관리하는 게이트웨이에 그 개념을 홍콩·일본·한국·싱가포르·미국 운용으로 풀어 쓴다. 비밀·환경·LaunchAgent plist, 스테이징·프로덕션 launchd 분리, Node PATH를 함께 읽어 승인만으로 방어가 끝나지 않게 하라.
2026년 상류 논의는 승인 의미·타임아웃·full 취급을 조용히 바꿀 수 있다. 버전 핀, 릴리스 노트, 스테이징 미니에서 리허설 후에만 프로덕션으로. full을 열어 긴급 패치했다면 티켓·자동 만료를 붙여 잊힌 와일드카드가 돌아오는 것을 막는다.
VmMac은 SSH와 선택 VNC를 제공한다. 정책과 감사 흔적은 고객이 소유한다. 도움말로 접속 패턴을 확인하고, 프로덕션 에이전트를 쪼개 전용 호스트에 둘 때 가격을 본다. allowlist CODEOWNERS·변경 창·argv 검토 루을 한 장으로 두면 “누가 늦였는가”를 줄인다.
한 대 macOS의 공유 테넌트 위협 모델
한 사용자를 두 팀이 쓰거나, 별도 사용자라도 정책을 바꿀 수 있는 관리 그룹이 같다면 allowlist만으로는 손상된 의존성이 디스크의 정책을 덮는 것을 막을 수 없다. 층을 쌓아라: 비관리자 자동화 계정, 부트 시 체크섬으로 검증하는 git 기반·불변 정책 산출물, 환경마다 분리된 OpenClaw 상태 루트. 비상주 에이전트가 돌아가는 호스트에 둘 이상이 sudo를 쥐고 있으면 역할이 나뉠 때까지 비규격으로 표기하라. 렌털은 비용 압박으로 실험을 한 금속에 올리기 쉬우니, 그 유혹이 위협 모델 1행이다.
- 수치 알람: 비상주 레인에서 exec.approval.requested가 시간당 40을 넘기면 페이저—정책 오류이거나 프롬프트 폭주다.
- 수치 알람: 24시간 롤링에서 deny가 시도의 15%를 넘기면 승격 중단, 안전하게 자동화할 구멍이 있을 수 있다.
tools.exec.security: deny, allowlist, full
| 모드 | 뜻 | VmMac mini 적합 | 리스크 |
|---|---|---|---|
deny |
호스트 exec 전부 금지 | 읽기 전용 연구 봇 | 쉘 유출 0, 워크플로 끊길 수 있음 |
allowlist |
일치하는 명령만 | 공유·CI 인접 호스트 기본 | 주간 리뷰 필수 |
full |
관대한 실행 | 수명 짧은 샌드박스만 | 임시, 최장 72h TTL |
Ask, 프롬프트 폭주, headless launchd의 askFallback
ask는 위험 명령에 운영자 인지가 필요한지를 정한다. launchd에서 항상 ask에 UI·알람이 없으면 자해: 타임아웃까지 대기. 비상주는 on-miss+촘촘한 allowlist를, askFallback은 deny로. 7×24 지휘통신이 있을 때만 예외. 2026년 상류 강조처럼, 승인 해석이 바뀌는 릴리스는 OpenClaw 핀, 스테이징 리허설 후 프로덕션.
allowlist 형태: 접두, argv, 감사
좋은 allowlist는 인프라 코드 같다. /usr/bin·/bin·고정 도구, git에 있는 래퍼가 아니면 넓은 sh -c 금지. Homebrew로 경로가 바뀌면 표를 돌리고 설치·배포 가이드와 맞춘다. 세 층으로 나눌 것: 부트스트랩·빌드·배포. CODEOWNERS는 층마다. 사건 시 비부트스트랩 층부터 얼리고 full을 밀지 않는다. 48h 자동 만료 브레이크-글라스와 티켓. 잊힌 와일드카드 셸이 돌아오는 전형.
| 패턴 | 결론 | 이유 |
|---|---|---|
/opt/homebrew/bin/git 고정 서브커맨드 |
◎ 선호 | argv 감사 가능 |
bash -lc "curl … | sh" |
✗ 차단 | 하위 exec 면이 무한 |
/usr/local/bin/vm-* 래퍼 |
◎ 서명+버전 있으면 | 정책 변경 한점 |
launchd가 승인 UX를 바꾸는 이유
인터랙티브는 UI로 승인을 없앤다. launchd는 못한다. 짝을 이룬 운영 워크플로(승인 링크를 채널에)이나, 문서화된 전용 VNC 브레이크-글라스(VNC 강화와 같이)를 써라. 새벽에 아무도 안 보는 GUI 대기는 금지. 대기 백로그가 5건을 10분 넘기면 ML팀이 아니라 인프라를 호출한다. 24h 다중 에이전트는 고위험 도구를 deny가 더 엄한 호스트로, 읽기 위주 연구는 다른 라벨—한 plist에 섞이면 승인이 잡음이 된다. 거절 argv 접두는 포스트모템에 넣고 30일 안에 같은 누락을 반복하지 말라. 구조화 로그는 로그·로테 가이드에 맞춘다.
7단계 강화 런북
- host exec 를 부르는 도구를 나열, 필수/삭제 태그.
- 스테이징에서
tools.exec.security=allowlist, 7일 거절 수집. - v1 allowlist ≤25행,
git blame에 근거. - 비상주:
ask=on-miss,askFallback=deny. - 승인 이벤트를 로테 가이드에 연결.
- 다섯 리전 VmMac mini 로 업그레이드 리허설.
- 분기
curl | bash레드팀, 거절 경로 확인.
5리전 정책 정합
지연은 의미를 못 바꾸고 운영 달력은 바꾼다. 싱가포르 금·미국 목이 엇갈리면 정책이 한 rev 어긋난다. 체크섬을 옵서버빌리티에, 한 리전이 이상 한 rev면 CI 실패. 가격으로 머신을 더하고 allowlist 를 임시로 키우지 않는다. 며칠이면 부채. 게이트웨이 복구와 같은 수준으로 “argv 를 먼저 죽인 뒤 권한을 넓힌다”를 써라.
FAQ: 렌털 Mac mini 승인
stg·prod allowlist 를 같이? 아니요—앱 코드처럼 갈라리뷰.
VmMac이 OpenClaw를 강제? 아님, 실기와 경로만.
업그레이드가 프롬프트를 되살리면? 핀, 노트, 게이트웨이 복구에 맞춰 스테이징 리허설.
높은 보증 에이전트에 Mac mini M4 / VmMac
상시 켜진 싱글 호스트 예측 가능성, VM 중첩보다 TCC가 덜 뭉게 보인다. 홍콩·일본·한국·싱가포르·미국에 작은 플릿을 두고 위험 exec 를 먼저 굽는다. VmMac 은 정책 엔진이 아니라 쪼갤 수 있는 금속. 테넌시+allowlist이면 자율 툴이 감가상각표에서 지루해 보이게 한다.