아이폰에서 오픈클로 접속하는 법 — pairing required 해결까지 완전 정복
몇 시간을 삽질했다. 원인은 단 한 줄짜리 명령어였다. 이 글은 그 경험의 기록이다.
pairing required. 처음 이 메시지를 봤을 때 나는 뭔가 크게 잘못됐다고 생각했다. 설정을 처음부터 다시 했다. Tailscale을 껐다 켰다. OpenClaw를 재시작했다. 브라우저 캐시를 지웠다. 아무것도 달라지지 않았다.
알고 보니 오류가 아니었다. 새 기기의 접속 요청이 들어왔으니 승인하라는 신호였다. 터미널 두 줄이면 끝나는 일에 몇 시간을 썼다. 이 글은 그 시간을 되돌리기 위해 쓴다.
왜 아이폰에서 오픈클로에 접속하고 싶었나
OpenClaw는 맥에서 실행되는 AI 어시스턴트다. 데스크탑에서야 그냥 터미널 열면 되는데, 이동 중에도 같은 어시스턴트에 접속하고 싶었다. 아이폰에서 내 맥의 OpenClaw를 직접 통제하는 것. 그게 목표였다.
방법은 있었다. Tailscale Serve를 쓰면 아이맥의 특정 포트를 HTTPS로 외부에 노출할 수 있다. 아이폰이 같은 Tailscale 네트워크 안에 있으면 어디서든 접속된다. 실제 아이맥의 로컬서버를, 맥북 브라우저에서 성공적으로 접근할 수 있었다. (오픈클로 기준)
문제는 아이폰이었다.
흔히 놓치는 것
아이맥에 Tailscale이 설치되어 있어야 한다. 아이폰에도 마찬가지다. 그리고 아이맥에서 OpenClaw가 실행 중이어야 한다. 이 두 가지가 갖춰져 있지 않으면 뒤의 어떤 설정도 의미가 없다. 먼저 확인하고 넘어가라.
Tailscale 관리 콘솔(login.tailscale.com/admin/dns)에 접속한다. DNS 탭에서 MagicDNS를 켜고, HTTPS Certificates도 활성화한다. 이걸 켜야 아이맥에 [기기명].ts.net 형식의 HTTPS 주소가 생긴다. 이 주소가 아이폰에서 접속할 때 쓸 주소다. 콘솔에서 기기명을 확인해두자.
아이맥 터미널에서 아래 명령어 한 줄을 실행한다.
tailscale serve --bg 18789
이 한 줄이 아이맥의 18789 포트를 Tailscale HTTPS 주소로 외부에 노출시킨다. --bg는 백그라운드 실행 옵션이다. 터미널을 닫아도 서브는 유지된다. 포트 번호는 OpenClaw 기본값이니 바꾸지 마라.
이제 OpenClaw에게 외부 접속을 허용하도록 알려줘야 한다. 아이맥 터미널에서 아래 세 줄을 순서대로 실행한다. [아이맥 도메인] 부분은 앞서 확인한 [기기명].ts.net 주소로 바꿔 넣어라.
openclaw config set gateway.controlUi.allowedOrigins '["https://[아이맥 도메인]", "http://127.0.0.1:18789"]'
openclaw config set gateway.trustedProxies '["127.0.0.1"]'
openclaw config set plugins.entries.device-pair.config.publicUrl "https://[아이맥 도메인]"
첫 번째 줄은 허용된 오리진을 등록하는 것이다. 두 번째는 프록시 신뢰 설정. 세 번째가 핵심인데, 기기 페어링 요청을 처리할 공개 URL을 지정하는 것이다. 이 주소가 틀리면 뒤에서 꼭 문제가 생긴다.
아이맥 터미널에서 아래를 실행한다.
openclaw qr
터미널에 QR 코드와 함께 Setup code가 출력된다. eyJ로 시작하는 긴 문자열이다. 이걸 아이폰에서 직접 입력하거나 QR을 찍으면 된다. 아이폰 카메라가 터미널 화면을 읽기 어려울 수 있으니, Setup code를 복사해서 쓰는 편이 더 편하다.
아이폰 Safari를 열고 https://[아이맥 도메인]으로 접속한다. Setup code를 입력하고 Connect를 누른다. 그러면 화면에 이 메시지가 뜬다.
pairing required
"여기서 당황하면 안 된다. 이게 핵심이다. 이건 오류가 아니다."
OpenClaw가 "낯선 기기가 접속 요청을 보냈다, 맥 쪽에서 승인해줘"라고 말하는 것이다. 에러 메시지처럼 생겼지만 그냥 대기 상태다.
핵심: devices list → approve
Connect를 누른 직후, 빠르게 아이맥 터미널로 간다. 타이밍이 중요하다. 요청은 일정 시간이 지나면 만료된다. 곧바로 아래를 실행한다.
openclaw devices list
Pending 상태의 항목이 보일 것이다. 거기에 request ID가 있다. 그 ID를 복사해서 바로 실행한다.
openclaw devices approve [request ID]
이게 전부다. 승인이 완료되면 아이폰으로 돌아가 다시 Connect를 누른다. 접속된다.
몇 시간 삽질의 결론이 이 두 줄이었다. 설정이 틀린 게 아니었다. 그냥 승인을 안 했던 것이다.
자주 보는 오류, 그리고 진짜 의미
접속 과정에서 pairing required 외에 다른 메시지가 뜨기도 한다. 그게 무슨 뜻인지 알면 당황하지 않을 수 있다.
너무 많이 시도한 것이다. Connect를 반복해서 누르거나 Setup code를 여러 번 잘못 입력하면 이 메시지가 뜬다. 추가로 할 일은 없다. 5~10분 그냥 기다리면 자동으로 해제된다. 기다리는 동안 설정을 건드리지 마라. 건드릴수록 리셋이 늦어진다.
이건 오히려 좋은 신호다. 기기 인증은 통과했다는 뜻이다. 토큰이 맞지 않는다는 것이니, 아이맥 터미널에서 아래를 실행해 최신 토큰을 확인하고 다시 시도하면 된다.
openclaw dashboard --no-open
대시보드 정보 안에 현재 유효한 토큰이 포함돼 있다. 그걸 확인하고 다시 접속 절차를 밟으면 된다.
결국 이게 교훈이다
설정이 맞아도 동작을 직접 확인해야 한다. 나는 설정 파일을 열 번 넘게 다시 읽었다. 명령어를 한 글자씩 대조했다. 전부 맞았다. 그런데 정작 "새 기기 요청이 들어왔으니 승인해줘"라는 신호를 오류로 착각하고 있었다.
에러 메시지를 곧이곧대로 믿지 마라. 특히 "required"라는 단어가 들어간 메시지는, 뭔가 실패했다는 게 아니라 뭔가 필요하다는 뜻이다. 그게 무엇인지 찾아라.
OpenClaw의 경우, 필요한 건 딱 두 줄이었다.
openclaw devices list
openclaw devices approve [request ID]
그다음부터는 아이폰 어디서든 내 맥의 AI 어시스턴트에 붙을 수 있다. 텔레그램으로 로컬을 통제하는 것만큼이나 신난다.
'기록 > 리뷰' 카테고리의 다른 글
| 한국인 WTO 사무총장 후보? 지금껏 잘 몰랐던 정보 요약과 업데이트 (0) | 2020.06.21 |
|---|---|
| 여성 갱년기 영양제 - 석류추출물, 에스트로겐 호르몬, 학술자료 (0) | 2020.06.11 |
| 캠핑 트렌드 미니멀 캠핑! 10가지 필수 준비물 그리고 몰랐던 꿀팁 (0) | 2020.06.10 |
| 여성 갱년기 증상과 건강관리 유용한 정보 (0) | 2020.06.09 |
| 500원짜리 '비말차단용 마스크' 몰랐던 유용한 정보 (0) | 2020.06.05 |
| 위워크 wework 한국철수 왜? 거품에 따른 정해진 수순이었다. (3) | 2020.06.04 |
| 쿠팡 탐사수에서 느낀 전략, 그리고 생수 할인해서 싸게 구매할 수 있는 기회 공유 (0) | 2020.03.26 |
















