A Cloudflare fica na frente do seu site: os visitantes falam com a Cloudflare, e ela repassa os pedidos para a sua VPS. O plano grátis já inclui proteção contra ataques DDoS ao site (sem cobrança extra), um firewall básico, HTTPS e cache de imagens, CSS e JavaScript. A conta é sua, criada direto na Cloudflare, sem custo.
O que ela protege: o site, ou seja, o tráfego HTTP/HTTPS do seu domínio. Ela não protege a VPS inteira: SSH, Área de Trabalho Remota (RDP), servidores de jogos, banco de dados e e-mail continuam ligados direto no IP da VPS, com a proteção básica de rede (L3/L4) da nossa infraestrutura.
Antes de começar
- O site já precisa abrir com o seu domínio e com HTTPS (cadeado), direto na VPS. Se a sua VPS veio com um aplicativo pronto, troque primeiro o endereço para o seu domínio (comando
dphost-apps dominio) com a nuvem cinza; só depois ligue a proteção. - Tenha em mãos o acesso ao site onde o domínio foi registrado (registro.br, Hostinger, GoDaddy etc.).
- Anote os registros de DNS que o domínio tem hoje (site, e-mail, subdomínios). A anotação serve para conferir o passo 3.
Passo a passo
- Crie a conta em dash.cloudflare.com e confirme o e-mail. O painel pode ficar em português.
- Adicione o seu domínio (Add a domain) e escolha o plano Free (gratuito).
- Confira os registros de DNS. A Cloudflare copia os registros do DNS atual, mas pode esquecer algum: compare um por um com a sua anotação e acrescente o que faltar. Depois ajuste a nuvem dos registros A, AAAA e CNAME (os outros não têm nuvem):
- Com proxy (nuvem laranja): só os endereços do site, em geral o domínio (
@) e owww, apontando para o IP da VPS. - Somente DNS (nuvem cinza): todo o resto, principalmente o e-mail: o nome para onde o MX aponta (como
mail) e os CNAME de DKIM. E-mail com nuvem laranja para de funcionar. Os registros MX e TXT (SPF, DKIM, DMARC) não têm nuvem; só confira se foram copiados.
- Com proxy (nuvem laranja): só os endereços do site, em geral o domínio (
- Troque os servidores de nomes (DNS) do domínio pelos dois que a Cloudflare mostrar (algo como
nome.ns.cloudflare.com). A troca é feita no site onde o domínio foi registrado; no registro.br, entre, clique no domínio e, na parte de DNS, use "Alterar servidores DNS". Se o domínio tiver DNSSEC ligado, desligue antes de trocar, senão o domínio pode parar de funcionar. Depois que tudo estiver ativo, dá para ligar o DNSSEC pela própria Cloudflare (ela mostra um registro DS para você cadastrar no site do registro). - Espere a ativação. Leva de alguns minutos a 24 horas, e a Cloudflare avisa por e-mail. O site continua no ar durante a troca.
- Ajuste o HTTPS: em SSL/TLS → Visão geral, escolha o modo personalizado (Custom SSL/TLS) e marque Completo (estrito) (Full (strict)). Não use "Flexível": ele deixa sem criptografia o caminho entre a Cloudflare e a VPS e costuma causar o erro "redirecionou você muitas vezes" (ERR_TOO_MANY_REDIRECTS), comum no WordPress.
- Teste: abra o site (o cadeado deve aparecer) e depois abra
https://seudominio.com.br/cdn-cgi/trace. Se aparecer uma lista comcolo=, o site está passando pela Cloudflare.
Cuidados importantes
- SSH pelo nome do domínio deixa de funcionar com a nuvem laranja, porque a Cloudflare só repassa tráfego de sites. Entre pelo IP:
ssh root@SEU_IP. - Painéis em portas diferentes (por exemplo, o Coolify na porta 8000) não passam pela Cloudflare: acesse pelo IP da VPS. As portas que passam com a nuvem laranja são 80, 443, 2052, 2053, 2082, 2083, 2086, 2087, 2095, 2096, 8080, 8443 e 8880.
- Limites do plano grátis: envios maiores que 100 MB de uma vez são recusados (afeta uploads grandes pelo navegador), e páginas que demoram mais de 125 segundos (cerca de 2 minutos) para responder dão erro 524 (por exemplo, importações longas). Para essas tarefas, use o IP da VPS ou um subdomínio com a nuvem cinza.
- Avisos automáticos (webhooks) de pagamento, WhatsApp e outros sistemas podem ser barrados pela proteção contra robôs. Deixe desligados o Bot Fight Mode e o modo I'm Under Attack, a não ser durante um ataque. Se um aviso for barrado, veja o motivo em Segurança → Eventos.
- "Sempre usar HTTPS" (Always Use HTTPS) pode ficar desligado, porque o seu servidor já leva o visitante para o HTTPS. Se ligar, a verificação do Let's Encrypt também passa a ir pelo HTTPS, e a renovação do certificado pelo certbot nos modos
--nginx,--apacheou--standalonepode falhar. - Cache: a Cloudflare guarda só arquivos como imagens, CSS e JavaScript; as páginas continuam vindo da VPS. Não crie regra de cache de tudo (Cache Everything) em site com login, loja ou área de membros: a página com os dados de um visitante pode aparecer para outro.
- Esconder o IP da VPS: qualquer registro com nuvem cinza apontando para o mesmo IP (como
mailouftp) revela o endereço da VPS, e quem souber o IP consegue atacar direto, sem passar pela Cloudflare. Veja abaixo como fechar essa "porta dos fundos".
Ver o IP real dos visitantes (recomendado)
Com a Cloudflare na frente, a VPS passa a ver os IPs da Cloudflare no lugar dos visitantes, nos logs e nos plugins de segurança. Um plugin que bloqueia IPs pode acabar bloqueando a própria Cloudflare e, com ela, muitos visitantes de uma vez. Para corrigir, como root:
- Nginx:
{ for ip in $(curl -fsS https://www.cloudflare.com/ips-v4) $(curl -fsS https://www.cloudflare.com/ips-v6); do echo "set_real_ip_from $ip;"; done; echo "real_ip_header CF-Connecting-IP;"; } > /etc/nginx/conf.d/cloudflare.conf nginx -t && systemctl reload nginxSe o teste mostrar erro, desfaça comrm /etc/nginx/conf.d/cloudflare.conf. - Apache:
{ echo "RemoteIPHeader CF-Connecting-IP"; for ip in $(curl -fsS https://www.cloudflare.com/ips-v4) $(curl -fsS https://www.cloudflare.com/ips-v6); do echo "RemoteIPTrustedProxy $ip"; done; } > /etc/apache2/conf-available/cloudflare.conf a2enmod remoteip && a2enconf cloudflare && apache2ctl configtest && systemctl restart apache2Se o teste mostrar erro, desfaça coma2disconf cloudflare. - WordPress e aplicativos prontos: nos plugins de segurança (como o Wordfence), escolha a opção de obter o IP do visitante pelo cabeçalho
CF-Connecting-IP. - Painéis (CloudPanel, Coolify e outros): siga a orientação do painel para a Cloudflare.
- Windows (IIS 8.5 ou mais novo): no Gerenciador do IIS, clique no site → Logging → formato W3C → Select Fields → Add Field, com Source Type Request Header e Source
CF-Connecting-IP. Isso grava o IP real só no log; o aplicativo continua vendo o IP da Cloudflare.
A lista de IPs da Cloudflare muda raramente. Repita o comando de vez em quando, por exemplo a cada 3 meses.
Fechar a "porta dos fundos" (opcional, avançado)
Quem já sabe o IP da VPS ainda consegue atacar o site direto. Para fechar essa porta, libere as portas 80 e 443 só para a Cloudflare no firewall da VPS. Exemplo com o ufw do Ubuntu, para site em Nginx ou Apache instalado direto no sistema.
Atenção: o ufw enable bloqueia todas as outras portas de entrada. Se a VPS tem outros serviços (e-mail, FTP, painel, jogo), libere cada porta antes (por exemplo, ufw allow 587/tcp). Se você mudou a porta do SSH, troque OpenSSH pela sua porta (por exemplo, ufw allow 2222/tcp), senão perde o acesso. Quando o ufw enable perguntar, responda y. Se perder o acesso, entre pelo console (VNC) da área do cliente e rode ufw disable.
ufw allow OpenSSH for ip in $(curl -fsS https://www.cloudflare.com/ips-v4) $(curl -fsS https://www.cloudflare.com/ips-v6); do ufw allow proto tcp from $ip to any port 80,443; done ufw enable
Rode ufw status e confira se apareceram várias linhas com 80,443/tcp e os endereços da Cloudflare. Só então apague as regras que liberam 80 e 443 para todos (Anywhere), se existirem: ufw delete allow 80/tcp, ufw delete allow 443/tcp e, se aparecerem, ufw delete allow 'Nginx Full' ou ufw delete allow 'Apache Full'. Confira de novo com ufw status. Repita o comando do for a cada 3 meses (as regras repetidas são ignoradas).
- Se o site usa Docker (como os aplicativos prontos e o Coolify), o ufw não vale para as portas abertas pelo Docker. Nesse caso, não use esses comandos.
- No CloudPanel, use o firewall do próprio painel em vez do ufw.
- Com a porta fechada, se um dia você tirar a Cloudflare da frente (nuvem cinza), o site para até liberar 80 e 443 de novo:
ufw allow 80/tcpeufw allow 443/tcp.
Como desfazer: na Cloudflare, deixe a nuvem do site cinza (Somente DNS); em poucos minutos os visitantes voltam a ir direto para a VPS. Se fechou a porta dos fundos, libere 80 e 443 antes. Para sair da Cloudflare de vez: se ligou o DNSSEC nela, apague antes o registro DS no site onde o domínio foi registrado e espere 2 dias; confira se os registros de DNS ainda existem no provedor antigo; só então volte os servidores de nomes antigos.
Planos pagos: o plano grátis atende a maioria dos sites. Os planos pagos da Cloudflare são cobrados por domínio, em dólar, e contratados direto com a Cloudflare, na sua conta. A DP HOST não vende planos da Cloudflare.
Prefere que a gente faça? A DP HOST configura tudo e entrega funcionando, por uma taxa única de R$ 199,90 (1 domínio): veja Configuração da Cloudflare feita pela DP HOST.
Suporte: fazendo por conta própria, a conta da Cloudflare e a configuração dela são responsabilidade sua (a VPS não é gerenciada). Nosso suporte ajuda com dúvidas do lado da VPS.