Cloudflare Tunnel : simplicité d'exposition mais à quel prix ?
Quand on découvre Cloudflare Tunnel (anciennement Argo Tunnel), ça a presque l'air magique, plus besoin d'IP publique, plus de NAT ou de firewall à bidouiller, et ton application locale devient accessible au monde entier en HTTPS avec un seul binaire.
Mais derrière cette simplicité, il y a des choix d'architectures qui méritent qu'on s'y attarde un peu plus, histoire de bien comprendre comment ça fonctionne sous le capot.
Comment ça fonctionne ?
- Tu installes
cloudflaredsur ta machine. cloudflaredouvre une connexion sortante sécurisée (HTTPS/QUIC) vers le réseau Cloudflare.- Cloudflare devient ton reverse proxy. Les utilisateurs envoient leurs requêtes à ton domaine → Cloudflare → ton tunnel → ton service local.

La plupart des solutions d'expositions classiques suivent un modèle pull : ton serveur écoute sur un port, et les clients viennent "tirer" l'information. Avec Cloudflare Tunnel, on inverse complétement la logique avec un modèle push.
Méthode classique :

Avantages de Cloudflare Tunnel
Sécurité
Cloudflare Tunnel tient ses promesses sur plusieurs aspects fondamentaux. La sécurité est renforcée par design puisqu'aucun port n'est exposé sur Internet. Même si quelqu'un découvre ton IP publique, ton serveur reste invisible depuis l'extérieur. Cette approche "Zero Trust" par défaut élimine une grande surface d'attaque.
Simplicité
La simplicité opérationnelle que Cloudflare offre est réelle, fini les galères de configuration NAT, de port forwarding sur la box internet, de renouvellement des certificats. Puisque la connexion vient entre le client et Cloudflare, par défaut, le HTTPS se met automatiquement (puisque valide et configuré chez Cloudflare).
Résilience
Côté résilience, en utilisant le service Cloudflare Tunnel, vous bénéficiez par défaut de leur protection contre les attaques DDoS, mais également sur la haute disponibilité et permet de redistribuer intelligement la charge sur leurs différents datacenters.
Compromis
Terminaisons TLS

Comme l'illustre le schéma ci-dessus, les tunnels Cloudflare fonctionnent comme un reverse proxy, ce qui nécessite de déchiffrer intégralement les données envoyées par le client pour pouvoir modifier les en-têtes HTTP et appliquer diverses optimisations.
Le point crucial à retenir est que toutes les données transitent par l'infrastructure de Cloudflare, donnant à cette dernière une visibilité complète sur l'ensemble du trafic. Par conséquent, Cloudflare dispose techniquement de la capacité d'analyser ces données.
Par conséquent, Cloudflare étant une entreprise américaine, elle est soumise à leurs lois, ce qui peut permettre au gouvernement américain d'avoir accès aux données transitant sur leurs serveurs.
Cloudflare comme fournisseur de DNS
L'utilisation des tunnels Cloudflare impose une contrainte majeure : il est impératif d'utiliser Cloudflare comme fournisseur DNS pour votre domaine. Cette exigence technique signifie que l'ensemble de votre configuration DNS doit être migré et géré exclusivement via la plateforme Cloudflare, ce qui fait que vous devenez donc dépendant d'un nouveau service.
Limitation du protocole UDP
Il est important de noter que les tunnels Cloudflare ne supportent pas le protocole UDP (User Datagram Protocol). Cette restriction technique limite l'utilisation du service aux applications basées exclusivement sur TCP, excluant ainsi certains types de services comme les jeux en ligne, la VoIP, etc...
Conclusion
Les tunnels Cloudflare offrent une solution pratique pour exposer ses services locaux sans configuration réseau complexe, mais ce confort a un prix : la dépendance totale à un fournisseur tiers et la perte de contrôle sur ses données.
Entre l'obligation d'utiliser leur DNS, l'impossibilité d'utiliser UDP, et le fait que tout votre trafic transite par leurs serveurs, on se retrouve dans une situation où Cloudflare devient un point de passage incontournable de votre infrastructure.