openclaw node run --host 192.168.x.x --port 18789 ์‹คํ–‰ ์‹œ Cannot connect ... over plaintext ws:// ์—๋Ÿฌ๊ฐ€ ๋œฐ ๋•Œ, ๊ฐ€์žฅ ๋น ๋ฅธ ๋ณต๊ตฌ ๋ฐฉ๋ฒ•์„ ์ •๋ฆฌํ•œ๋‹ค.

๋น ๋ฅธ ํƒ์ƒ‰์ด ํ•„์š”ํ•˜๋ฉด ์ง€์‹์ •์› ํ™ˆ์—์„œ ์˜ค๋Š˜์˜ ๋ฌธ์ œํ•ด๊ฒฐ ๋งํฌ๋ฅผ ๋จผ์ € ํ™•์ธํ•ด๋„ ์ข‹๋‹ค.

๋ฌธ์ œ ์š”์•ฝ

์ฆ์ƒ ์˜ˆ์‹œ:

node host gateway connect failed:
SECURITY ERROR: Cannot connect to "192.168.0.39" over plaintext ws://
Use wss:// for the gateway URL, or connect via SSH tunnel to localhost.

ํ•ต์‹ฌ ์›์ธ:

  • ws://๋Š” ํ‰๋ฌธ ์ „์†ก์ด๋ผ OpenClaw๊ฐ€ ๋ณด์•ˆ์ƒ ๊ธฐ๋ณธ ์ฐจ๋‹จ
  • Gateway ์ž๊ฒฉ์ •๋ณด/์ฑ„ํŒ… ๋ฐ์ดํ„ฐ๊ฐ€ ๋„คํŠธ์›Œํฌ์—์„œ ๋…ธ์ถœ๋  ์ˆ˜ ์žˆ์Œ

์›์ธ ๊ตฌ์กฐ ํ•œ๋ˆˆ์— ๋ณด๊ธฐ

flowchart LR
A[node run --host 192.168.0.39] --> B[๊ธฐ๋ณธ ์—ฐ๊ฒฐ: ws://192.168.0.39:18789]
B --> C{ํ‰๋ฌธ์ธ๊ฐ€?}
C -- ์˜ˆ --> D[OpenClaw ๋ณด์•ˆ์ฐจ๋‹จ]
D --> E[SECURITY ERROR]
C -- ์•„๋‹ˆ์˜ค(wss/ํ„ฐ๋„) --> F[์ •์ƒ ์—ฐ๊ฒฐ]

ํ•ด๊ฒฐ ๋ฐฉ๋ฒ• 1 (๊ถŒ์žฅ): SSH ํ„ฐ๋„

๊ฐ€์žฅ ๋น ๋ฅด๊ณ  ์•ˆ์ „ํ•œ ์‹ค์ „ ๋ณต๊ตฌ ๊ฒฝ๋กœ๋‹ค.

1) 37์—์„œ ํ„ฐ๋„ ์˜คํ”ˆ (ํ„ฐ๋ฏธ๋„ A)

ssh -N -L 18789:127.0.0.1:18789 tw2@192.168.0.39
  • -N: ๋ช…๋ น ์‹คํ–‰ ์—†์ด ํ„ฐ๋„๋งŒ ์œ ์ง€
  • ์ด ์ฐฝ์€ ๋‹ซ์ง€ ๋ง๊ณ  ์œ ์ง€

2) 37์—์„œ node ์—ฐ๊ฒฐ (ํ„ฐ๋ฏธ๋„ B)

openclaw node run --host 127.0.0.1 --port 18789 --display-name mcclaw-37

3) 39์—์„œ ํŽ˜์–ด๋ง ์Šน์ธ

openclaw nodes pending
openclaw nodes approve <requestId>
openclaw nodes status --connected

ํ•ด๊ฒฐ ๋ฐฉ๋ฒ• 2: TLS(wss) ์ง์ ‘ ์—ฐ๊ฒฐ

์šด์˜ ํ™˜๊ฒฝ์—์„œ TLS๋ฅผ ์ค€๋น„ํ–ˆ๋‹ค๋ฉด wss๋กœ ์ง์ ‘ ์—ฐ๊ฒฐ ๊ฐ€๋Šฅ.

  • Gateway๋ฅผ TLS/wss๋กœ ๋…ธ์ถœ
  • node run์— TLS ์˜ต์…˜ ์ ์šฉ
openclaw node run --host <gateway-host> --port <tls-port> --tls --display-name mcclaw-37

์ดˆ๊ธฐ ๊ตฌ์„ฑ ๋‚œ์ด๋„๋Š” SSH ํ„ฐ๋„๋ณด๋‹ค ๋†’์Œ.

๋ณต๊ตฌ ์ฒดํฌ๋ฆฌ์ŠคํŠธ (3๋ถ„)

  • 39์—์„œ openclaw gateway status๊ฐ€ ์ •์ƒ์ธ๊ฐ€?
  • 37โ†”39 ๋„คํŠธ์›Œํฌ ๊ฒฝ๋กœ๊ฐ€ ์‚ด์•„์žˆ๋Š”๊ฐ€? (IP/ํฌํŠธ)
  • ํ‰๋ฌธ ws://๋กœ ์ง์ ‘ ๋ถ™๊ณ  ์žˆ์ง€ ์•Š์€๊ฐ€?
  • SSH ํ„ฐ๋„์„ ์—ฐ ๋’ค 127.0.0.1:18789๋กœ ๋ถ™๋Š”๊ฐ€?
  • nodes pending์— ์š”์ฒญ์ด ๋ณด์ด๊ณ  approve ๋˜์—ˆ๋Š”๊ฐ€?

์žฌํ˜„ ์ ˆ์ฐจ (๋ฌธ์ œ ํ™•์ธ์šฉ)

๋ฌธ์ œ๊ฐ€ ๋งž๋Š”์ง€ 1๋ถ„ ์•ˆ์— ํ™•์ธํ•˜๋ ค๋ฉด ์•„๋ž˜ ์ˆœ์„œ๋กœ ์žฌํ˜„ํ•œ๋‹ค.

  1. 37์—์„œ ํ‰๋ฌธ ์—ฐ๊ฒฐ ์‹œ๋„
openclaw node run --host 192.168.0.39 --port 18789 --display-name mcclaw-37
  1. ์•„๋ž˜ ์—๋Ÿฌ ๋ฌธ๊ตฌ๊ฐ€ ๋‚˜์˜ค๋ฉด ๋ณธ ๋ฌธ์„œ์˜ ๋Œ€์ƒ ์ด์Šˆ๊ฐ€ ๋งž๋‹ค.
SECURITY ERROR: Cannot connect to "192.168.0.39" over plaintext ws://
  1. ์ฆ‰์‹œ Ctrl + C๋กœ ์ข…๋ฃŒ ํ›„ SSH ํ„ฐ๋„ ๋ฐฉ์‹์œผ๋กœ ์ „ํ™˜ํ•œ๋‹ค.

์‹คํŒจ์‚ฌ๋ก€ (ํ˜„์žฅ์—์„œ ์ž์ฃผ ๋ง‰ํžˆ๋Š” ์ง€์ )

์‚ฌ๋ก€ 1) SSH ํ„ฐ๋„์€ ์—ด์—ˆ๋Š”๋ฐ ์—ฌ์ „ํžˆ ์‹คํŒจ

  • ์›์ธ: node run์—์„œ --host 127.0.0.1 ๋Œ€์‹  ์›๋ž˜ IP๋ฅผ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉ
  • ํ•ด๊ฒฐ: ํ„ฐ๋„์„ ์—ด์—ˆ์œผ๋ฉด ๋ฐ˜๋“œ์‹œ localhost๋กœ ์—ฐ๊ฒฐ

์‚ฌ๋ก€ 2) Permission denied (publickey,password)

  • ์›์ธ: 39 ๋กœ๊ทธ์ธ ๊ณ„์ •๋ช… ์˜ค์ž…๋ ฅ ๋˜๋Š” SSH ํ‚ค ๋ฏธ๋“ฑ๋ก
  • ํ•ด๊ฒฐ: ssh <๊ณ„์ •>@192.168.0.39 'whoami'๋กœ ๊ณ„์ • ํ™•์ธ ํ›„ ํ‚ค ์žฌ๋“ฑ๋ก

์‚ฌ๋ก€ 3) ํŽ˜์–ด๋ง์ด ์•ˆ ๋ณด์ž„

  • ์›์ธ: 39์—์„œ nodes pending ํ™•์ธ ์ „์— node ํ”„๋กœ์„ธ์Šค๊ฐ€ ์ข…๋ฃŒ๋จ
  • ํ•ด๊ฒฐ: 37์—์„œ openclaw node run ... ํ”„๋กœ์„ธ์Šค๋ฅผ ์œ ์ง€ํ•œ ์ƒํƒœ๋กœ ์Šน์ธ ์ง„ํ–‰

FAQ

Q1. ์™œ ๊ทธ๋ƒฅ ws://192.168...๋กœ ๋ถ™์œผ๋ฉด ์•ˆ ๋˜๋‚˜์š”?

A. ์ธ์ฆ์ •๋ณด/๋Œ€ํ™” ๋ฐ์ดํ„ฐ๊ฐ€ ํ‰๋ฌธ์œผ๋กœ ๋…ธ์ถœ๋  ์ˆ˜ ์žˆ์–ด ๋ณด์•ˆ์ƒ ๊ธฐ๋ณธ ์ฐจ๋‹จ๋ฉ๋‹ˆ๋‹ค.

Q2. SSH ํ„ฐ๋„๊ณผ TLS(wss) ์ค‘ ๋ญ๊ฐ€ ๋” ์ข‹๋‚˜์š”?

A. ๋‹จ๊ธฐ ๋ณต๊ตฌ๋Š” SSH ํ„ฐ๋„์ด ๊ฐ€์žฅ ๋น ๋ฅด๊ณ , ์ƒ์‹œ ์šด์˜์€ TLS(wss)๊ฐ€ ๋” ๊ตฌ์กฐ์ ์œผ๋กœ ๊น”๋”ํ•ฉ๋‹ˆ๋‹ค.

Q3. ์—ฐ๊ฒฐ์€ ๋๋Š”๋ฐ --connected์— ์•ˆ ๋ณด์ผ ๋•Œ๋Š”?

A. ์Šน์ธ ๋ˆ„๋ฝ์ด ๊ฐ€์žฅ ํ”ํ•ฉ๋‹ˆ๋‹ค. 39์—์„œ openclaw nodes pending โ†’ approve ์ˆœ์„œ๋กœ ํ™•์ธํ•˜์„ธ์š”.

๋ฐœํ–‰ ์ „ ์ฒดํฌ (ํ’ˆ์งˆ ๊ฒŒ์ดํŠธ)

  • ์žฌํ˜„ ๋ช…๋ น 1๊ฐœ + ๋ณต๊ตฌ ๋ช…๋ น 1๊ฐœ๋ฅผ ์‹ค์ œ๋กœ ๋ณต๋ถ™ ๊ฒ€์ฆํ–ˆ๋Š”๊ฐ€?
  • ๊ณ„์ •๋ช…/ํ˜ธ์ŠคํŠธ/IP ์˜ˆ์‹œ๊ฐ€ ํ˜„์žฌ ์šด์˜ ํ™˜๊ฒฝ๊ณผ ์ผ์น˜ํ•˜๋Š”๊ฐ€?
  • ์„ฑ๊ณต ํŒ์ •(nodes status --connected)์ด ๋ณธ๋ฌธ์— ๋ช…์‹œ๋˜์—ˆ๋Š”๊ฐ€?
  • ๊ด€๋ จ ๋ฌธ์„œ(ํ—ˆ๋ธŒ/์ธ๋ฑ์Šค) ๋งํฌ๊ฐ€ ์‚ด์•„์žˆ๋Š”๊ฐ€?

์ž์ฃผ ํ•˜๋Š” ์‹ค์ˆ˜

  1. --host 192.168.0.39๋กœ ๋ฐ”๋กœ ์ ‘์† ์‹œ๋„ (ํ‰๋ฌธ ์ฐจ๋‹จ)
  2. ํ„ฐ๋„ ์ฐฝ์„ ๋‹ซ์•„๋†“๊ณ  node run ์‹คํ–‰
  3. ํŽ˜์–ด๋ง ์Šน์ธ(nodes approve) ์ƒ๋žต

๋‹ค์Œ ์ฝ๊ธฐ

ํ•œ ์ค„ ๊ฒฐ๋ก 

node run plaintext ws ์—๋Ÿฌ๋Š” ์žฅ์• ๊ฐ€ ์•„๋‹ˆ๋ผ ์˜๋„๋œ ๋ณด์•ˆ ์ฐจ๋‹จ์ด๋‹ค.
์‹ค๋ฌด์—์„œ๋Š” SSH ํ„ฐ๋„ + localhost ์—ฐ๊ฒฐ์ด ๊ฐ€์žฅ ๋น ๋ฅธ ํ‘œ์ค€ ๋ณต๊ตฌ ๊ฒฝ๋กœ๋‹ค.

โ€ป ์ด ๋ฌธ์„œ๋Š” ์ƒ์„ฑํ˜• AI๋ฅผ ํ™œ์šฉํ•ด ์ž‘์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.