Sicherer Fernzugriff auf OpenClaw
Erfahren Sie, wie Sie Ihr OpenClaw-Gateway sicher fuer den Fernzugriff freigeben, mit SSH-Tunneln, Reverse-Proxies und VPNs unter Beibehaltung der Sicherheit.
OpenClaw Guides
Tutorial Authors
Warum Fernzugriff?
Standardmaessig bindet OpenClaw an 127.0.0.1 (nur localhost), was die sicherste Konfiguration ist. Sie koennten jedoch Fernzugriff benoetigen, wenn:
- OpenClaw auf einem Heimserver laeuft, waehrend Sie unterwegs sind
- Auf einem VPS gehostet und von mehreren Geraeten verbunden wird
- Ihr KI-Assistent im lokalen Netzwerk geteilt werden soll
Warnung: Setzen Sie OpenClaw niemals direkt dem Internet aus, ohne ordnungsgemaesse Authentifizierung und Verschluesselung. Diese Anleitung behandelt nur sichere Methoden.
Methode 1: SSH-Tunnel (Empfohlen fuer persoenliche Nutzung)
SSH-Tunneling ist die einfachste und sicherste Methode fuer persoenlichen Fernzugriff.
Auf Ihrem Remote-Server
Stellen Sie sicher, dass OpenClaw auf localhost laeuft:
openclaw gateway start # Gateway listening on http://127.0.0.1:18789
Auf Ihrem lokalen Rechner
SSH-Tunnel erstellen:
ssh -L 18789:localhost:18789 user@your-server-ip
Jetzt koennen Sie OpenClaw unter http://localhost:18789 auf Ihrem lokalen Rechner erreichen.
Persistenter SSH-Tunnel mit autossh
Fuer einen Tunnel, der automatisch wieder verbindet:
# autossh installieren # macOS brew install autossh # Ubuntu/Debian sudo apt install autossh # Persistenten Tunnel erstellen autossh -M 0 -f -N -L 18789:localhost:18789 user@your-server-ip
Methode 2: Reverse-Proxy mit Nginx
Fuer fortgeschrittenere Setups verwenden Sie Nginx als Reverse-Proxy mit SSL-Terminierung.
Nginx und Certbot installieren
# Ubuntu/Debian sudo apt update sudo apt install nginx certbot python3-certbot-nginx
Nginx konfigurieren
Erstellen Sie /etc/nginx/sites-available/openclaw:
server {
listen 80;
server_name openclaw.yourdomain.com;
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_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_cache_bypass $http_upgrade;
}
}
Site aktivieren:
sudo ln -s /etc/nginx/sites-available/openclaw /etc/nginx/sites-enabled/ sudo nginx -t sudo systemctl reload nginx
SSL mit Let's Encrypt hinzufuegen
sudo certbot --nginx -d openclaw.yourdomain.com
Basis-Authentifizierung hinzufuegen
Passwortdatei generieren:
sudo apt install apache2-utils sudo htpasswd -c /etc/nginx/.htpasswd your-username
Nginx-Konfiguration aktualisieren:
server {
listen 443 ssl;
server_name openclaw.yourdomain.com;
# SSL-Konfiguration von Certbot hinzugefuegt...
location / {
auth_basic "OpenClaw Access";
auth_basic_user_file /etc/nginx/.htpasswd;
proxy_pass http://127.0.0.1:18789;
# ... andere Proxy-Einstellungen
}
}
Methode 3: WireGuard VPN
Fuer hoechste Sicherheit verwenden Sie ein VPN, um auf Ihr Heimnetzwerk zuzugreifen.
WireGuard installieren
# Server (Ubuntu/Debian) sudo apt install wireguard # Schluessel generieren wg genkey | tee privatekey | wg pubkey > publickey
Server-Konfiguration
Erstellen Sie /etc/wireguard/wg0.conf:
[Interface] PrivateKey = <server-private-key> Address = 10.0.0.1/24 ListenPort = 51820 [Peer] PublicKey = <client-public-key> AllowedIPs = 10.0.0.2/32
Client-Konfiguration
[Interface] PrivateKey = <client-private-key> Address = 10.0.0.2/24 [Peer] PublicKey = <server-public-key> Endpoint = your-server-ip:51820 AllowedIPs = 10.0.0.1/32 PersistentKeepalive = 25
WireGuard starten
# Server sudo wg-quick up wg0 sudo systemctl enable wg-quick@wg0 # Client sudo wg-quick up wg0
Jetzt OpenClaw ueber die VPN-IP erreichen: http://10.0.0.1:18789
Methode 4: Cloudflare Tunnel (Zero Trust)
Cloudflare Tunnel bietet sicheren Zugriff ohne Port-Freigabe.
cloudflared installieren
# macOS brew install cloudflare/cloudflare/cloudflared # Linux curl -L --output cloudflared.deb https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64.deb sudo dpkg -i cloudflared.deb
Authentifizieren und Tunnel erstellen
cloudflared tunnel login cloudflared tunnel create openclaw
Tunnel konfigurieren
Erstellen Sie ~/.cloudflared/config.yml:
tunnel: <tunnel-id>
credentials-file: /home/user/.cloudflared/<tunnel-id>.json
ingress:
- hostname: openclaw.yourdomain.com
service: http://localhost:18789
- service: http_status:404
Tunnel ausfuehren
cloudflared tunnel route dns openclaw openclaw.yourdomain.com cloudflared tunnel run openclaw
Sicherheits-Best-Practices
1. Rate Limiting aktivieren
In Ihrer ~/.openclaw/openclaw.json:
{
"security": {
"rateLimiting": {
"enabled": true,
"maxRequests": 60,
"windowMs": 60000
}
}
}
2. Starke API-Keys verwenden
# API-Keys regelmaessig rotieren openclaw config set api-key
3. Zugriffsprotokolle ueberwachen
# Gateway-Logs pruefen openclaw logs --follow
4. Fail2Ban einrichten (fuer Nginx)
sudo apt install fail2ban # /etc/fail2ban/jail.local erstellen [nginx-http-auth] enabled = true
Vergleichstabelle
| Methode | Sicherheit | Komplexitaet | Am besten fuer | |---------|------------|--------------|----------------| | SSH-Tunnel | Hoch | Niedrig | Persoenliche Nutzung | | Nginx + SSL | Hoch | Mittel | Oeffentlicher Zugriff | | WireGuard VPN | Sehr Hoch | Mittel | Team-Zugriff | | Cloudflare Tunnel | Hoch | Niedrig | Zero-Trust-Setup |