95 lines
2.5 KiB
Markdown
95 lines
2.5 KiB
Markdown
# Cloudflare Agent - GoHorseJobs
|
|
|
|
Ferramenta para gerenciar DNS e cache do Cloudflare via API.
|
|
|
|
## Configuração
|
|
|
|
O token da API está em `~/.ssh/cloudflare-token`:
|
|
|
|
```
|
|
Email: yamamoto@rede5.com.br
|
|
Zone ID: 5e7e9286849525abf7f30b451b7964ac
|
|
```
|
|
|
|
## Variáveis de Ambiente
|
|
|
|
```bash
|
|
export CF_AUTH_EMAIL="yamamoto@rede5.com.br"
|
|
export CF_AUTH_KEY="5dcfd89a9d4ec330dede0d4074a518f26818e"
|
|
export CF_ZONE_ID="5e7e9286849525abf7f30b451b7964ac"
|
|
```
|
|
|
|
## Comandos Úteis
|
|
|
|
### Listar todos os DNS records
|
|
```bash
|
|
curl -s -H "X-Auth-Email: $CF_AUTH_EMAIL" -H "X-Auth-Key: $CF_AUTH_KEY" \
|
|
"https://api.cloudflare.com/client/v4/zones/$CF_ZONE_ID/dns_records"
|
|
```
|
|
|
|
### Buscar records por nome
|
|
```bash
|
|
curl -s -H "X-Auth-Email: $CF_AUTH_EMAIL" -H "X-Auth-Key: $CF_AUTH_KEY" \
|
|
"https://api.cloudflare.com/client/v4/zones/$CF_ZONE_ID/dns_records?name=gohorsejobs.com"
|
|
```
|
|
|
|
### Criar novo DNS record
|
|
```bash
|
|
curl -s -X POST -H "X-Auth-Email: $CF_AUTH_EMAIL" -H "X-Auth-Key: $CF_AUTH_KEY" \
|
|
-H "Content-Type: application/json" \
|
|
"https://api.cloudflare.com/client/v4/zones/$CF_ZONE_ID/dns_records" \
|
|
-d '{
|
|
"type": "A",
|
|
"name": "test.gohorsejobs.com",
|
|
"content": "1.2.3.4",
|
|
"proxied": false
|
|
}'
|
|
```
|
|
|
|
### Deletar DNS record
|
|
```bash
|
|
curl -s -X DELETE -H "X-Auth-Email: $CF_AUTH_EMAIL" -H "X-Auth-Key: $CF_AUTH_KEY" \
|
|
"https://api.cloudflare.com/client/v4/zones/$CF_ZONE_ID/dns_records/<RECORD_ID>"
|
|
```
|
|
|
|
### Limpar todo o cache
|
|
```bash
|
|
curl -s -X DELETE -H "X-Auth-Email: $CF_AUTH_EMAIL" -H "X-Auth-Key: $CF_AUTH_KEY" \
|
|
-H "Content-Type: application/json" \
|
|
"https://api.cloudflare.com/client/v4/zones/$CF_ZONE_ID/purge_cache" \
|
|
-d '{"purge_everything":true}'
|
|
```
|
|
|
|
### Verificar zone details
|
|
```bash
|
|
curl -s -H "X-Auth-Email: $CF_AUTH_EMAIL" -H "X-Auth-Key: $CF_AUTH_KEY" \
|
|
"https://api.cloudflare.com/client/v4/zones/$CF_ZONE_ID"
|
|
```
|
|
|
|
## Scripts
|
|
|
|
### Script bash helper (colocar em ~/bin/ ou PATH)
|
|
|
|
```bash
|
|
#!/bin/bash
|
|
# cf.sh - Cloudflare CLI helper
|
|
|
|
CF_AUTH_EMAIL="yamamoto@rede5.com.br"
|
|
CF_AUTH_KEY="5dcfd89a9d4ec330dede0d4074a518f26818e"
|
|
CF_ZONE_ID="5e7e9286849525abf7f30b451b7964ac"
|
|
BASE_URL="https://api.cloudflare.com/client/v4/zones/$CF_ZONE_ID"
|
|
|
|
case "$1" in
|
|
ls)
|
|
curl -s -H "X-Auth-Email: $CF_AUTH_EMAIL" -H "X-Auth-Key: $CF_AUTH_KEY" "$BASE_URL/dns_records"
|
|
;;
|
|
purge)
|
|
curl -s -X DELETE -H "X-Auth-Email: $CF_AUTH_EMAIL" -H "X-Auth-Key: $CF_AUTH_KEY" \
|
|
-H "Content-Type: application/json" "$BASE_URL/purge_cache" \
|
|
-d '{"purge_everything":true}'
|
|
;;
|
|
*)
|
|
echo "Usage: $0 {ls|purge}"
|
|
;;
|
|
esac
|
|
```
|