WebChat 채널 설정
기준일: 2026-06-06
난이도: 초급
공식 기준: WebChat, Web, Gateway configuration
WebChat은 별도 채팅 서버가 아니라 Gateway WebSocket에 붙는 채팅 표면입니다. 브라우저 Control UI의 chat tab, macOS/iOS 앱의 WebChat, 원격 SSH/Tailscale 터널이 같은 Gateway port를 사용합니다.
핵심 개념
| 항목 | 설명 |
|---|---|
| Gateway port | HTTP/WS가 함께 열리는 단일 포트. 기본은 18789 |
| Control UI | Gateway가 제공하는 브라우저 UI |
| WebChat | chat.history, chat.send, chat.inject 같은 Gateway WS 메서드 사용 |
| Remote mode | SSH/Tailscale로 Gateway port를 터널링 |
| Auth | loopback 밖에서는 token/password 또는 trusted proxy를 먼저 설정 |
선택 기준
- 로컬 테스트는
127.0.0.1:18789Control UI에서 시작합니다. - 휴대폰이나 원격 Mac 앱에서 쓰려면 Gateway port 터널과 인증 경로를 같이 설계합니다.
- WebChat을 공개 웹 위젯처럼 노출하지 않습니다. 외부 접근은 Gateway 보안 정책의 일부로 취급합니다.
실습
Gateway 상태를 확인합니다.
openclaw status
openclaw gateway status
openclaw health
로컬 브라우저에서 Control UI를 엽니다.
http://127.0.0.1:18789/
포트를 바꾸려면 gateway.port 또는 실행 플래그를 사용합니다.
{
"gateway": {
"port": 18789,
"bind": "loopback",
"auth": {
"mode": "token",
"token": "replace-with-a-secret"
}
}
}
도구에 입력할 프롬프트
내 OpenClaw WebChat 노출 방식을 점검해줘.
gateway.port, gateway.bind, gateway.auth.mode, token/password/trusted-proxy,
SSH/Tailscale 터널 사용 여부를 기준으로 로컬 전용과 원격 접근을 나눠서 평가해줘.
체크리스트
- Gateway가 기본 포트
18789또는 의도한 포트에서 응답한다. - loopback 밖으로 열기 전에 auth mode와 secret을 정했다.
- WebChat을 별도 공개 위젯 서버로 오해하지 않는다.
- 원격 사용은 SSH/Tailscale/trusted proxy 중 하나로 제한한다.
다음 단계
- Gateway 운영에서 노출 전 보안 점검표를 확인합니다.
- 접근 제어와 라우팅에서 operator와 sender 범위를 좁힙니다.