Alternar tema

Lista de permissões de IPs da Cloudflare na origem: 3 formas de bloquear tráfego externo

Easton editorial illustration: security-and-delivery gateway

Se o IP do servidor de origem vazar, a proteção da Cloudflare pode se tornar inútil. Assim que descobre esse IP, um invasor consegue contornar a Cloudflare e atacar diretamente o servidor: o tráfego DDoS chega à origem, enquanto portas e vulnerabilidades podem ser verificadas. Há várias formas de exposição, como sites de consulta de certificados SSL, registros DNS históricos e subdomínios ou sistemas de e-mail que não passam pela CDN.

Para proteger de verdade o servidor de origem, não basta ativar o proxy da Cloudflare. É necessário configurar o firewall no servidor para aceitar somente os IPs usados pela Cloudflare na conexão com a origem e bloquear todo o restante. Este artigo apresenta três opções: o painel BT, que é a mais simples; uma configuração direta no Nginx, que oferece mais flexibilidade; e a validação por certificado de origem, que é a mais segura. Você também encontrará a lista completa de IPs, as etapas de configuração, os testes e a solução dos problemas mais comuns.

Por que bloquear o tráfego que não vem da Cloudflare? Os riscos reais do vazamento do IP de origem

Primeiro, vale entender como o IP de origem pode vazar. Eu também achava, ingenuamente, que bastava apontar o domínio para a Cloudflare, mas existem várias maneiras de descobrir o endereço real.

Formas comuns de vazamento do IP

Uma das mais típicas é a consulta de certificados SSL. Ao verificar um certificado em um site como myssl.com, o IP real pode acabar exposto. Por quê? Depois que o site passa a usar a CDN da Cloudflare, a verificação do certificado SSL pode mostrar o endereço do servidor de origem. Quando descobri isso, fiquei surpreso: é quase como colocar uma placa dizendo “venha me atacar”.

Outro risco são os registros DNS históricos. Muitos serviços de consulta DNS armazenam resultados anteriores, e alguns provedores afirmam guardar esses dados permanentemente. Mesmo que hoje o domínio esteja na Cloudflare, uma consulta ao histórico ainda pode revelar o IP usado antes da migração.

Subdomínios e sistemas de e-mail também são uma armadilha importante. Muita gente coloca o site principal atrás da CDN, mas esquece os subdomínios ou o servidor de e-mail. Um invasor pode executar ping em mail.example.com ou consultar o cabeçalho original de uma mensagem e descobrir o IP de origem. Um amigo que trabalha com operações de infraestrutura passou por isso: o site principal estava muito bem protegido, mas encontraram o IP do servidor de e-mail e o derrubaram com um ataque direto.

Qual é o impacto do vazamento?

Depois que o IP de origem é descoberto, o invasor pode ignorar a Cloudflare e atacar diretamente o servidor. O tráfego DDoS chega à origem e rapidamente esgota uma conexão com pouca capacidade. Pior: ainda é possível fazer varreduras de portas, procurar vulnerabilidades e preparar ataques direcionados.

Nesse cenário, a proteção da Cloudflare deixa de ajudar. No painel da Cloudflare, tudo pode parecer tranquilo enquanto o servidor de origem está sendo atacado. Um usuário do fórum V2EX já resumiu a situação assim: “O servidor foi atacado; ativei a CDN, mas o IP de origem ainda foi descoberto rapidamente. Em qual etapa pode estar o problema?”. Essa é uma consequência típica de não configurar corretamente a lista de permissões.

Onde encontrar a lista de IPs de origem da Cloudflare e como obter as faixas mais recentes

Para configurar a lista de permissões, o primeiro passo é saber onde estão os IPs usados pela Cloudflare para acessar a origem. A empresa mantém páginas oficiais específicas para isso.

Endereços oficiais das listas de IPs

A Cloudflare mantém estes três endereços:

Vale salvar essas páginas nos favoritos, pois elas serão úteis nas próximas manutenções.

Faixas IPv4 atuais da Cloudflare

No momento, os IPs IPv4 usados pela Cloudflare para se conectar à origem incluem estes 15 blocos CIDR. CIDR é uma forma compacta de representar uma faixa contínua de endereços IP:

173.245.48.0/20
103.21.244.0/22
103.22.200.0/22
103.31.4.0/22
141.101.64.0/18
108.162.192.0/18
190.93.240.0/20
188.114.96.0/20
197.234.240.0/22
198.41.128.0/17
162.158.0.0/15
104.16.0.0/13
104.24.0.0/14
172.64.0.0/13
131.0.72.0/22

Essas 15 faixas cobrem cerca de 1,78 milhão de endereços IP.

Faixas IPv6

Se o IPv6 estiver ativado no servidor, inclua também estas faixas:

2400:cb00::/32
2606:4700::/32
2803:f800::/32
2405:b500::/32
2405:8100::/32
2a06:98c0::/29
2c0f:f248::/32

Importante: a Cloudflare atualiza a lista de IPs periodicamente, sem um calendário fixo. Consulte a página oficial a cada um ou dois meses para garantir que sua lista de permissões esteja atualizada. Caso contrário, um novo IP da Cloudflare pode ser bloqueado por engano pelo firewall, impedindo o acesso à origem.

Método 1 — Configurar a lista de IPs da Cloudflare no painel BT (mais simples)

Se você usa o painel BT, a configuração é bem prática. O plugin gratuito de firewall do Nginx permite criar a lista de permissões pela interface, sem editar manualmente os arquivos de configuração.

Etapa 1: instalar o plugin gratuito de firewall do Nginx

Abra o painel BT, clique em Loja de software no menu lateral e acesse a categoria Aplicativos de terceiros. Procure o Nginx Free Firewall. Se ele ainda não estiver instalado, clique no botão de instalação; o processo leva apenas alguns segundos.

Etapa 2: configurar a lista de permissões de IPs

Depois da instalação, clique no botão de configurações do firewall do Nginx para abrir a interface de gerenciamento.

  1. Clique em Configuração global no menu lateral.
  2. Localize a seção Lista de permissões de IPs e clique em Configurar.
  3. Na janela de gerenciamento, adicione uma a uma as faixas IPv4 da Cloudflare.

Há um detalhe: o painel BT pede um IP inicial e um IP final, mas a lista fornecida pela Cloudflare usa o formato CIDR, como 173.245.48.0/20. Como converter? Você pode procurar uma ferramenta online de conversão de CIDR para intervalo de IPs. Por exemplo, 173.245.48.0/20 corresponde ao intervalo de 173.245.48.0 a 173.245.63.255.

Sendo sincero, converter manualmente as 15 faixas dá bastante trabalho. Normalmente procuro uma lista pronta para importação no painel BT; alguns blogs publicam os intervalos já convertidos, bastando copiar e colar.

  1. Depois de adicionar todas as faixas, clique no botão Importar.
  2. Reinicie o serviço Nginx.

Atenção: no momento, o painel BT aceita apenas IPv4 pela interface. Se o IPv6 estiver ativado no servidor, será preciso editar a configuração do Nginx manualmente ou usar o segundo método.

Etapa 3: verificar se a configuração funciona

Depois de configurar, faça estes testes:

  • Em uma rede móvel 4G, que não seja tráfego da Cloudflare, acesse diretamente o IP de origem. Você deve ver o erro 403 Forbidden.
  • Acesse o site pelo domínio, passando pelo proxy da Cloudflare. Ele deve abrir normalmente.

Se aparecer um erro 502, existe algum problema na lista de permissões: talvez faltem faixas de IP ou as regras não tenham sido salvas. Confira se o firewall do painel BT está ativado e confirme se todas as faixas da Cloudflare foram adicionadas.

Método 2 — Configurar a lista de permissões diretamente no Nginx (mais flexível)

Se você não usa o painel BT ou prefere uma configuração mais flexível, também é simples editar diretamente os arquivos do Nginx. Esse método aceita IPv6 e é mais completo que a opção pelo painel.

Etapa 1: criar o arquivo de IPs da Cloudflare

Acesse o servidor por SSH e crie um arquivo dedicado à lista de permissões da Cloudflare:

sudo nano /etc/nginx/cloudflare-whitelist.conf

Adicione o conteúdo abaixo:

# Faixas IPv4 da Cloudflare
allow 173.245.48.0/20;
allow 103.21.244.0/22;
allow 103.22.200.0/22;
allow 103.31.4.0/22;
allow 141.101.64.0/18;
allow 108.162.192.0/18;
allow 190.93.240.0/20;
allow 188.114.96.0/20;
allow 197.234.240.0/22;
allow 198.41.128.0/17;
allow 162.158.0.0/15;
allow 104.16.0.0/13;
allow 104.24.0.0/14;
allow 172.64.0.0/13;
allow 131.0.72.0/22;
# Faixas IPv6 da Cloudflare
allow 2400:cb00::/32;
allow 2606:4700::/32;
allow 2803:f800::/32;
allow 2405:b500::/32;
allow 2405:8100::/32;
allow 2a06:98c0::/29;
allow 2c0f:f248::/32;
# Bloqueia todos os outros IPs
deny all;

Salve o arquivo com Ctrl+O e saia com Ctrl+X.

Ponto essencial: a linha final deny all; é muito importante. Ela informa que todos os IPs que não foram autorizados pelas regras allow devem ser bloqueados. Não omita essa linha.

Etapa 2: incluir a lista na configuração do site no Nginx

Edite o arquivo de configuração do site. Em geral, ele fica em /etc/nginx/sites-available/ no Debian/Ubuntu ou em /etc/nginx/conf.d/ no CentOS.

sudo nano /etc/nginx/sites-available/your-site.conf

Adicione esta linha ao bloco server:

server {
    listen 80;
    server_name example.com;
    # Inclui a lista de permissões da Cloudflare
    include /etc/nginx/cloudflare-whitelist.conf;
    # Suas outras configurações ficam abaixo...
    root /var/www/html;
    index index.html;
}

Se o site também escuta a porta 443, usada pelo HTTPS, adicione a mesma linha ao bloco server correspondente.

Etapa 3: testar e recarregar o Nginx

Primeiro, teste a sintaxe dos arquivos de configuração:

sudo nginx -t

Se a saída mostrar syntax is ok e test is successful, a configuração está correta. Em seguida, recarregue o Nginx:

sudo systemctl reload nginx

Pronto: a lista de permissões está configurada.

A vantagem desse método é manter a lista em um arquivo separado. Quando for necessário atualizar os IPs, basta editar cloudflare-whitelist.conf, e vários sites podem reutilizar o mesmo arquivo. É uma opção mais flexível que o painel BT e também aceita IPv6.

Fluxo completo para configurar a lista de IPs de origem da Cloudflare

Da obtenção da lista de IPs à validação da configuração, incluindo o painel BT, o Nginx puro e o certificado de origem

Estimated time: PT20M

  1. 1

    Step 1: Obter a lista de IPs de origem da Cloudflare

    Acesse as páginas oficiais da Cloudflare:
  2. 2

    Step 2: Método 1: configurar pelo painel BT (mais simples)

    Etapas:
  3. 3

    Step 3: Método 2: configurar diretamente no Nginx (mais flexível)

    Etapas:
  4. 4

    Step 4: Método 3: configurar o certificado do servidor de origem (mais seguro)

    Etapas:
  5. 5

    Step 5: Verificar se a configuração funciona

    Em uma rede móvel 4G, que não seja tráfego da Cloudflare, acesse diretamente o IP de origem. A resposta deve ser 403 Forbidden. Pelo domínio, passando pelo proxy da Cloudflare, o site deve abrir normalmente. Se ocorrer um erro 502, confira se todas as faixas foram adicionadas, se a sintaxe está correta e se o firewall está ativado. Se o acesso pela Cloudflare também retornar 403, verifique a posição de deny all e se a lista de IPs está atualizada.

Método 3 — Configurar o certificado do servidor de origem da Cloudflare (mais seguro)

Os dois métodos anteriores já oferecem boa segurança, mas, para requisitos mais rigorosos, você pode adicionar a validação por certificado do servidor de origem. Assim, mesmo que o IP de origem vaze, o acesso direto encontrará um erro de certificado e não conseguirá estabelecer a conexão.

O que é o certificado do servidor de origem da Cloudflare?

Em resumo, o certificado de origem é um certificado TLS assinado pela Cloudflare e usado apenas para criptografar a conexão entre a Cloudflare e o servidor de origem. Os navegadores não confiam nele — somente a Cloudflare —, por isso um invasor que acessar diretamente o IP de origem verá um aviso de certificado e a conexão falhará.

Em conjunto com a lista de permissões de IPs, ele cria uma proteção dupla: a lista bloqueia o tráfego que não vem da Cloudflare, e a validação do certificado garante que somente a Cloudflare consiga estabelecer uma conexão criptografada.

Etapa 1: gerar o certificado do servidor de origem

Entre no painel da Cloudflare, selecione o domínio e acesse SSL/TLSServidor de origem.

  1. Clique no botão Criar certificado.
  2. Selecione os domínios que deseja proteger; você pode usar um curinga, como *.example.com.
  3. Escolha o maior prazo de validade, de 15 anos. Como o certificado será usado pela própria Cloudflare, um prazo longo reduz a manutenção.
  4. Clique em criar.

A Cloudflare gerará dois itens:

  • Certificado de origem (Origin Certificate): um certificado em formato PEM.
  • Chave privada (Private Key): a chave correspondente.

Salve os dois conteúdos separadamente no servidor, por exemplo:

sudo nano /etc/nginx/certs/cloudflare.crt
# Cole o conteúdo do certificado de origem
sudo nano /etc/nginx/certs/cloudflare.key
# Cole o conteúdo da chave privada

Defina também permissões restritas para proteger a chave privada:

sudo chmod 600 /etc/nginx/certs/cloudflare.key

Etapa 2: configurar o certificado de origem no Nginx

Edite o arquivo de configuração do site e defina o certificado no bloco server do HTTPS:

server {
    listen 443 ssl http2;
    server_name example.com;
    # Usa o certificado de origem da Cloudflare
    ssl_certificate /etc/nginx/certs/cloudflare.crt;
    ssl_certificate_key /etc/nginx/certs/cloudflare.key;
    # Inclui a lista de permissões de IPs
    include /etc/nginx/cloudflare-whitelist.conf;
    # Outras configurações...
}

Para uma validação mais rigorosa, você também pode ativar a verificação do certificado do cliente. Nesse caso, será necessário baixar o certificado de cliente da Cloudflare:

ssl_client_certificate /etc/nginx/certs/cloudflare-client.crt;
ssl_verify_client on;

Teste e recarregue o Nginx:

sudo nginx -t && sudo systemctl reload nginx

Dica: esse método é indicado para cenários com requisitos muito elevados de segurança. Para a maioria dos administradores, a lista de permissões dos métodos anteriores já é suficiente, sem a necessidade de tornar a configuração tão complexa.

Como testar a configuração e resolver problemas comuns

Antes de comemorar, teste tudo para ter certeza de que a proteção funciona.

Como testar

Método 1: acessar diretamente o IP de origem por uma rede externa à Cloudflare

Use uma rede móvel 4G, ou qualquer outra rede que não passe pela Cloudflare, e digite o IP de origem no navegador, por exemplo, http://123.45.67.89. Se a configuração estiver correta, você deverá ver uma página 403 Forbidden.

Método 2: testar com curl

Execute no computador local, e não no próprio servidor:

curl -I http://IP_DO_SERVIDOR_DE_ORIGEM

A resposta deve ser 403 Forbidden.

Método 3: acessar pelo domínio, passando pelo proxy da Cloudflare

Abra o domínio no navegador, por exemplo, https://example.com. O site deve carregar normalmente. Se esse acesso também retornar 403, há um erro na configuração.

Problemas comuns e soluções

Problema 1: o site mostra um erro 502 após a configuração

Possíveis causas:

  • A lista de permissões está incompleta e faltam alguns IPs da Cloudflare.
  • Há um erro de sintaxe no arquivo de configuração do Nginx.

Soluções:

  1. Execute sudo nginx -t para validar a sintaxe.
  2. Consulte o log de erros do Nginx com sudo tail -f /var/log/nginx/error.log.
  3. Confirme se os 15 blocos IPv4 e os 7 blocos IPv6 foram adicionados.

Problema 2: o acesso pela Cloudflare também retorna 403

Possíveis causas:

  • A regra deny all; foi colocada antes das regras allow.
  • O IP usado pela Cloudflare para acessar a origem não está na lista, talvez porque ela tenha sido atualizada.

Soluções:

  1. Verifique o arquivo e garanta que todas as regras allow venham antes de deny all;.
  2. Acesse https://www.cloudflare.com/ips/ para confirmar se a lista está atualizada.

Problema 3: as faixas importadas no painel BT não funcionam

Possíveis causas:

  • O plugin de firewall não está ativado.
  • As regras não foram salvas ou o Nginx não foi reiniciado.

Soluções:

  1. Confirme se o plugin de firewall do Nginx está ativado, com o ícone verde.
  2. Reinicie o serviço Nginx pelo painel BT.
  3. Consulte o log do firewall do painel para verificar se houve algum erro.

Problema 4: ainda é possível contornar a lista pelo IPv6

Possível causa:

  • Somente a lista IPv4 foi configurada; as faixas IPv6 foram esquecidas.

Soluções:

  1. Adicione as faixas IPv6 da Cloudflare à lista de permissões.
  2. Se você não precisa de acesso IPv6, desative-o diretamente no firewall.

Outras recomendações de segurança

Configurar a lista de permissões é apenas o primeiro passo. Também vale adotar estas medidas:

  • Alterar a porta SSH: a porta padrão 22 é alvo frequente de varreduras; troque-a por outra porta alta.
  • Atualizar o sistema regularmente: instale correções em tempo hábil para eliminar vulnerabilidades.
  • Ocultar a versão do Nginx: adicione server_tokens off; ao arquivo nginx.conf.
  • Usar o modo Under Attack da Cloudflare: durante um ataque intenso, ative o desafio de cinco segundos.

Manutenção e atualização da lista de IPs da Cloudflare

Como já vimos, a Cloudflare pode adicionar ou ajustar faixas de IP. Se a lista não for atualizada, novos endereços poderão ser bloqueados, causando falhas de acesso ao site.

Por que é necessário atualizar regularmente?

A Cloudflare opera centenas de data centers no mundo todo, e suas faixas de IP acompanham a expansão da infraestrutura. Elas não mudam todos os dias, mas podem ser atualizadas a cada poucos meses.

Se a lista de permissões estiver desatualizada, um novo IP usado pela Cloudflare para acessar a origem poderá ser bloqueado pelo firewall. Isso pode impedir o acesso de usuários de algumas regiões ou fazer com que as solicitações à origem sejam recusadas.

Atualização manual

A opção mais simples é acessar https://www.cloudflare.com/ips/ periodicamente, por exemplo, a cada 2 ou 3 meses, e comparar a lista oficial com a sua configuração.

Se houver alterações:

  1. Edite o arquivo da lista de permissões.
  2. Adicione as novas faixas de IP.
  3. Teste a configuração do Nginx com sudo nginx -t.
  4. Recarregue o Nginx com sudo systemctl reload nginx.

Script de atualização automática (opcional)

Se quiser reduzir o trabalho manual, use um script bash simples para obter as listas atuais e atualizar a configuração. Este é um exemplo:

#!/bin/bash
# Script de atualização automática da lista de IPs da Cloudflare
CF_IPV4_URL="https://www.cloudflare.com/ips-v4"
CF_IPV6_URL="https://www.cloudflare.com/ips-v6"
NGINX_CONF="/etc/nginx/cloudflare-whitelist.conf"
BACKUP_CONF="/etc/nginx/cloudflare-whitelist.conf.bak"
# Faz backup da configuração atual
cp $NGINX_CONF $BACKUP_CONF
# Gera a nova configuração
echo "# Cloudflare IP Whitelist - Auto-generated on $(date)" > $NGINX_CONF
echo "" >> $NGINX_CONF
# Faixas IPv4
echo "# IPv4 ranges" >> $NGINX_CONF
curl -s $CF_IPV4_URL | sed 's/^/allow /' | sed 's/$/;/' >> $NGINX_CONF
echo "" >> $NGINX_CONF
# Faixas IPv6
echo "# IPv6 ranges" >> $NGINX_CONF
curl -s $CF_IPV6_URL | sed 's/^/allow /' | sed 's/$/;/' >> $NGINX_CONF
echo "" >> $NGINX_CONF
# Bloqueia todos os outros IPs
echo "# Deny all other IPs" >> $NGINX_CONF
echo "deny all;" >> $NGINX_CONF
# Testa a configuração
if nginx -t; then
    echo "A sintaxe está correta; recarregando o Nginx..."
    systemctl reload nginx
    echo "✓ Lista de permissões da Cloudflare atualizada com sucesso!"
else
    echo "✗ Erro no arquivo de configuração; restaurando o backup..."
    cp $BACKUP_CONF $NGINX_CONF
    echo "A configuração anterior foi restaurada. Verifique o erro."
fi

Salve o arquivo como /root/update-cf-whitelist.sh e conceda permissão de execução:

chmod +x /root/update-cf-whitelist.sh

Depois, crie uma tarefa cron para executá-lo automaticamente uma vez por mês:

crontab -e

Adicione esta linha:

0 3 1 * * /root/update-cf-whitelist.sh >> /var/log/cf-whitelist-update.log 2>&1

Assim, o script atualizará a lista às 3h do primeiro dia de cada mês e registrará a saída em /var/log/cf-whitelist-update.log.

Dica: antes de criar a tarefa agendada, execute o script manualmente para confirmar que tudo funciona. Se houver algum bug, uma execução automática poderá danificar a configuração.

Conclusão

Depois de tudo isso, a ideia principal cabe em uma frase: para proteger o servidor de origem, é indispensável configurar a lista de permissões da Cloudflare.

Vamos recapitular os três métodos:

  • Lista de permissões no painel BT: é a opção mais simples, configurada com alguns cliques e indicada para iniciantes. A desvantagem é aceitar apenas IPv4.
  • Configuração direta no Nginx: oferece mais flexibilidade, aceita IPv6 e facilita o gerenciamento e a atualização do arquivo. É indicada para quem tem conhecimentos básicos de Linux.
  • Validação por certificado do servidor de origem: é a opção mais segura, com proteção dupla, adequada a cenários com requisitos elevados de segurança.

Independentemente da opção escolhida, faça os testes depois da configuração. Acesse diretamente o IP de origem por uma rede móvel 4G; se a resposta for 403, a regra está funcionando. Em seguida, acesse pelo domínio para confirmar que o site abre normalmente.

Por fim, lembre-se de que a lista de IPs da Cloudflare pode mudar. Verifique-a regularmente ou use o script automatizado. Não configure uma vez e esqueça: se a Cloudflare adicionar novas faixas alguns meses depois e sua lista continuar antiga, o site poderá apresentar falhas de acesso.

Se este artigo foi útil, compartilhe-o com outros administradores que também usam a Cloudflare. Quanto melhor protegermos nossos servidores de origem, mais difícil será a ação dos invasores.

Você também pode verificar agora mesmo se o IP de origem já vazou. Consulte o certificado em um site como myssl.com e veja se o endereço está exposto. Se estiver, configure a lista de permissões seguindo este guia; ainda há tempo para corrigir a proteção.

FAQ

Por que o IP do servidor de origem vaza? Quais são as causas mais comuns?
As formas mais comuns de vazamento do IP de origem são:

1) Sites de consulta de certificados SSL, como myssl.com, podem expor o IP de origem:
• Ao verificar o certificado SSL de um site que usa a CDN da Cloudflare, o endereço IP do servidor de origem pode aparecer

2) Registros DNS históricos podem ficar armazenados em serviços de consulta DNS:
• Alguns provedores mantêm esses dados permanentemente
• Mesmo depois da migração para a Cloudflare, os registros antigos ainda podem revelar o IP anterior

3) Subdomínios ou sistemas de e-mail podem não passar pela CDN:
• Basta um invasor executar ping em um subdomínio ou consultar o cabeçalho original de um e-mail para descobrir o IP de origem

Depois do vazamento, o invasor pode contornar a Cloudflare e atacar diretamente o servidor, enviar tráfego DDoS à origem e fazer varreduras de portas em busca de vulnerabilidades.
Onde obter a lista de IPs de origem da Cloudflare e como mantê-la atualizada?
A Cloudflare mantém três endereços oficiais:
• Lista completa: https://www.cloudflare.com/ips/
• Lista IPv4: https://www.cloudflare.com/ips-v4
• Lista IPv6: https://www.cloudflare.com/ips-v6

Faixas atuais:
• O IPv4 inclui 15 blocos CIDR, cobrindo cerca de 1,78 milhão de IPs
• O IPv6 inclui 7 blocos

Recomendações de atualização:
• A lista de IPs é atualizada periodicamente, sem calendário fixo
• Acesse a página oficial a cada 2 ou 3 meses para verificar se há novas faixas
• Como alternativa, use um script automatizado com uma tarefa cron mensal

Se a lista não for atualizada, novos IPs da Cloudflare poderão ser bloqueados pelo firewall e usuários de algumas regiões poderão perder o acesso ao site.
Qual é a diferença entre os três métodos e qual devo escolher?
1) Lista de permissões no painel BT:
• É a opção mais simples e pode ser configurada pela interface, sendo adequada para iniciantes
• Porém, aceita apenas IPv4; o IPv6 exige configuração manual

2) Configuração direta no Nginx:
• É mais flexível e aceita IPv6
• Um arquivo separado facilita as atualizações
• Vários sites podem reutilizar o mesmo arquivo
• É indicada para quem tem conhecimentos básicos de Linux

3) Validação por certificado do servidor de origem:
• É a opção mais segura, com proteção dupla: lista de IPs e validação do certificado
• Mesmo que o IP de origem vaze, o acesso direto resultará em erro de certificado
• É indicada para cenários com requisitos elevados de segurança

Recomendação: para a maioria dos administradores, a lista de permissões de IPs é suficiente. Em cenários mais sensíveis, adicione também a validação por certificado de origem.
Como configurar a lista de permissões no Nginx? Quais são as etapas principais?
Etapas da configuração:

1) Crie o arquivo de configuração:
• sudo nano /etc/nginx/cloudflare-whitelist.conf
• Adicione regras allow para todas as faixas IPv4 e IPv6 da Cloudflare
• No final, adicione deny all para rejeitar todos os demais IPs
• Atenção: deny all deve vir depois das regras allow

2) Edite a configuração do site:
• /etc/nginx/sites-available/your-site.conf
• Adicione include /etc/nginx/cloudflare-whitelist.conf ao bloco server
• Faça isso tanto no HTTP quanto no HTTPS

3) Teste e recarregue:
• Teste a configuração com sudo nginx -t
• Recarregue com sudo systemctl reload nginx

Mantenha a lista em um arquivo separado. Assim, para atualizar os IPs no futuro, basta editar cloudflare-whitelist.conf.
Como verificar se a configuração funciona e resolver os problemas mais comuns?
Como verificar:
1) Em uma rede móvel 4G, que não seja tráfego da Cloudflare, acesse diretamente o IP de origem; a resposta deve ser 403 Forbidden
2) Acesse pelo domínio, passando pelo proxy da Cloudflare; o site deve abrir normalmente

Problemas comuns:

1) Erro 502:
• Confira se todas as faixas foram incluídas: 15 blocos IPv4 e 7 blocos IPv6
• Valide a sintaxe com sudo nginx -t
• Verifique se o firewall está ativado

2) O acesso pela Cloudflare também retorna 403:
• Confira se deny all está depois das regras allow
• Verifique em https://www.cloudflare.com/ips/ se a lista está atualizada

3) Contorno por IPv6:
• Adicione as faixas IPv6 da Cloudflare à lista de permissões
• Ou desative o IPv6 diretamente no firewall
Como automatizar a atualização da lista de IPs da Cloudflare?
Você pode usar um script bash para baixar a lista atual e atualizar a configuração.

Fluxo do script:
1) Fazer backup da configuração atual
2) Obter as listas IPv4 e IPv6 nos endereços oficiais da Cloudflare
3) Gerar um novo arquivo com as regras allow e deny all
4) Testar a sintaxe do Nginx; se estiver correta, recarregar o serviço; se houver erro, restaurar o backup

Configuração:
• Salve o script como /root/update-cf-whitelist.sh
• Conceda permissão de execução com chmod +x
• Crie uma tarefa no cron com crontab -e para executá-lo às 3h do primeiro dia de cada mês:
0 3 1 * * /root/update-cf-whitelist.sh >> /var/log/cf-whitelist-update.log 2>&1

Antes de agendar, execute o script manualmente uma vez para confirmar que tudo funciona.

16 min de leitura · Publicado em: 21 nov 2025 · Atualizado em: 4 set 2026

Comentários

Entre com GitHub para comentar

Easton BlogEaston Blog