OpenClaw auf Oracle Cloud (OCI)
Ziel
Ein dauerhaftes OpenClaw-Gateway auf Oracle Clouds Always Free ARM-Tier betreiben.
Oracle’s Free Tier kann gut zu OpenClaw passen (besonders wenn du bereits ein OCI-Konto hast), bringt aber Kompromisse mit sich:
- ARM-Architektur (das meiste funktioniert, aber manche Binaries sind nur für x86 verfügbar)
- Kapazität und Anmeldung können umständlich sein
Kostenvergleich (2026)
| Anbieter | Plan | Spezifikationen | Preis/Monat | Hinweise |
|---|---|---|---|---|
| Oracle Cloud | Always Free ARM | bis zu 4 OCPU, 24GB RAM | 0 $ | ARM, begrenzte Kapazität |
| Hetzner | CX22 | 2 vCPU, 4GB RAM | ~ 4 $ | Günstigste bezahlte Option |
| DigitalOcean | Basic | 1 vCPU, 1GB RAM | 6 $ | Einfache UI, gute Doku |
| Vultr | Cloud Compute | 1 vCPU, 1GB RAM | 6 $ | Viele Standorte |
| Linode | Nanode | 1 vCPU, 1GB RAM | 5 $ | Jetzt Teil von Akamai |
Voraussetzungen
- Oracle-Cloud-Konto (Anmeldung) — siehe Community-Anmeldeguide bei Problemen
- Tailscale-Konto (kostenlos unter tailscale.com)
- ~30 Minuten
1) OCI-Instanz erstellen
- Melde dich bei der Oracle Cloud Console an
- Navigiere zu Compute → Instances → Create Instance
- Konfiguriere:
- Name:
openclaw - Image: Ubuntu 24.04 (aarch64)
- Shape:
VM.Standard.A1.Flex(Ampere ARM) - OCPUs: 2 (oder bis zu 4)
- Memory: 12 GB (oder bis zu 24 GB)
- Boot volume: 50 GB (bis zu 200 GB kostenlos)
- SSH key: Füge deinen öffentlichen Schlüssel hinzu
- Name:
- Klicke auf Create
- Notiere dir die öffentliche IP-Adresse
Tipp: Falls die Instanzerstellung mit „Out of capacity” fehlschlägt, versuche eine andere Availability Domain oder probiere es später erneut. Die Free-Tier-Kapazität ist begrenzt.
2) Verbinden und aktualisieren
# Per öffentlicher IP verbinden
ssh ubuntu@DEINE_ÖFFENTLICHE_IP
# System aktualisieren
sudo apt update && sudo apt upgrade -y
sudo apt install -y build-essential
Hinweis: build-essential wird für die ARM-Kompilierung einiger Abhängigkeiten benötigt.
3) Benutzer und Hostname konfigurieren
# Hostname setzen
sudo hostnamectl set-hostname openclaw
# Passwort für ubuntu-Benutzer setzen
sudo passwd ubuntu
# Lingering aktivieren (hält User-Services nach dem Logout am Laufen)
sudo loginctl enable-linger ubuntu
4) Tailscale installieren
curl -fsSL https://tailscale.com/install.sh | sh
sudo tailscale up --ssh --hostname=openclaw
Das aktiviert Tailscale SSH, sodass du dich per ssh openclaw von jedem Gerät in deinem Tailnet verbinden kannst — keine öffentliche IP nötig.
Prüfen:
tailscale status
Ab jetzt per Tailscale verbinden: ssh ubuntu@openclaw (oder verwende die Tailscale-IP).
5) OpenClaw installieren
curl -fsSL https://openclaw.ai/install.sh | bash
source ~/.bashrc
Wenn gefragt wird „How do you want to hatch your bot?”, wähle „Do this later”.
Hinweis: Bei ARM-nativen Build-Problemen beginne mit System-Paketen (z. B.
sudo apt install -y build-essential) bevor du zu Homebrew greifst.
6) Gateway konfigurieren (Loopback + Token-Auth) und Tailscale Serve aktivieren
Verwende Token-Auth als Standard. Das ist vorhersehbar und vermeidet „Insecure Auth”-Flags in der Control-UI.
# Gateway auf der VM privat halten
openclaw config set gateway.bind loopback
# Auth für Gateway + Control-UI verlangen
openclaw config set gateway.auth.mode token
openclaw doctor --generate-gateway-token
# Über Tailscale Serve bereitstellen (HTTPS + Tailnet-Zugriff)
openclaw config set gateway.tailscale.mode serve
openclaw config set gateway.trustedProxies '["127.0.0.1"]'
systemctl --user restart openclaw-gateway
7) Prüfen
# Version prüfen
openclaw --version
# Daemon-Status prüfen
systemctl --user status openclaw-gateway
# Tailscale Serve prüfen
tailscale serve status
# Lokale Antwort testen
curl http://localhost:18789
8) VCN-Sicherheit absichern
Nachdem alles funktioniert, sichere das VCN ab, um sämtlichen Traffic außer Tailscale zu blockieren. OCI’s Virtual Cloud Network wirkt als Firewall am Netzwerkrand — Traffic wird blockiert, bevor er deine Instanz erreicht.
- Gehe zu Networking → Virtual Cloud Networks in der OCI Console
- Klicke auf dein VCN → Security Lists → Default Security List
- Entferne alle Ingress-Regeln außer:
0.0.0.0/0 UDP 41641(Tailscale)
- Behalte die Standard-Egress-Regeln bei (allen ausgehenden Traffic erlauben)
Das blockiert SSH auf Port 22, HTTP, HTTPS und alles andere am Netzwerkrand. Ab jetzt kannst du dich nur noch per Tailscale verbinden.
Control-UI aufrufen
Von jedem Gerät in deinem Tailscale-Netzwerk:
https://openclaw.<tailnet-name>.ts.net/
Ersetze <tailnet-name> durch deinen Tailnet-Namen (sichtbar in tailscale status).
Kein SSH-Tunnel nötig. Tailscale bietet:
- HTTPS-Verschlüsselung (automatische Zertifikate)
- Authentifizierung über Tailscale-Identität
- Zugriff von jedem Gerät in deinem Tailnet (Laptop, Handy usw.)
Sicherheit: VCN + Tailscale (empfohlene Basis)
Mit dem abgesicherten VCN (nur UDP 41641 offen) und dem Gateway an Loopback gebunden bekommst du starke Defense-in-Depth: Öffentlicher Traffic wird am Netzwerkrand blockiert, und Admin-Zugriff läuft über dein Tailnet.
Dieses Setup macht in vielen Fällen zusätzliche Host-basierte Firewall-Regeln überflüssig, die nur Internet-weite SSH-Brute-Force stoppen sollen — aber du solltest das OS trotzdem aktuell halten, openclaw security audit ausführen und sicherstellen, dass du nicht versehentlich auf öffentlichen Interfaces lauschst.
Was bereits geschützt ist
| Traditioneller Schritt | Nötig? | Warum |
|---|---|---|
| UFW-Firewall | Nein | VCN blockiert bevor Traffic die Instanz erreicht |
| fail2ban | Nein | Keine Brute-Force wenn Port 22 am VCN blockiert |
| sshd-Härtung | Nein | Tailscale SSH nutzt nicht sshd |
| Root-Login deaktivieren | Nein | Tailscale nutzt Tailscale-Identität, nicht Systembenutzer |
| SSH nur mit Schlüssel | Nein | Tailscale authentifiziert über dein Tailnet |
| IPv6-Härtung | Meist nicht | Hängt von deinen VCN/Subnet-Einstellungen ab; prüfe was tatsächlich zugewiesen/exponiert ist |
Weiterhin empfohlen
- Zugangsdaten-Berechtigungen:
chmod 700 ~/.openclaw - Sicherheitsaudit:
openclaw security audit - System-Updates:
sudo apt update && sudo apt upgraderegelmäßig - Tailscale überwachen: Geräte in der Tailscale Admin-Konsole prüfen
Sicherheitsstatus prüfen
# Bestätigen, dass keine öffentlichen Ports lauschen
sudo ss -tlnp | grep -v '127.0.0.1\|::1'
# Prüfen, dass Tailscale SSH aktiv ist
tailscale status | grep -q 'offers: ssh' && echo "Tailscale SSH active"
# Optional: sshd komplett deaktivieren
sudo systemctl disable --now ssh
Fallback: SSH-Tunnel
Falls Tailscale Serve nicht funktioniert, verwende einen SSH-Tunnel:
# Von deinem lokalen Rechner (über Tailscale)
ssh -L 18789:127.0.0.1:18789 ubuntu@openclaw
Dann öffne http://localhost:18789.
Fehlerbehebung
Instanzerstellung schlägt fehl („Out of capacity”)
Free-Tier-ARM-Instanzen sind beliebt. Versuche:
- Andere Availability Domain
- Zu Nebenzeiten erneut versuchen (früher Morgen)
- Den „Always Free”-Filter bei der Shape-Auswahl verwenden
Tailscale verbindet nicht
# Status prüfen
sudo tailscale status
# Erneut authentifizieren
sudo tailscale up --ssh --hostname=openclaw --reset
Gateway startet nicht
openclaw gateway status
openclaw doctor --non-interactive
journalctl --user -u openclaw-gateway -n 50
Control-UI nicht erreichbar
# Prüfen ob Tailscale Serve läuft
tailscale serve status
# Prüfen ob Gateway lauscht
curl http://localhost:18789
# Bei Bedarf neu starten
systemctl --user restart openclaw-gateway
ARM-Binary-Probleme
Manche Tools haben keine ARM-Builds. Prüfe:
uname -m # Sollte aarch64 zeigen
Die meisten npm-Pakete funktionieren problemlos. Für Binaries such nach linux-arm64 oder aarch64 Releases.
Persistenz
Alle Daten befinden sich in:
~/.openclaw/— Konfiguration, Zugangsdaten, Sitzungsdaten~/.openclaw/workspace/— Workspace (SOUL.md, Memory, Artefakte)
Regelmäßig sichern:
tar -czvf openclaw-backup.tar.gz ~/.openclaw ~/.openclaw/workspace
Siehe auch
- Gateway-Fernzugriff — weitere Fernzugriffsmuster
- Tailscale-Integration — vollständige Tailscale-Doku
- Gateway-Konfiguration — alle Konfigurationsoptionen
- DigitalOcean-Guide — wenn du bezahlt + einfachere Anmeldung möchtest
- Hetzner-Guide — Docker-basierte Alternative