2026년 OpenClaw Exec Approvals, tools.exec 정책, SSH 헤드리스 독점 원격 Mac
배포 및 운영 2026-05-09

2026년 OpenClaw Exec Approvals(실행 승인)을 독점 원격 Mac(SSH 헤드리스)에 실무로 끌어내리기: tools.exec 정책, 승인 상태 파일, UI 없는 보수적 폴백의 재현 가능한 의사결정 매트릭스 + FAQ

호스트 명령 실행을 조용한 초능력이 아니라 감사 가능한 계약으로 바꿉니다. Exec Approvals가 tools.exec와 어떻게 맞물리는지, SSH만 있는 호스트에서 승인 상태를 디스크에 두어야 하는 이유, 데스크톱에서 "허용"을 누를 UI가 없을 때 게이트웨이가 멈추지 않게 하는 보수적 폴백을 한 번에 정리합니다.

1. TL;DR — 먼저 넣을 것

  • 정책 분할: tools.exec를 정적 허용 목록(바이너리 + argv 형태), 작업 디렉터리 상한, 환경 위생, 호출당 예산(타임아웃·최대 출력)의 조합으로 설계합니다.
  • 내구 승인: 대기·승인·거절 기록을 게이트웨이 소유 상태 파일(또는 단일 writer DB)에 두고, SSH 세션 RAM만 믿지 않습니다.
  • 헤드리스 현실: Aqua 알림이 없으면 사람의 결정은 챗옵스·티켓 웹훅·로컬호스트 UI 포워딩 등 대역 외 채널로 라우팅하고, 기본값은 대기열 + 거부입니다. 자동 승인은 연결 끊김이 곧 임의 코드 실행으로 이어집니다.
  • 재현성: 온콜이 ssh user@mac으로도 같은 파일을 만질 수 있게 하고, 원격 Mac SSH에서 CLI와 게이트웨이 버전 불일치 트리아지 를 함께 두어 openclaw doctor 출력과 실제 로드된 게이트웨이를 맞춥니다.

2. Exec Approvals와 다른 게이트(Node 페어링, Skill, Hook)

Exec Approvals는 "이 주체가 지금 이 호스트 셸 명령을 이 인자·이 cwd로 실행해도 되는가?"에 답합니다. OS 경계에 가장 가깝습니다. Node 페어링은 "어떤 단말 신원이 이 게이트웨이에 묶일 수 있는가"이고, Skill·플러그인 Hook은 상위 도구 호출과 텔레메트리를 감쌉니다. Hook은 풍부한데 tools.exec만 느슨하면 감사 스토리는 완성된 것처럼 보이지만 블라스트 반경은 여전히 풀 셸입니다.

CI 웹훅으로 들어오는 자동화는 인바운드 인증을 최소 권한으로 맞추는 편이 안전합니다. 공유 비밀·게이트웨이 라우팅·속도 제한을 정리한 독점 원격 Mac에서 OpenClaw 웹훅(GitHub·GitLab CI) 운영 과 Exec 정책을 같은 ADR에 두면 위조 파이프라인 이벤트가 승인 큐를 우회하기 어렵습니다.

3. tools.exec 정책 면(설정에 박을 축)

Git 리뷰 가능하게 직교한 면으로 나눕니다.

  • 바이너리 면: 절대 경로나 통제된 PATH 루트만 허용. 브레이크글라스 예외는 티켓 ID를 argv에 넣는 등 명시적으로만.
  • Argv 면: 접두 허용, 금지 플래그, 토큰 수 상한으로 파서 남용을 막습니다.
  • Cwd 면: 워크스페이스 루트로 제한. 런타임이 지원하면 심볼릭 이스케이프를 거부합니다.
  • 환경 면: 비대화형 세션에서 상속 비밀을 제거하고, 허용 목록 변수만 주입합니다.
  • 예산 면: 벽시계 타임아웃, 출력 바이트 상한, 세션당 동시 exec 슬롯.

독점 원격 Mac이라면 노트북 공유 환경보다 기본값을 더 세게 잡아도 됩니다. 선언된 워크스페이스 밖에서 임의 프로젝트를 컴파일할 합법적 이유가 거의 없습니다.

4. 승인 상태 파일: 배치, 잠금, 손상 복구

헤드리스 게이트웨이에도 내구 대기열이 필요합니다. 최소한 갖춰야 할 성질은 다음과 같습니다.

  • 단일 writer: 한 프로세스가 pending → 승인·거절·만료 전이를 직렬화합니다. 잠금 없이 두 CLI가 같은 JSON을 동시에 쓰지 않습니다.
  • 멱등 키: 제안된 exec마다 (주체, cwd, argv[], 정책 버전)의 안정 해시를 두고, 재시도가 중복 행을 만들지 않게 합니다.
  • TTL: pending은 expired로 만료시키고 감사 로그에 명시해 에이전트가 영원히 멈추지 않게 합니다.
  • 손상 처리: 마지막 정상 스냅샷 또는 append-only 저널을 유지합니다. 파싱 오류 시 조용히 잘리게 하지 말고 폐쇄 실패로 exec를 막고 알립니다.

상태는 게이트웨이 서비스 사용자 홈(예: 전용 openclaw 계정) 아래에 두고, 세션 간 경쟁이 테넌트 간 결정을 섞을 수 있는 /tmp 전역 쓰기는 피합니다.

5. 무 UI 보수적 폴백

순수 SSH에는 macOS GUI 프롬프트가 없습니다. 선호 패턴은 다음과 같습니다.

  1. 대역 외 승인자: 대기 메타데이터를 Slack·Teams·Telegram에 올리고, 서명된 딥링크나 회신 토큰으로 게이트웨이가 소비합니다.
  2. 티켓 브리지: Jira·Linear API로 이슈를 만들고, 완료 전이에 승인 근거를 넣어 게이트웨이가 검증합니다.
  3. 포트 포워드 로컬 UI: 관리 콘솔을 Mac의 127.0.0.1에 바인딩하고 운영자 노트북에서 ssh -L로 접습니다. 금속 상에서는 여전히 헤드리스입니다.
  4. 브레이크글라스 파일: 시간 한정 타임스탬프 파일을 두고 창이 끝나면 자동 제거·보안 팀 페이징을 Runbook에 고정합니다.

승인 채널이 SLA 안에 ACK를 못 주면 대기 + 거부가 보수적 기본값입니다. 조용한 자동 승인은 운영 사고로 이어지기 쉽습니다.

6. 재현 가능한 의사결정 매트릭스(ADR 부록에 붙여 넣기)

신호 해석 권장 조치
알 수 없는 바이너리 경로로 exec 요청 정책 드리프트 또는 PATH 주입 거부하고 argv[0] 로깅. 경로 허용 PR이 머지된 뒤에만 승인 큐를 연다
승인 파일 잠금 > 30초 오래된 잠금 또는 writer 크래시 PID 파일 확인. Runbook대로 stale 잠금만 제거. 게이트웨이 가동 중 CLI 이중 쓰기 금지
CI 버스트에 대기 큐 증가 웹훅 fan-out 대비 exec 예산 부족 인바운드 속도 제한, 워크스페이스 샤딩, 저위험 읽기 전용 도구는 별도 배치
승인자 채널 다운 무 UI 경로 불가 폐쇄 실패, 성능 저하 메트릭 노출, 사전 등록된 유지보수 창 토큰은 선택적으로만
같은 멱등 키, 다른 argv 꼬리 에이전트 재시도 변조 시도 거부. argv 변경 시 새 키 요구. 로그에 정책 버전 범프

7. FAQ

Q1: Exec 승인을 파일 읽기 승인과 1:1로 맞춰야 하나요?

A: 아니요. 읽기는 대량·저위험인 경우가 많고 exec는 고위험입니다. 워크스페이스 안에서 읽기 정책이 관대해도 exec는 argv·cwd 규칙을 더 촘촘히 두는 편이 맞습니다.

Q2: 신뢰하는 CI 사용자는 자동 승인해도 되나요?

A: 아티팩트에 바인딩된 신뢰를 권장합니다. CI 발급자의 서명된 OIDC 토큰을 짧은 수명 주체에 매핑하고 정적 허용 목록과 결합하세요. "사용자 이름 문자열 == ci-bot"만으로는 부족합니다.

Q3: LaunchAgent는 어디에 두나요?

A: 재부팅 후에도 게이트웨이가 깨끗이 올라와야 하고, 디스크에 남은 pending을 트래픽 수락 전에 다시 읽어야 합니다. SSH로 통제 재부팅 드릴을 Runbook에 포함하세요.

Q4: 운영자가 macOS 네이티브 알림을 원하면?

A: 대화형 Aqua 세션(콘솔 로그인 사용자)이나 별도 알림 서비스·자격이 필요합니다. SSH만으로는 UI가 있다고 가정하지 말고 대역 외 채널을 쓰세요.

8. 승인 큐가 무거운 게이트웨이에 Mac mini와 macOS가 여전히 잘 맞는 이유

Exec Approvals와 tools.exec 강화는 그 아래 커널과 장기 프로세스 모델이 얼마나 신뢰할 수 있느냐에 달려 있습니다. macOS는 launchd로 서비스 재시작을 예측 가능하게 만들고, 게이트웨이 전용 Unix 사용자 모델과 팀이 이미 운영 중인 OpenSSH 브레이크글라스를 같은 언어로 설명하기 쉽습니다. Apple Silicon Mac mini는 단일 스레드 성능과 매우 낮은 대기 전력(대략 수 와트대)을 함께 갖춰, 상시 승인 대기열을 전기 요금 부담 없이 돌리기 좋습니다.

Gatekeeper·SIP·FileVault는 일반적인 Windows 이미지 대비 악성코드 표면을 줄이고, 옷장이나 랙 옆 선반에서도 소음 프로필이 낮습니다. 통합 메모리는 로그·가벼운 관측·게이트웨이가 한 대에 있을 때 스왑 압박을 완화합니다. Exec 승인과 SSH 우선 런북을 수면·발열·백그라운드 서비스와 싸우지 않는 실리콘에 올리고 싶다면 Mac mini M4는 2026년에도 강한 기준선입니다. 요금과 구성은 홈에서 비교해 보시고, 하드웨어가 운영을 방해하지 않게 만드는 쪽으로 선택하세요.

추천 요금제

M4.S 베스트셀러

10-Core 16GB 256GB
$105.9
/ 월부터
전체 요금제 보기