OpenClaw
Segurança10 min de leitura

Como Acessar o OpenClaw Remotamente de Forma Segura

Aprenda como expor com seguranca seu gateway do OpenClaw para acesso remoto usando tuneis SSH, proxies reversos e VPNs mantendo a seguranca.

O

OpenClaw Guides

Tutorial Authors

Por que Acesso Remoto?

Por padrao, o OpenClaw se vincula a 127.0.0.1 (apenas localhost), que e a configuracao mais segura. No entanto, voce pode precisar de acesso remoto quando:

  • Executa o OpenClaw em um servidor domestico enquanto viaja
  • Hospeda em um VPS e conecta de varios dispositivos
  • Compartilha seu assistente de IA na sua rede local

Aviso: Nunca exponha o OpenClaw diretamente a internet sem autenticacao e criptografia adequadas. Este guia aborda apenas metodos seguros.

Metodo 1: Tunel SSH (Recomendado para Uso Pessoal)

O tunelamento SSH e o metodo mais simples e seguro para acesso remoto pessoal.

No Seu Servidor Remoto

Certifique-se de que o OpenClaw esta rodando no localhost:

bash
openclaw gateway start
# Gateway listening on http://127.0.0.1:18789

Na Sua Maquina Local

Crie um tunel SSH:

bash
ssh -L 18789:localhost:18789 usuario@ip-do-seu-servidor

Agora voce pode acessar o OpenClaw em http://localhost:18789 na sua maquina local.

Tunel SSH Persistente com autossh

Para um tunel que reconecta automaticamente:

bash
# Instalar autossh
# macOS
brew install autossh

# Ubuntu/Debian
sudo apt install autossh

# Criar tunel persistente
autossh -M 0 -f -N -L 18789:localhost:18789 usuario@ip-do-seu-servidor

Metodo 2: Proxy Reverso com Nginx

Para configuracoes mais avancadas, use o Nginx como proxy reverso com terminacao SSL.

Instalar Nginx e Certbot

bash
# Ubuntu/Debian
sudo apt update
sudo apt install nginx certbot python3-certbot-nginx

Configurar Nginx

Crie /etc/nginx/sites-available/openclaw:

nginx
server {
    listen 80;
    server_name openclaw.seudominio.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;
    }
}

Ative o site:

bash
sudo ln -s /etc/nginx/sites-available/openclaw /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx

Adicionar SSL com Let's Encrypt

bash
sudo certbot --nginx -d openclaw.seudominio.com

Adicionar Autenticacao Basica

Gere um arquivo de senha:

bash
sudo apt install apache2-utils
sudo htpasswd -c /etc/nginx/.htpasswd seu-usuario

Atualize sua configuracao do Nginx:

nginx
server {
    listen 443 ssl;
    server_name openclaw.seudominio.com;

    # Configuracao SSL adicionada pelo certbot...

    location / {
        auth_basic "Acesso ao OpenClaw";
        auth_basic_user_file /etc/nginx/.htpasswd;

        proxy_pass http://127.0.0.1:18789;
        # ... outras configuracoes de proxy
    }
}

Metodo 3: VPN WireGuard

Para a mais alta seguranca, use uma VPN para acessar sua rede domestica.

Instalar WireGuard

bash
# Servidor (Ubuntu/Debian)
sudo apt install wireguard

# Gerar chaves
wg genkey | tee privatekey | wg pubkey > publickey

Configuracao do Servidor

Crie /etc/wireguard/wg0.conf:

ini
[Interface]
PrivateKey = <chave-privada-servidor>
Address = 10.0.0.1/24
ListenPort = 51820

[Peer]
PublicKey = <chave-publica-cliente>
AllowedIPs = 10.0.0.2/32

Configuracao do Cliente

ini
[Interface]
PrivateKey = <chave-privada-cliente>
Address = 10.0.0.2/24

[Peer]
PublicKey = <chave-publica-servidor>
Endpoint = ip-do-seu-servidor:51820
AllowedIPs = 10.0.0.1/32
PersistentKeepalive = 25

Iniciar WireGuard

bash
# Servidor
sudo wg-quick up wg0
sudo systemctl enable wg-quick@wg0

# Cliente
sudo wg-quick up wg0

Agora acesse o OpenClaw via IP da VPN: http://10.0.0.1:18789

Metodo 4: Cloudflare Tunnel (Zero Trust)

O Cloudflare Tunnel fornece acesso seguro sem expor portas.

Instalar cloudflared

bash
# 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

Autenticar e Criar Tunnel

bash
cloudflared tunnel login
cloudflared tunnel create openclaw

Configurar o Tunnel

Crie ~/.cloudflared/config.yml:

yaml
tunnel: <tunnel-id>
credentials-file: /home/usuario/.cloudflared/<tunnel-id>.json

ingress:
  - hostname: openclaw.seudominio.com
    service: http://localhost:18789
  - service: http_status:404

Executar o Tunnel

bash
cloudflared tunnel route dns openclaw openclaw.seudominio.com
cloudflared tunnel run openclaw

Melhores Praticas de Seguranca

1. Ative Limitacao de Taxa

Em seu ~/.openclaw/openclaw.json:

json
{
  "security": {
    "rateLimiting": {
      "enabled": true,
      "maxRequests": 60,
      "windowMs": 60000
    }
  }
}

2. Use Chaves de API Fortes

bash
# Rotacione suas chaves de API regularmente
openclaw config set api-key

3. Monitore Logs de Acesso

bash
# Verificar logs do gateway
openclaw logs --follow

4. Configure Fail2Ban (para Nginx)

bash
sudo apt install fail2ban

# Crie /etc/fail2ban/jail.local
[nginx-http-auth]
enabled = true

Tabela Comparativa

| Metodo | Seguranca | Complexidade | Melhor Para | |--------|----------|------------|----------| | Tunel SSH | Alta | Baixa | Uso pessoal | | Nginx + SSL | Alta | Media | Acesso publico | | VPN WireGuard | Muito Alta | Media | Acesso em equipe | | Cloudflare Tunnel | Alta | Baixa | Configuracao zero-trust |

Proximos Passos