Oracle Cloud(OCI)의 OpenClaw
목표
Oracle Cloud의 항상 무료 ARM 계층에서 영구 OpenClaw 게이트웨이를 실행합니다.
Oracle의 무료 계층은 OpenClaw에 매우 적합할 수 있지만(특히 이미 OCI 계정이 있는 경우) 다음과 같은 단점이 있습니다.
- ARM 아키텍처(대부분의 경우 작동하지만 일부 바이너리는 x86 전용일 수 있음)
- 용량 및 가입이 까다로울 수 있음
비용 비교(2026년)
| 공급자 | 계획 | 사양 | 가격/월 | 메모 |
|---|---|---|---|---|
| 오라클 클라우드 | 항상 무료 ARM | 최대 4개의 OCPU, 24GB RAM | $0 | ARM, 제한된 용량 |
| 헤츠너 | CX22 | vCPU 2개, 4GB RAM | ~ $4 | 가장 저렴한 유료 옵션 |
| 디지털오션 | 기본 | vCPU 1개, 1GB RAM | $6 | 쉬운 UI, 좋은 문서 |
| 불터 | 클라우드 컴퓨팅 | vCPU 1개, 1GB RAM | $6 | 많은 위치 |
| 리노드 | 나노드 | vCPU 1개, 1GB RAM | $5 | 이제 Akamai의 일부 |
전제조건
- Oracle Cloud 계정(가입) — 문제가 발생한 경우 커뮤니티 가입 가이드를 참조하세요.
- Tailscale 계정(tailscale.com에서 무료)
- ~30분
1) OCI 인스턴스 생성
- Oracle Cloud Console에 로그인합니다.
- 컴퓨팅 → 인스턴스 → 인스턴스 생성으로 이동합니다.
- 구성:
- 이름:
openclaw - 이미지: 우분투 24.04(aarch64)
- 모양:
VM.Standard.A1.Flex(암페어 ARM) - OCPU: 2개(또는 최대 4개)
- 메모리: 12GB(또는 최대 24GB)
- 부팅 볼륨: 50GB(최대 200GB 무료)
- SSH 키: 공개 키 추가
- 이름:
- 만들기를 클릭하세요.
- 공용 IP 주소를 기록해 두세요
팁: "용량 부족"으로 인해 인스턴스 생성이 실패하는 경우 다른 가용성 도메인을 시도하거나 나중에 다시 시도하세요. 프리 티어 용량은 제한되어 있습니다.
2) 연결 및 업데이트
# Connect via public IP
ssh ubuntu@YOUR_PUBLIC_IP
# Update system
sudo apt update && sudo apt upgrade -y
sudo apt install -y build-essential참고: build-essential는 일부 종속성의 ARM 컴파일에 필요합니다.
3) 사용자 및 호스트 이름 구성
# Set hostname
sudo hostnamectl set-hostname openclaw
# Set password for ubuntu user
sudo passwd ubuntu
# Enable lingering (keeps user services running after logout)
sudo loginctl enable-linger ubuntu4) 테일스케일 설치
curl -fsSL https://tailscale.com/install.sh | sh
sudo tailscale up --ssh --hostname=openclaw이렇게 하면 Tailscale SSH가 활성화되므로 tailnet의 모든 장치에서 ssh openclaw를 통해 연결할 수 있습니다. 공용 IP가 필요하지 않습니다.
확인:
tailscale status이제부터 Tailscale: ssh ubuntu@openclaw (또는 Tailscale IP 사용)를 통해 연결하세요.
5) OpenClaw 설치
curl -fsSL https://openclaw.ai/install.sh | bash
source ~/.bashrc"봇을 어떻게 부화하시겠습니까?"라는 메시지가 표시되면 **"나중에 수행"**을 선택합니다.
참고: ARM 네이티브 빌드 문제가 발생하면 Homebrew에 도달하기 전에 시스템 패키지(예:
sudo apt install -y build-essential)부터 시작하세요.
6) 게이트웨이(루프백 + 토큰 인증) 구성 및 Tailscale Serve 활성화
토큰 인증을 기본값으로 사용합니다. 이는 예측 가능하며 "안전하지 않은 인증" 제어 UI 플래그가 필요하지 않습니다.
# Keep the Gateway private on the VM
openclaw config set gateway.bind loopback
# Require auth for the Gateway + Control UI
openclaw config set gateway.auth.mode token
openclaw doctor --generate-gateway-token
# Expose over Tailscale Serve (HTTPS + tailnet access)
openclaw config set gateway.tailscale.mode serve
openclaw config set gateway.trustedProxies '["127.0.0.1"]'
systemctl --user restart openclaw-gateway7) 확인
# Check version
openclaw --version
# Check daemon status
systemctl --user status openclaw-gateway
# Check Tailscale Serve
tailscale serve status
# Test local response
curl http://localhost:187898) VCN 보안을 잠급니다.
이제 모든 것이 작동하므로 VCN을 잠가서 Tailscale을 제외한 모든 트래픽을 차단합니다. OCI의 가상 클라우드 네트워크는 네트워크 에지에서 방화벽 역할을 합니다. 즉, 트래픽이 인스턴스에 도달하기 전에 차단됩니다.
- OCI 콘솔에서 네트워킹 → 가상 클라우드 네트워크로 이동합니다.
- VCN → 보안 목록 → 기본 보안 목록을 클릭합니다.
- 다음을 제외한 모든 수신 규칙을 제거합니다.
0.0.0.0/0 UDP 41641(꼬리비늘)
- 기본 송신 규칙 유지(모든 아웃바운드 허용)
이는 포트 22, HTTP, HTTPS 및 네트워크 에지의 기타 모든 항목에서 SSH를 차단합니다. 이제부터 Tailscale을 통해서만 연결할 수 있습니다.
컨트롤 UI에 액세스
Tailscale 네트워크의 모든 장치에서:
https://openclaw.<tailnet-name>.ts.net/<tailnet-name>를 테일넷 이름으로 바꾸세요(tailscale status에 표시됨).
SSH 터널이 필요하지 않습니다. Tailscale은 다음을 제공합니다.
- HTTPS 암호화(자동 인증서)
- Tailscale ID를 통한 인증
- 테일넷의 모든 장치(노트북, 휴대폰 등)에서 액세스
보안: VCN + Tailscale(권장 기준)
VCN이 잠겨 있고(UDP 41641만 열려 있음) 게이트웨이가 루프백에 바인딩되어 있으면 강력한 심층 방어가 가능합니다. 공용 트래픽은 네트워크 에지에서 차단되고 관리 액세스는 테일넷을 통해 이루어집니다.
이 설정은 순전히 인터넷 전체의 SSH 무차별 대입을 중지하기 위해 추가 호스트 기반 방화벽 규칙에 대한 필요를 제거합니다. 하지만 여전히 OS를 업데이트하고 openclaw security audit를 실행하고 실수로 공용 인터페이스에서 수신 대기하고 있지 않은지 확인해야 합니다.
이미 보호되는 항목
| 전통적 단계 | 필요하신가요? | 왜 |
|---|---|---|
| UFW 방화벽 | 아니요 | 트래픽이 인스턴스에 도달하기 전에 VCN 차단 |
| 실패2반 | 아니요 | VCN에서 포트 22가 차단된 경우 무차별 대입 금지 |
| SSHD 강화 | 아니요 | Tailscale SSH는 sshd를 사용하지 않습니다 |
| 루트 로그인 비활성화 | 아니요 | Tailscale은 시스템 사용자가 아닌 Tailscale ID를 사용합니다 |
| SSH 키 전용 인증 | 아니요 | Tailscale은 tailnet을 통해 인증 |
| IPv6 강화 | 일반적으로 | VCN/서브넷 설정에 따라 다릅니다. 실제로 할당/노출된 내용 확인 |
여전히 추천
- 자격증명 권한:
chmod 700 ~/.openclaw - 보안 감사:
openclaw security audit - 시스템 업데이트:
sudo apt update && sudo apt upgrade정기적 - Tailscale 모니터링: Tailscale 관리 콘솔에서 장치를 검토합니다.
보안 상태 확인
# Confirm no public ports listening
sudo ss -tlnp | grep -v '127.0.0.1\|::1'
# Verify Tailscale SSH is active
tailscale status | grep -q 'offers: ssh' && echo "Tailscale SSH active"
# Optional: disable sshd entirely
sudo systemctl disable --now ssh대체: SSH 터널
Tailscale Serve가 작동하지 않으면 SSH 터널을 사용하십시오.
# From your local machine (via Tailscale)
ssh -L 18789:127.0.0.1:18789 ubuntu@openclaw그런 다음 http://localhost:18789를 엽니다.
문제 해결
인스턴스 생성 실패("용량 부족")
무료 등급 ARM 인스턴스가 인기가 있습니다. 시도해 보세요:
- 다양한 가용성 도메인
- 사용량이 적은 시간(이른 아침)에 재시도
- 모양 선택 시 '항상 무료' 필터를 사용하세요.
Tailscale이 연결되지 않습니다
# Check status
sudo tailscale status
# Re-authenticate
sudo tailscale up --ssh --hostname=openclaw --reset게이트웨이가 시작되지 않습니다
openclaw gateway status
openclaw doctor --non-interactive
journalctl --user -u openclaw-gateway -n 50컨트롤 UI에 접근할 수 없습니다
# Verify Tailscale Serve is running
tailscale serve status
# Check gateway is listening
curl http://localhost:18789
# Restart if needed
systemctl --user restart openclaw-gatewayARM 바이너리 문제
일부 도구에는 ARM 빌드가 없을 수 있습니다. 확인:
uname -m # Should show aarch64대부분의 npm 패키지는 잘 작동합니다. 바이너리의 경우 linux-arm64 또는 aarch64 릴리스를 찾으세요.
지속성
모든 주 거주 지역:
~/.openclaw/— 구성, 자격 증명, 세션 데이터~/.openclaw/workspace/— 작업 공간(SOUL.md, 메모리, 아티팩트)
정기적으로 백업:
tar -czvf openclaw-backup.tar.gz ~/.openclaw ~/.openclaw/workspace참고 항목
- 게이트웨이 원격 접속 — 기타 원격 접속 패턴
- Tailscale 통합 — 전체 Tailscale 문서
- 게이트웨이 구성 — 모든 구성 옵션
- DigitalOcean 가이드 — 유료 + 간편한 가입을 원하는 경우
- Hetzner 가이드 — Docker 기반 대안