---
title: "Erro de SSL/TLS — Certificado OpenClaw"
url: "https://openclaw.ia.br/troubleshooting/erro-ssl/"
markdown_url: "https://openclaw.ia.br/troubleshooting/erro-ssl.MD"
description: "Como resolver erros de certificado SSL no OpenClaw. Certificados expirados, inválidos e configuração."
date: ""
author: ""
---

# Erro de SSL/TLS — Certificado OpenClaw

Como resolver erros de certificado SSL no OpenClaw. Certificados expirados, inválidos e configuração.


# Erro de SSL/TLS

O OpenClaw está dando erro de certificado? Veja como resolver.

## Sintomas

```
Error: CERT_HAS_EXPIRED
Error: UNABLE_TO_VERIFY_LEAF_SIGNATURE
Error: SELF_SIGNED_CERT_IN_CHAIN
Error: SSL certificate problem
```

## Causas e Soluções

### 1. Certificado Expirado

**No seu servidor:**
```bash
# Verificar data de expiração
openssl s_client -connect seu-dominio.com:443 2>/dev/null | openssl x509 -noout -dates

# Renovar com Let's Encrypt
sudo certbot renew
```

**Em serviço externo:**
O serviço que você está chamando tem certificado expirado. Aguarde ou contate o provedor.

### 2. Certificado Auto-assinado

**Se for seu servidor em desenvolvimento:**
```yaml
# config.yaml
http:
  reject_unauthorized: false  # ⚠ Apenas dev
```

**Melhor solução:**
Use Let's Encrypt (gratuito) para certificado válido:
```bash
sudo apt install certbot
sudo certbot certonly --standalone -d seu-dominio.com
```

### 3. CA Não Reconhecida

**Adicionar CA customizada:**
```bash
# Copiar certificado da CA
sudo cp minha-ca.crt /usr/local/share/ca-certificates/
sudo update-ca-certificates
```

**Via Node.js:**
```bash
export NODE_EXTRA_CA_CERTS=/path/to/ca.crt
```

### 4. Data/Hora do Sistema Errada

Certificados validam data. Se seu sistema estiver errado:

```bash
# Verificar data
date

# Sincronizar
sudo ntpdate pool.ntp.org
# ou
sudo timedatectl set-ntp true
```

### 5. Proxy/Firewall Interceptando

Se sua empresa usa proxy HTTPS:

```bash
# Definir proxy
export HTTPS_PROXY=http://proxy:8080

# Com certificado do proxy
export NODE_EXTRA_CA_CERTS=/path/to/proxy-ca.crt
```

## Diagnóstico

### Verificar Certificado

```bash
# Ver detalhes do certificado
openssl s_client -connect api.anthropic.com:443 -servername api.anthropic.com

# Verificar cadeia completa
openssl s_client -connect api.anthropic.com:443 -showcerts
```

### Testar Conexão

```bash
# Com curl (mostra detalhes SSL)
curl -vI https://api.anthropic.com

# Ignorar SSL (apenas teste!)
curl -k https://api.anthropic.com
```

## Configuração Segura

### Produção

```yaml
# config.yaml
http:
  reject_unauthorized: true  # Sempre true em prod
  ca_path: null  # Usa CAs do sistema
```

### Desenvolvimento

```yaml
# config.yaml - APENAS desenvolvimento local
http:
  reject_unauthorized: false
```

⚠ **NUNCA use `reject_unauthorized: false` em produção!**

## Por Serviço

### APIs de IA (Anthropic/OpenAI)

Esses serviços usam certificados válidos. Se der erro:
1. Verifique sua conexão
2. Verifique data do sistema
3. Verifique proxy/firewall corporativo

### Webhooks Externos

Se você recebe webhooks via HTTPS:
```bash
# Certificado válido obrigatório
# Use Let's Encrypt:
sudo certbot certonly --webroot -w /var/www/html -d seu-dominio.com
```

### Serviços Internos

Para serviços internos com certificados self-signed:
```bash
# Adicione CA interna ao sistema
sudo cp internal-ca.crt /usr/local/share/ca-certificates/
sudo update-ca-certificates
```

## Ambientes Comuns

### Docker

```dockerfile
# Copiar CA certificates
COPY ca-certificates.crt /etc/ssl/certs/
ENV SSL_CERT_FILE=/etc/ssl/certs/ca-certificates.crt
```

### Kubernetes

```yaml
# ConfigMap com CA
apiVersion: v1
kind: ConfigMap
data:
  ca.crt: |
    -----BEGIN CERTIFICATE-----
    ...
```

## Próximos Passos

- [Troubleshooting geral](/troubleshooting/)
- [Configuração](/guias/configuracao/)
- [Segurança](/seguranca/boas-praticas/)
