Introduction
Beaucoup de clients VeryCloud demandent : "Faut-il mettre Cloudflare devant un VPS qui a déjà l'Anti-DDoS Netrix ?". La réponse courte : oui, pour le web HTTP/HTTPS, mais avec quelques précautions.
Pourquoi combiner les deux
| Protection | Couverture | Force |
|---|---|---|
| Netrix (VeryCloud) | L3/L4 (tous protocoles) | Mitige les attaques volumétriques (Gbps), gaming-friendly |
| Cloudflare | L7 (HTTP/HTTPS) | Mitige les attaques applicatives (DDoS HTTP, bots, scrapers), CDN, cache, WAF |
Ensemble : Netrix mange les attaques massives au niveau réseau, Cloudflare filtre tout ce qui passe au niveau applicatif (bots, brute-force, scrappers).
Prérequis
- Un VPS VeryCloud (la protection Netrix est incluse sur toutes les offres)
- Un nom de domaine
- Un site web qui tourne sur le VPS (Nginx, Apache, IIS)
- Un compte Cloudflare gratuit
Étape 1 : Comprendre la topologie
Sans Cloudflare :
Client → [Internet] → Netrix (VeryCloud) → VPS
Avec Cloudflare devant :
Client → [Internet] → Cloudflare → [Internet] → Netrix → VPS
Cloudflare devient le proxy frontal. Vos visiteurs voient l'IP Cloudflare, pas celle de votre VPS. Netrix continue de protéger les ports non-HTTP (SSH, FTP, Game).
Étape 2 : Configurer Cloudflare
Ajouter votre domaine
- Créez un compte sur https://cloudflare.com (gratuit)
- Add a Site → entrez
votre-domaine.com - Choisissez le plan Free (largement suffisant pour démarrer)
- Cloudflare scanne automatiquement vos DNS
Changer les nameservers
Cloudflare vous donne 2 NS (ex: lina.ns.cloudflare.com, mark.ns.cloudflare.com).
Chez votre registrar (OVH, Gandi, Cloudflare Registrar, etc.) :
- Trouvez l'option DNS Servers ou Nameservers
- Remplacez les NS actuels par ceux de Cloudflare
- Sauvegardez
Attendez 1-24h la propagation.
Étape 3 : Activer le proxy Cloudflare (orange cloud)
Dans DNS → Records chez Cloudflare :
Type Nom Valeur Proxy
A @ 82.26.157.10 Proxied (orange) ← HTTPS/HTTP
A www 82.26.157.10 Proxied (orange)
A ssh 82.26.157.10 DNS only (gris) ← SSH non-proxiable
A mail 82.26.157.10 DNS only (gris) ← Mail non-proxiable
A fivem 82.26.157.10 DNS only (gris) ← Gaming non-proxiable
Règle d'or :
- Web (80/443) → Proxied (orange)
- SSH, FTP, Mail, Gaming, RDP → DNS only (gris)
Cloudflare ne proxifie pas les protocoles non-HTTP en plan Free (sauf Spectrum, payant).
Étape 4 : Configurer le SSL
SSL/TLS → Overview → Mode :
- Flexible : Client→Cloudflare en HTTPS, Cloudflare→VPS en HTTP. À éviter (faux sentiment de sécurité).
- Full : HTTPS de bout en bout, mais accepte le certificat auto-signé du VPS.
- Full (Strict) : HTTPS de bout en bout avec certificat valide sur le VPS. Recommandé.
Installer un certificat valide sur le VPS
Méthode 1 : Let's Encrypt via Certbot (si le DNS est en DNS only temporairement)
sudo apt install -y certbot python3-certbot-nginx
sudo certbot --nginx -d votre-domaine.com -d www.votre-domaine.com
Méthode 2 : Origin Certificate Cloudflare (recommandé, valide 15 ans)
Sur Cloudflare : SSL/TLS → Origin Server → Create Certificate
- Hostnames :
*.votre-domaine.com, votre-domaine.com - Validité : 15 ans
Téléchargez le .pem et la clé privée, copiez-les sur le VPS :
sudo nano /etc/ssl/cloudflare/cert.pem # collez le certificat
sudo nano /etc/ssl/cloudflare/key.pem # collez la clé privée
Configurez Nginx :
server {
listen 443 ssl http2;
server_name votre-domaine.com;
ssl_certificate /etc/ssl/cloudflare/cert.pem;
ssl_certificate_key /etc/ssl/cloudflare/key.pem;
# Reste de votre config
}
Une fois en place, passez en Full (Strict) sur Cloudflare.
Étape 5 : Restreindre l'accès direct au VPS aux IPs Cloudflare
C'est l'étape CRITIQUE. Sans elle, un attaquant qui découvre l'IP réelle de votre VPS contourne complètement Cloudflare et attaque directement.
Récupérez la liste à jour des plages IP Cloudflare :
# IPv4
curl -s https://www.cloudflare.com/ips-v4
# IPv6
curl -s https://www.cloudflare.com/ips-v6
Avec UFW
# Bloquer tout sur 80 et 443
sudo ufw deny 80/tcp
sudo ufw deny 443/tcp
# Autoriser uniquement les IPs Cloudflare
for ip in $(curl -s https://www.cloudflare.com/ips-v4); do
sudo ufw allow from $ip to any port 80,443 proto tcp
done
for ip in $(curl -s https://www.cloudflare.com/ips-v6); do
sudo ufw allow from $ip to any port 80,443 proto tcp
done
Avec iptables direct
for ip in $(curl -s https://www.cloudflare.com/ips-v4); do
sudo iptables -A INPUT -p tcp -m multiport --dports 80,443 -s $ip -j ACCEPT
done
sudo iptables -A INPUT -p tcp -m multiport --dports 80,443 -j DROP
Persistez :
sudo apt install -y iptables-persistent
sudo netfilter-persistent save
Script de mise à jour automatique
Cloudflare ajoute parfois de nouvelles plages. Automatisez :
sudo nano /usr/local/bin/update-cloudflare-ufw.sh
#!/bin/bash
# Nettoyer les anciennes règles Cloudflare
ufw status numbered | grep -i "cloudflare" | awk '{print $1}' | tr -d ']' | sort -rn | xargs -I {} ufw --force delete {}
# Re-ajouter
for ip in $(curl -s https://www.cloudflare.com/ips-v4); do
ufw allow from $ip to any port 80,443 proto tcp comment "Cloudflare IPv4"
done
for ip in $(curl -s https://www.cloudflare.com/ips-v6); do
ufw allow from $ip to any port 80,443 proto tcp comment "Cloudflare IPv6"
done
sudo chmod +x /usr/local/bin/update-cloudflare-ufw.sh
sudo crontab -e
0 5 * * * /usr/local/bin/update-cloudflare-ufw.sh
Étape 6 : Récupérer la vraie IP des visiteurs sur le VPS
Sans configuration, Nginx voit toutes les requêtes venir des IPs Cloudflare. Pour récupérer la vraie IP visiteur, ajoutez dans votre config Nginx :
# /etc/nginx/conf.d/cloudflare-real-ip.conf
# IPv4 Cloudflare
set_real_ip_from 173.245.48.0/20;
set_real_ip_from 103.21.244.0/22;
set_real_ip_from 103.22.200.0/22;
set_real_ip_from 103.31.4.0/22;
set_real_ip_from 141.101.64.0/18;
set_real_ip_from 108.162.192.0/18;
set_real_ip_from 190.93.240.0/20;
set_real_ip_from 188.114.96.0/20;
set_real_ip_from 197.234.240.0/22;
set_real_ip_from 198.41.128.0/17;
set_real_ip_from 162.158.0.0/15;
set_real_ip_from 104.16.0.0/13;
set_real_ip_from 104.24.0.0/14;
set_real_ip_from 172.64.0.0/13;
set_real_ip_from 131.0.72.0/22;
# IPv6 Cloudflare
set_real_ip_from 2400:cb00::/32;
set_real_ip_from 2606:4700::/32;
set_real_ip_from 2803:f800::/32;
set_real_ip_from 2405:b500::/32;
set_real_ip_from 2405:8100::/32;
set_real_ip_from 2a06:98c0::/29;
set_real_ip_from 2c0f:f248::/32;
real_ip_header CF-Connecting-IP;
Rechargez Nginx :
sudo nginx -t && sudo systemctl reload nginx
Désormais, vos logs Nginx affichent la vraie IP des visiteurs, pas celle de Cloudflare.
Étape 7 : Configurer Netrix pour les protocoles non-HTTP
Netrix continue de protéger SSH, FTP, Game, Mail. Aucune action nécessaire : c'est actif par défaut.
Dans l'espace client VeryCloud, vous pouvez :
- Configurer les ports ouverts par défaut
- Activer/désactiver la protection pour certains ports
- Voir les statistiques d'attaques bloquées
Étape 8 : Activer le WAF Cloudflare (optionnel)
Security → WAF → Managed rules :
- Activez Cloudflare Managed Ruleset (gratuit en plan Free, partiel)
- Choisissez le niveau Medium ou High selon votre tolérance
Pour des règles custom, Custom rules vous permet de bloquer/challenger des patterns spécifiques (ex: bloquer tous les pays sauf France).
Étape 9 : Activer le cache (perf)
Caching → Configuration → Browser Cache TTL : 4 hours
Caching → Tiered Cache : Activé (gratuit)
Speed → Optimization → Auto Minify : cochez CSS, JS, HTML
Effet : votre site charge 30-50% plus vite, et le trafic vers votre VPS est réduit.
Étape 10 : Tester la configuration
Vérifier que Cloudflare proxifie bien
curl -I https://votre-domaine.com
Headers attendus :
Server: cloudflare
CF-RAY: xxxxxxxxxxxx-CDG
Vérifier que le VPS n'accepte plus le HTTP direct
Depuis une IP non-Cloudflare (votre PC) :
curl -I http://IP_DU_VPS/
# Doit timeout ou retourner connection refused
Vérifier que les autres protocoles fonctionnent
SSH (via Netrix) :
ssh user@IP_DU_VPS # Doit fonctionner
Dépannage
Erreur 525 ou 526 sur Cloudflare
Le SSL entre Cloudflare et votre VPS échoue.
- 525 : pas de certificat sur le VPS → installez Let's Encrypt ou Origin Certificate
- 526 : certificat invalide → passez Cloudflare en Full au lieu de Full (Strict) temporairement, ou installez un cert valide
Erreur 522 / 524
Cloudflare ne joint pas le VPS.
- 522 : connexion refusée → vérifiez UFW et que Nginx écoute sur 443
- 524 : timeout → votre app met trop de temps à répondre, optimisez
Trafic gaming saturé
Si vous proxifiez à tort un sous-domaine FiveM ou Minecraft via Cloudflare, ça ne marche pas (sauf avec Spectrum, payant).
Solution : passez ce sous-domaine en DNS only (nuage gris).
IPs Cloudflare bloquées par Netrix
Cas rare, mais peut arriver après une mise à jour. Ouvrez un ticket support VeryCloud pour vérifier si les plages Cloudflare sont bien whitelistées chez Netrix.
Commandes utiles
# Vérifier qu'une requête passe par Cloudflare
curl -I https://votre-domaine.com | grep -i cf-ray
# Voir les vraies IPs dans les logs Nginx
sudo tail -f /var/log/nginx/access.log
# Tester un blocage UFW
sudo ufw status numbered
# Forcer une purge du cache Cloudflare (API)
curl -X POST "https://api.cloudflare.com/client/v4/zones/ZONE_ID/purge_cache" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
--data '{"purge_everything":true}'
# Liste à jour des IPs Cloudflare
curl -s https://www.cloudflare.com/ips-v4
curl -s https://www.cloudflare.com/ips-v6
Conclusion
Vous avez maintenant une double couche de protection sur votre VPS VeryCloud :
- Cloudflare mitige tout ce qui est HTTP/HTTPS (bots, scrapers, DDoS L7)
- Netrix mitige tout ce qui est volumétrique L3/L4 (UDP flood, SYN flood, gaming attacks)
C'est la configuration utilisée par la majorité des sites web professionnels. Pour les serveurs gaming purs (sans web), Netrix suffit largement et Cloudflare n'apporte rien.
Ressources
- IPs Cloudflare : https://www.cloudflare.com/ips/
- Documentation Cloudflare : https://developers.cloudflare.com
- VeryCloud Anti-DDoS Netrix : https://verycloud.fr/as198825
- Tuto VeryCloud — Pointage DNS : https://verycloud.fr/docs/article/config-dns-domaine


















