OpenClaw은 WhatsApp, Telegram, Discord 등 다양한 채팅 플랫폼에 연결할 수 있는 오픈소스 셀프 호스팅 AI 어시스턴트입니다. 24시간 상시 온라인으로 운영하려면 VPS(가상 전용 서버)에 배포하는 것이 최선의 방법입니다. 이 가이드에서는 VPS 선택부터 전체 배포 과정까지 단계별로 안내합니다. 자세한 정보는 OpenClaw을 참고하세요.
VPS 선택
OpenClaw은 서버 사양에 대한 요구가 높지 않습니다. 아래는 권장 최소 사양입니다:
| 항목 | 최소 사양 | 권장 사양 |
|---|---|---|
| CPU | 1코어 | 2코어 |
| 메모리 | 2GB | 4GB |
| 디스크 | 20GB SSD | 40GB SSD |
| OS | Ubuntu 22.04 | Ubuntu 24.04 |
| 네트워크 | 고정 공인 IP | 고정 공인 IP |
같은 서버에서 Ollama 로컬 모델도 실행할 계획이라면, 메모리는 최소 8GB가 필요합니다.
주요 VPS 제공업체로는 Vultr, DigitalOcean, Linode, BandwagonHost, RackNerd 등이 있습니다. 지리적으로 가까운 데이터센터를 선택하면 더 낮은 지연시간을 얻을 수 있습니다.
1단계: 서버 초기화
VPS를 구매한 후, SSH로 서버에 접속합니다:
ssh root@서버IP주소
먼저 시스템을 업데이트하고 기본 도구를 설치합니다:
apt update && apt upgrade -y
apt install -y curl wget git build-essential
보안을 위해 OpenClaw 실행 전용 비root 사용자를 생성합니다:
adduser openclaw
usermod -aG sudo openclaw
새 사용자로 전환합니다:
su - openclaw
이후의 모든 작업은 이 사용자 계정에서 진행합니다.
2단계: Node.js 22 설치
OpenClaw은 Node.js 22 이상을 요구합니다. NodeSource 저장소를 사용하여 설치합니다:
curl -fsSL https://deb.nodesource.com/setup_22.x | sudo -E bash -
sudo apt install -y nodejs
설치된 버전을 확인합니다:
node --version # v22.x.x가 표시되어야 합니다
npm --version
버전 관리자를 선호한다면, nvm으로도 설치할 수 있습니다:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
source ~/.bashrc
nvm install 22
nvm use 22
3단계: OpenClaw 설치
npm으로 OpenClaw을 전역 설치합니다:
npm install -g openclaw@latest
설정 마법사를 실행하여 초기 설정을 완료합니다:
openclaw onboard
설정 마법사는 순서대로 다음을 안내합니다:
- AI 모델 공급자 선택 (Anthropic Claude, OpenAI 등)
- 해당 API 키 입력
- 채팅 채널 설정 (나중에 추가할 수도 있습니다)
- 기본 설정 완료
초기 설정이 완료되면, 설정 파일이 ~/.config/openclaw/openclaw.json5에 저장됩니다.
4단계: 게이트웨이 테스트
먼저 게이트웨이를 수동으로 시작하여 정상 동작을 확인합니다:
openclaw gateway start
다른 터미널 창에서 진단을 실행합니다:
openclaw doctor
모든 검사 항목이 통과하면, OpenClaw이 정상적으로 작동하고 있는 것입니다. Ctrl+C로 게이트웨이를 중지한 다음, 시스템 서비스로 자동 실행되도록 설정하겠습니다.
5단계: systemd 서비스 설정으로 24시간 운영
systemd 서비스 파일을 만들어 OpenClaw이 백그라운드에서 계속 실행되고, 서버 재시작 후에도 자동으로 복구되도록 합니다:
sudo nano /etc/systemd/system/openclaw.service
다음 내용을 입력합니다:
[Unit]
Description=OpenClaw AI Assistant Gateway
After=network-online.target
Wants=network-online.target
[Service]
Type=simple
User=openclaw
Group=openclaw
ExecStart=/usr/bin/openclaw gateway start
Restart=always
RestartSec=10
Environment=NODE_ENV=production
# 보안 강화
NoNewPrivileges=true
ProtectSystem=strict
ReadWritePaths=/home/openclaw
[Install]
WantedBy=multi-user.target
참고: nvm으로 Node.js를 설치한 경우, ExecStart의 경로를 nvm 하위의 실제 경로로 변경해야 합니다. which openclaw 명령으로 정확한 경로를 확인하세요.
서비스를 활성화하고 시작합니다:
sudo systemctl daemon-reload
sudo systemctl enable openclaw
sudo systemctl start openclaw
실행 상태를 확인합니다:
sudo systemctl status openclaw
실시간 로그를 확인합니다:
sudo journalctl -u openclaw -f
6단계: 방화벽 설정
UFW로 기본적인 방화벽 규칙을 설정합니다:
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow 22/tcp # SSH
sudo ufw allow 80/tcp # HTTP
sudo ufw allow 443/tcp # HTTPS
sudo ufw enable
중요: 18789 포트를 외부에 개방하지 마세요. OpenClaw 게이트웨이는 Nginx 리버스 프록시를 통해 외부에 서비스해야 합니다.
7단계: 자동 업데이트 설정
OpenClaw은 업데이트가 자주 이루어지므로, 정기적으로 업데이트를 확인하고 설치하는 것을 권장합니다. 간단한 업데이트 스크립트를 만들 수 있습니다:
nano ~/update-openclaw.sh
#!/bin/bash
npm update -g openclaw@latest
sudo systemctl restart openclaw
echo "OpenClaw updated at $(date)" >> ~/openclaw-updates.log
chmod +x ~/update-openclaw.sh
crontab으로 매주 자동 업데이트를 설정할 수 있습니다:
crontab -e
다음 줄을 추가합니다:
0 4 * * 1 /home/openclaw/update-openclaw.sh
매주 월요일 새벽 4시에 자동으로 업데이트가 실행됩니다.
배포 후 확인 체크리스트
모든 단계를 완료한 후, 하나씩 확인합니다:
- [ ]
openclaw doctor모든 검사 통과 - [ ]
systemctl status openclaw에서 active (running) 표시 - [ ] 방화벽 활성화 완료, 18789 포트 외부 미개방
- [ ] 채팅 채널에서 메시지 정상 송수신
- [ ] 서버 재시작 후 OpenClaw 자동 시작
마무리
이제 VPS에서 24시간 운영되는 개인 AI 어시스턴트를 갖게 되었습니다. 여러 채팅 플랫폼을 동시에 연결하고, 언제든지 요청에 응답할 수 있습니다. 다음 단계로는 Nginx 리버스 프록시와 SSL 인증서를 설정하여 보안을 강화하는 것을 권장합니다. 전체 설정 참고와 고급 기능 설명은 OpenClaw 공식 문서를 참고하시고, 소스 코드와 이슈 트래킹은 OpenClaw GitHub 저장소를 방문해 주세요.