Ubuntu 24.04에 OpenClaw를 설치해 보았다

Ubuntu 24.04에 OpenClaw를 설치해 보았다

6 min read

인프라 / 자체 호스팅 AI 에이전트

Ubuntu 24.04에 OpenClaw 설치해보기 #

Windows Server 2019 및 Windows 11에 이어 이번에는 Ubuntu 24.04에 OpenClaw 설치를 검증했습니다.
Linux 네이티브 환경은 공식 지원 대상이며, Windows 환경에 비해 훨씬 간단합니다.
다만 원격 대시보드 액세스에는 디바이스 페어링 승인이 필요하다는 함정이 있었습니다.
해당 절차를 포함하여 전체 기록을 공개합니다.

OpenClaw
Ubuntu 24.04
Linux
nginx
HTTPS
GPUStack
이전 글과의 관계
본 글은 「Windows Server 2019」 및 「Windows 11」에 OpenClaw 설치 기록의 후속편입니다.
Windows 환경에서 고생했던 PATH 문제, npm 버그, NODE_OPTIONS 문제는 Ubuntu에서는 전혀 발생하지 않았습니다.

환경 구성 #

OpenClaw 호스트

  • Ubuntu 24.04 LTS
  • OpenClaw v2026.4.10 (npm 설치)
  • Node.js v22.22.2 (설치 프로그램이 자동 설정)
  • nginx 리버스 프록시 (443/HTTPS)
  • Gateway 포트: 18789 (loopback)

모델 및 검색 백엔드

  • GPUStack + vLLM 0.17.1
  • Qwen2.5-14B-Instruct
  • SearXNG (온프레미스)
  • Custom Provider (OpenAI 호환)
Windows와의 큰 차이점
Ubuntu에서는 공식 설치 프로그램(install.sh) 하나로 Node.js 설정부터 OpenClaw 설치 및 온보딩까지 완료됩니다.
systemd를 사용할 수 있기 때문에 Gateway의 서비스화도 자동으로 이루어집니다.

설치 절차 #

  1. 패키지 업데이트 및 필요한 도구 설치 #

    sudo apt update && sudo apt upgrade -y
    sudo apt install -y curl git
  2. OpenClaw 설치 #

    공식 설치 프로그램을 실행합니다. Node.js 설정도 포함하여 자동으로 처리됩니다.

    curl -fsSL https://openclaw.ai/install.sh | bash

    설치 프로그램이 다음을 자동으로 수행합니다.

    • Node.js v22 설치 (NodeSource 경유)
    • 빌드 도구 (make / g++ / cmake) 설치
    • OpenClaw npm 패키지 설치
    • 온보딩 마법사 시작
    Windows와의 차이점
    Ubuntu에서는 npm 설치 시 MODULE_NOT_FOUND가 발생하지 않았습니다.
    pnpm으로 전환할 필요도 없습니다. 공식 설치 프로그램이 그대로 작동합니다.
  3. 온보딩 #

    설치 완료 후 자동으로 마법사가 시작됩니다. 설정 항목은 다음과 같습니다.

    • 보안 경고: Yes로 계속
    • Setup mode: QuickStart
    • 모델 프로바이더: Custom Provider
    • Base URL: http://<GPUStack의 IP>/v1
    • API Key 제공 방법: Paste API key now
    • Endpoint compatibility: OpenAI-compatible
    • Model ID: GPUStack에서 실행 중인 모델 이름
    • 채널: Skip for now
    • 스킬 종속성: Skip for now
    • Web 검색: SearXNG Search → URL 입력
    • Hooks: session-memory만 활성화

    온보딩 완료 후, systemd 서비스가 자동으로 설치 및 시작됩니다.

  4. 컨텍스트 상한 및 모델 설정 수정(중요) #

    온보딩 직후 대화를 시작하면 Context limit exceeded 오류가 발생할 수 있습니다.
    설치 직후 다음 설정을 수행하면 회피할 수 있습니다.

    방법①: 대시보드 UI에서 설정(권장) #

    대시보드 왼쪽 메뉴의 「AI 및 에이전트」
    「Models」탭 → 해당 모델의 「Compat」 섹션을 열고,
    다음 값을 설정한 후 「Save」를 누릅니다.

    • Context Tokens: 65536
    • Context Window: 65536
    • Max Tokens: 4096(기본값 유지)




    방법②: 명령줄에서 설정 #

    # compaction 버퍼 증가
    openclaw config set agents.defaults.compaction.reserveTokensFloor 20000
    
    # contextWindow 수동 수정(프로바이더 이름은 환경에 맞게 변경)
    python3 - << 'EOF'
    import json, os
    path = os.path.expanduser("~/.openclaw/openclaw.json")
    with open(path) as f:
        c = json.load(f)
    for k, v in c["models"]["providers"].items():
        for m in v.get("models", []):
            m["contextWindow"] = 65536
            m["maxTokens"] = 4096
    with open(path, "w") as f:
        json.dump(c, f, indent=2, ensure_ascii=False)
    print("업데이트 완료")
    EOF
    
    openclaw gateway restart
    UI에서 설정하는 것이 더 확실합니다
    대시보드에서 설정하면 변경 사항이 즉시 반영되며 설정 오류도 방지할 수 있습니다.
    CLI 설정 후에는 반드시 openclaw gateway restart가 필요합니다.
  5. Gateway 시작 확인 #

    openclaw gateway status
    systemctl --user is-enabled openclaw-gateway.service

    enabled로 표시되면 OS 부팅 시 자동으로 시작됩니다.

다른 단말기에서의 원격 액세스 설정(nginx + 자체 서명 인증서) #

대시보드를 네트워크를 통해 다른 단말에서 사용하려면 nginx로 리버스 프록시를 구성합니다.
WebSocket도 사용하므로 nginx 설정에 Upgrade 헤더 전송이 필요합니다.

  1. nginx와 자체 서명 인증서 설정 #

    sudo apt install -y nginx
    
    # 자체 서명 인증서 생성(유효기간 10년)
    sudo mkdir -p /etc/nginx/ssl
    sudo openssl req -x509 -nodes -days 3650 -newkey rsa:2048 \
      -keyout /etc/nginx/ssl/openclaw.key \
      -out /etc/nginx/ssl/openclaw.crt \
      -subj "/CN=openclaw.local"
  2. nginx 설정 파일 생성 #

    sudo tee /etc/nginx/sites-available/openclaw << 'EOF'
    server {
        listen 443 ssl;
        server_name _;
    
        ssl_certificate     /etc/nginx/ssl/openclaw.crt;
        ssl_certificate_key /etc/nginx/ssl/openclaw.key;
    
        location / {
            proxy_pass http://127.0.0.1:18789;
            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "upgrade";
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_read_timeout 86400;
        }
    }
    
    server {
        listen 80;
        return 301 https://$host$request_uri;
    }
    EOF
    
    sudo ln -sf /etc/nginx/sites-available/openclaw /etc/nginx/sites-enabled/
    sudo rm -f /etc/nginx/sites-enabled/default
    sudo nginx -t && sudo systemctl restart nginx
    sudo systemctl enable nginx
  3. OpenClaw 설정 변경 #

    # localhost가 아닌 곳에서의 연결 허용
    openclaw config set gateway.controlUi.allowInsecureAuth true
    
    # 접속 출처 오리진 허용
    openclaw config set gateway.controlUi.allowedOrigins '["*"]'
    
    openclaw gateway restart
  4. 방화벽 포트 열기 #

    sudo ufw allow 443/tcp
    sudo ufw allow 80/tcp

원격 접속 시 디바이스 페어링 승인 #

다른 단말에서 대시보드에 접속하면 pairing required 오류가 표시됩니다.
이것은 OpenClaw의 보안 기능으로, 최초 접속 시 관리자의 승인이 필요합니다.
한 번 승인하면 이후에는 불필요합니다.

흔한 실수
채널(Telegram・Discord 등)의 페어링에 사용하는 openclaw pairing 명령은 여기서는 사용하지 않습니다.
대시보드의 디바이스 승인은 openclaw devices 명령을 사용합니다.
  1. 브라우저에서 대시보드에 접속 #

    토큰이 포함된 URL을 브라우저에서 엽니다. 서버 측에서 확인합니다.

    openclaw dashboard
    # 표시된 URL(#token=...)을 브라우저에서 열기

    브라우저에 pairing required가 표시된 상태 그대로 다음으로 진행합니다.

  2. Pending 목록을 확인하고 승인 #

    # 페어링 대기 중인 디바이스 목록 표시
    openclaw devices list
    
    # 표시된 Request ID를 모두 승인
    openclaw devices approve <Request ID>

    Pending에 여러 요청이 있는 경우 모두 승인합니다.

  3. 브라우저에서 재접속 #

    승인 후, 브라우저의 “연결” 버튼을 누르면 대시보드가 열립니다.

승인은 영구적입니다
한 번 승인한 디바이스는 Gateway를 재시작해도 재승인이 불필요합니다.
브라우저의 캐시를 삭제하거나 다른 브라우저를 사용하면 새로운 디바이스로 간주되어 재승인이 필요합니다.

GPUStack 측 설정 #

GPUStack 관리 화면에서 모델의 백엔드 파라미터에 다음을 추가하고 모델을 재시작합니다.

--max-model-len 32768
--generation-config vllm
--enable-auto-tool-choice
--tool-call-parser hermes

Windows 환경과의 비교 #

Ubuntu에서 편리해진 점

  • install.sh 하나로 Node.js부터 전부 자동 설정
  • MODULE_NOT_FOUND가 발생하지 않음(pnpm 불필요)
  • PATH 문제・NODE_OPTIONS 문제가 발생하지 않음
  • systemd로 Gateway가 자동 서비스화됨
  • nginx로 리버스 프록시를 간단히 구성할 수 있음

Ubuntu에서도 필요했던 작업

  • contextWindow / compaction의 수동 설정
  • GPUStack 백엔드 파라미터 설정

작동 확인 체크리스트 #

  • openclaw --version 이 표시됨
  • systemctl --user is-enabled openclaw-gateway.serviceenabled
  • openclaw gateway status 에서 RPC probe: ok 가 표시됨
  • 다른 단말의 브라우저에서 https://<서버IP> 에 액세스 가능
  • openclaw devices approve 로 디바이스 승인이 완료됨
  • main 세션에서 채팅에 응답이 돌아옴
  • 세션 화면의 TOKENS 가 xxxxx / 32768 로 표시됨
  • SearXNG 검색이 작동함

정리 #

Ubuntu 24.04 에 OpenClaw 를 설치하는 것은 Windows 환경과 비교해 압도적으로 간단했습니다.
설치 프로그램을 실행하는 것만으로 Node.js 설정부터 서비스화까지 완료됩니다.

유일한 함정은원격 대시보드 액세스 시 디바이스 페어링입니다.
openclaw pairing(채널용)이 아닌 openclaw devices 를 사용하는 점에 주의하세요.
또한, 설치 직후 contextWindow 와 compaction 설정을 수행함으로써,
대화 시작 직후의 컨텍스트 오버플로를 방지할 수 있습니다.

3가지 환경의 종합 평가
설치 난이도는 Ubuntu 24.04 << Windows 11 < Windows Server 2019 순입니다.
Linux 환경을 선택할 수 있다면 Ubuntu 를 단연 추천합니다.
본 기사의 절차는 2026년 4월 시점의 OpenClaw v2026.4.10・vLLM 0.17.1・GPUStack 에 기반합니다.
버전이 변경되면 동작이 다를 수 있습니다.
Updated on 2026年6月9日

What are your feelings

  • Happy
  • Normal
  • Sad