대상: 원격 Mac에서 OpenClaw와 WireGuard 고정 출구·도메인 화이트리스트·CI 요약 웹훅을 한 번에 맞출 개발자용 최소 재현입니다. curl 설치·Node 22·24·onboard --install-daemon·포트 18789·OPENCLAW_HOME 분리를 묶었습니다. 심화: 게이트웨이 보안, 웹훅 요약, 임베딩 프로브.
1
launchd만 OPENCLAW_HOME이 비어 타임아웃.
2
터널 없이 나가면 허용 목록이 흔들림.
3
긴 로그 그대로 웹훅이면 재연결 직후도 큐 막힘.

출구 고정 방식 비교

방식 적합한 경우 주의
전체 터널 단일 출구 지연·우회 범위 큼
분할 모델만 터널 AllowedIPs 정밀
앱 프록시 공존 드리프트

① 토폴로지와 최소 권한 원칙

SSH 관리 계정과 OpenClaw 실행 사용자를 나누고 방화벽은 기본 거부 뒤 모델·도구 API만 WireGuard로 허용해 출구를 고정합니다. 감사 로그에는 동일 출구 아이피만 남도록 하면 허용 목록 관리가 단순해지고 원격 맥 임대 환경에서도 동일 패턴을 복제하기 쉽습니다.

② 설치와 doctor 검증

Node 22·24 고정 후 공식 curl 설치·openclaw onboard --install-daemon·openclaw doctor·gateway status --deep로 18789를 확인합니다.

node -v
curl -fsSL https://openclaw.ai/install.sh | bash
openclaw onboard --install-daemon
openclaw doctor

스테이징·운영은 OPENCLAW_HOME을 달리한 plist 두 벌로 분리합니다.

③ WireGuard 라우팅과 DNS 분할

AllowedIPs를 제공자 대역으로 좁히고 DNS 분할로 모델 호스트만 터널 리졸버를 씁니다.

wg-quick up wg0
scutil --dns | head -n 40

데몬과 동일 사용자로 curl해 라우트를 맞춥니다.

④ 게이트웨이 바인딩·토큰과 도메인 화이트리스트

127.0.0.1:18789만 리슨·외부는 SSH 포워드나 프록시 TLS. 토큰 파일 육백·plist와 셸 diff. 방화벽은 모델·도구 도메인만 허용합니다. 운영과 스테이징을 OPENCLAW_HOME으로 나누면 설정 충돌 없이 병행 테스트가 가능합니다.

export OPENCLAW_GATEWAY_TOKEN="$(tr -d '\n' < "$OPENCLAW_HOME/.env.gateway")"
openclaw gateway status --deep

⑤ 끊김 재연결과 상태 프로브

launchd에서 분 단위 curl 헬스·터널 재기동 후 gateway restart 순서로 복구합니다.

⑥ CI Webhook 요약 병합 예시

실패 스텝 stderr 끝부분만 모아 중복 제거·약 사킬로 캡 JSON으로 웹훅. 잡아이디·커밋·본문 필드 고정·이삼사팔초 백오프.

복붙 체크리스트·검사 명령

  • ✓plist OPENCLAW_HOME·토큰·PATH=셸
  • ✓lsof로 이칠팔팔구 루프백만

가드레일

  • 토큰 육백·퇴사 시 회전
  • 웹훅 사킬로 캡·이삼사팔초 백오프

FAQ·자주 보는 오류

데몬만 타임아웃

서비스 사용자 curl로 터널·프록시 비교.

전 인터페이스 리슨?

루프백만 권장.

요약. 토폴로지·curl·onboard·doctor·WireGuard·이칠팔팔구·토큰·프로브·CI 요약 순으로 고정합니다.

콘솔 로그인 시 노드 배치가 빨라집니다. 요금·구매·블로그는 비로그인 열람.

MacPull 상시 맥에 같은 런북을 얹으면 운영 반복이 줄어듭니다.

WireGuard·게이트웨이용 원격 Mac

상시 Apple Silicon 노드에서 터널·데몬·프로브를 돌리기 좋습니다. 콘솔은 로그인 후 노드 예약을 빠르게 조정할 수 있고 요금·구매·고객 지원·블로그는 계정 없이도 열 수 있습니다.