Qu'est-ce qu'un CDN ?
Lorsque vous ouvrez un site web, les données n'arrivent pas toujours seulement depuis le serveur de l'exploitant du site.
Les images, CSS, JavaScript, vidéos, polices, fichiers à télécharger et autres éléments peuvent être distribués par un mécanisme appelé CDN.
CDN est l'abréviation de Content Delivery Network.
Pour le dire simplement, c'est un mécanisme qui place les données d'un site web à plusieurs endroits et les distribue depuis un lieu proche de l'utilisateur ou moins encombré.
Comprendre les CDN permet de voir que, même lorsque l'on dit « accéder à un site web », plusieurs éléments interviennent en réalité : serveur de l'exploitant du site, CDN, DNS, terminaison TLS, journaux, cache, etc.
C'est aussi important pour réfléchir à l'anonymat.
En effet, un CDN peut recevoir la communication comme une partie du côté site web et traiter l'adresse IP source, la requête, les cookies, le User-Agent, l'heure d'accès et d'autres informations.
Cet article organise les bases des CDN, ce qui devient plus rapide, où des journaux peuvent rester, et ce qu'il faut regarder du point de vue de l'anonymat.
Qu'est-ce qu'un CDN ?
Un CDN est un réseau destiné à distribuer efficacement du contenu web.
Le serveur qui constitue la source d'un site web est parfois appelé serveur d'origine. Dans une configuration utilisant un CDN, le navigateur ne se connecte pas toujours directement au serveur d'origine ; il peut recevoir les données en passant par un serveur du CDN.
| Élément | Rôle | Explication |
|---|---|---|
| Navigateur de l'utilisateur | Envoie des requêtes | Demande des pages, images, CSS, JavaScript, etc. |
| CDN | Relaye la distribution | Renvoie les données depuis un lieu proche de l'utilisateur |
| Serveur d'origine | Possède les données sources | Serveur source du côté exploitant du site web |
| Cache | Stockage temporaire | Conserve côté CDN les données souvent utilisées |
| DNS | Détermine la destination de connexion | Peut orienter vers un serveur côté CDN |
Un CDN n'est pas un simple « appareil qui accélère ».
Sur le Web moderne, il peut avoir plusieurs rôles : distribution, répartition de charge, protection DDoS, terminaison TLS, WAF, optimisation d'images, lutte contre les bots, analyse de journaux, etc.
Pourquoi utiliser un CDN ?
Les principales raisons d'utiliser un CDN sont la vitesse, la stabilité, la répartition de charge et la protection contre les attaques.
Si l'utilisateur se trouve au Japon et que le serveur d'origine est dans un pays éloigné, aller chercher les données à chaque fois auprès d'un serveur lointain ralentit la communication. Un CDN place les données dans plusieurs points du monde et les renvoie depuis un point proche de l'utilisateur.
| Objectif | Ce qui se passe avec un CDN | Effet visible pour l'utilisateur |
|---|---|---|
| Accélération | Répond depuis un point proche | L'affichage des pages devient plus rapide |
| Répartition de charge | Traite les requêtes dans de nombreux points | Résiste mieux aux pics d'accès |
| Cache | Conserve les mêmes images ou fichiers | La charge sur l'origine diminue |
| Protection DDoS | Reçoit le trafic d'attaque côté CDN | Le site tombe plus difficilement |
| Terminaison TLS | Traite la connexion HTTPS côté CDN | La gestion des certificats et la distribution deviennent plus efficaces |
Les grands sites web, sites d'actualité, sites vidéo, sites de commerce en ligne, SaaS et API d'applications utilisent couramment des CDN.
Du point de vue de l'utilisateur, il accède simplement à un site web comme d'habitude.
Mais en arrière-plan, un point du CDN peut répondre à la place du serveur d'origine.
CDN et cache
Un des mécanismes centraux d'un CDN est le cache.
Le cache consiste à conserver temporairement une donnée déjà obtenue, puis à renvoyer cette donnée conservée lors des requêtes suivantes.
Par exemple, un même logo, un fichier CSS, du JavaScript, une police, une image publique et d'autres données identiques pour de nombreux utilisateurs se prêtent facilement au stockage côté CDN.
| Donnée | Facilité de mise en cache | Point d'attention |
|---|---|---|
| Image | Élevée | Une ancienne image peut rester visible un certain temps |
| CSS | Élevée | Un décalage peut apparaître avant que les mises à jour soient reflétées |
| JavaScript | Élevée | La gestion des versions devient importante |
| Vidéo | Élevée | Le volume de distribution est important, donc l'effet du CDN est fort |
| Page après connexion | Faible | Le contenu individuel doit être traité avec prudence |
| Réponse d'API | Dépend de la conception | Attention si elle contient des informations d'authentification ou des données personnelles |
Du point de vue de l'anonymat et de la vie privée, le cache est pratique, mais il comporte aussi des points d'attention.
D'anciennes images ou pages peuvent rester côté CDN. Même si le site les supprime, elles peuvent rester visibles jusqu'à la mise à jour du cache CDN.
De plus, si la conception du site est mauvaise, il existe un risque d'enregistrer dans le CDN des données personnalisées qui ne devraient pas être mises en cache.
CDN et DNS
Pour un site web qui utilise un CDN, le résultat DNS peut pointer vers le côté CDN.
Lorsqu'un utilisateur accède à un domaine, le DNS peut renvoyer des informations permettant d'aller vers un serveur d'edge du CDN plutôt que vers le serveur d'origine.
Un serveur d'edge est un serveur côté CDN qui reçoit les requêtes à un endroit proche de l'utilisateur.
| Étape | Ce qui se passe |
|---|---|
| 1 | L'utilisateur accède au nom de domaine |
| 2 | Le DNS renvoie une destination de connexion côté CDN |
| 3 | Le navigateur se connecte au serveur d'edge du CDN |
| 4 | Le CDN vérifie le cache |
| 5 | Si le cache existe, le CDN répond |
| 6 | S'il n'existe pas, le CDN va chercher les données auprès du serveur d'origine |
Pour cette raison, le même nom de domaine peut renvoyer des adresses IP différentes selon la région ou le réseau.
Ce n'est pas anormal.
Avec les CDN et la répartition de charge, la destination de connexion change selon le lieu de l'utilisateur, l'état de congestion ou les incidents.
CDN et terminaison TLS
Les communications HTTPS utilisent TLS.
Dans une configuration avec CDN, la destination HTTPS vue par le navigateur peut être le CDN.
Dans ce cas, la communication chiffrée par TLS est déchiffrée une fois au niveau du CDN, et le CDN traite la requête. Ensuite, le CDN la transmet au serveur d'origine par une autre communication.
| Segment | Communication | Point d'attention |
|---|---|---|
| Navigateur vers CDN | Protégé par HTTPS | Pour l'utilisateur, la destination de connexion est côté CDN |
| Intérieur du CDN | Domaine géré par l'opérateur CDN | La requête est traitée côté CDN |
| CDN vers origine | HTTPS selon la configuration | Le réglage de l'exploitant du site est important |
| Serveur d'origine | Traite les données sources | Peut voir la connexion comme venant du CDN |
Cela ne signifie pas que HTTPS est inutile.
HTTPS protège la communication entre le navigateur et la destination de connexion. Toutefois, lorsque le CDN est le point de terminaison TLS, le CDN se trouve en position de traiter la communication.
Du point de vue de l'anonymat, il faut donc considérer le CDN comme un « point d'observation inclus dans le côté site web ».
Ce que le CDN peut voir
Un CDN peut être placé devant le site web.
Dans ce cas, il reçoit les requêtes des utilisateurs. Autrement dit, il peut traiter l'adresse IP source, l'heure d'accès, le User-Agent, la destination de requête, les cookies, les en-têtes HTTP et d'autres informations.
| Information | Possibilité de traitement par le CDN | Signification pour l'anonymat |
|---|---|---|
| Adresse IP source | Oui | Devient un indice sur le réseau d'origine |
| Heure d'accès | Oui | Devient un axe de rapprochement avec d'autres journaux |
| Chemin de l'URL | Oui | Indique quelle page ou API a été demandée |
| User-Agent | Oui | Devient un indice sur le navigateur ou l'OS |
| Selon la conception | Lié à l'état de connexion ou aux identifiants | |
| Volume de trafic | Oui | Rend visibles des tendances comme l'envoi de fichiers ou la consultation vidéo |
Cela ne signifie pas que l'opérateur CDN conserve forcément tout pendant longtemps.
L'étendue des journaux, leur durée de conservation, les droits d'accès et les finalités d'utilisation varient selon l'opérateur CDN et les réglages de l'exploitant du site.
Le point important est que le CDN n'est pas simplement de l'air transparent sur le trajet de communication.
Le CDN est une infrastructure côté site web qui reçoit la communication.
L'adresse IP visible depuis le serveur web change
Lorsqu'un CDN est utilisé, l'adresse IP source visible depuis le serveur d'origine peut changer.
Du point de vue du serveur d'origine, la source directe de connexion n'est pas l'utilisateur, mais l'adresse IP du CDN. Le côté site peut donc traiter l'IP client d'origine au moyen d'en-têtes comme X-Forwarded-For ou CF-Connecting-IP, ou avec les journaux côté CDN.
| Lieu d'observation | IP visible | Explication |
|---|---|---|
| CDN | IP source de l'utilisateur | Reçoit directement la requête de l'utilisateur |
| Serveur d'origine | IP du CDN | La source directe de connexion devient le CDN |
| Application | Selon la configuration | Peut traiter l'IP d'origine par l'intermédiaire d'en-têtes |
| Journaux d'accès | Selon la conception | Des journaux peuvent rester à la fois côté CDN et côté origine |
Lorsque l'on examine des journaux, il faut vérifier « de quel endroit provient ce journal ».
Les informations visibles ne sont pas les mêmes dans les journaux du CDN, les journaux du répartiteur de charge, les journaux du serveur d'origine et les journaux applicatifs.
Un CDN n'est pas une technologie d'anonymisation
Un CDN est un mécanisme qui rend la distribution d'un site web plus rapide, plus stable et plus facile à défendre.
Ce n'est pas un mécanisme destiné à anonymiser l'utilisateur.
Du point de vue de l'utilisateur, le CDN peut faire que l'adresse IP de destination soit celle du CDN plutôt que celle du serveur d'origine. Mais cela ne garantit pas l'anonymat de l'utilisateur.
Le CDN est une infrastructure côté site web.
Si le site de destination, le CDN, l'application, les outils d'analyse d'accès, les balises publicitaires et l'infrastructure d'authentification sont combinés, l'accès de l'utilisateur est traité à différents endroits.
| Idée fausse | Réalité |
|---|---|
| Passer par un CDN rend anonyme | Un CDN est une infrastructure de distribution côté site, pas une technologie d'anonymisation |
| L'IP d'origine n'est pas visible, donc c'est sûr | Les informations de l'utilisateur sont traitées par le CDN ou le côté site |
| Avec HTTPS, même le CDN ne voit rien | Si le CDN termine TLS, il traite la requête |
| Si c'est en cache, il n'y a pas de journaux | Des journaux d'accès peuvent rester côté CDN |
Lorsque l'on réfléchit à l'anonymat, il faut traiter le CDN comme une « partie du côté destination ».
Consulter les informations officielles des CDN
Pour apprendre les CDN, les explications officielles des opérateurs CDN sont aussi utiles.
Cloudflare est l'un des opérateurs représentatifs qui fournissent CDN, protection DDoS, WAF, DNS et autres services. Ses pages d'apprentissage officielles permettent de vérifier quel type de mécanisme est un CDN.
URL : https://www.cloudflare.com/learning/cdn/what-is-a-cdn/
Cela ne signifie toutefois pas qu'utiliser un opérateur CDN particulier rend sûr.
Un CDN est une infrastructure côté exploitant du site ; ce n'est pas un outil qui complète l'anonymat de l'utilisateur. Il est approprié de lire les informations officielles comme une référence pour comprendre le mécanisme.
Points à vérifier pour réfléchir à l'anonymat
Lorsqu'on accède à un site qui utilise un CDN, l'utilisateur ne peut pas connaître complètement la configuration fine du CDN.
Mais les points à considérer peuvent être organisés.
| Point de vue | Ce qu'il faut vérifier |
|---|---|
| Destination | Un CDN peut intervenir en plus du site web |
| Journaux | Distinguer les journaux côté CDN, côté origine et côté application |
| Adresse IP | Même si l'IP de destination est celle d'un CDN, ce n'est pas une anonymisation |
| Cookie | Les cookies et l'état de connexion restent même en passant par un CDN |
| TLS | Garder à l'esprit l'endroit où TLS est terminé |
| Suppression | D'anciennes données peuvent rester dans le cache CDN |
Le CDN est un mécanisme important qui soutient le Web moderne.
En même temps, du point de vue de l'anonymat, c'est aussi un point d'observation important pour réfléchir à l'endroit où la communication est traitée.
Résumé
Un CDN est un mécanisme qui place les données d'un site web à plusieurs endroits et les distribue efficacement depuis un lieu proche de l'utilisateur.
Il peut accélérer l'affichage des pages, répartir la charge, réduire la charge du serveur d'origine et aider à se défendre contre certaines attaques.
Cependant, un CDN n'est pas une technologie d'anonymisation.
Le CDN peut recevoir des requêtes comme une partie du côté site web et traiter l'adresse IP source, les cookies, le User-Agent, l'heure d'accès, le chemin de l'URL et d'autres informations.
De plus, lorsque le CDN termine TLS, il se trouve en position de traiter la requête.
Pour comprendre l'anonymat, il ne suffit pas de penser « le site utilise HTTPS » ou « le site utilise un CDN ».
Il faut organiser où la communication est traitée, quels journaux peuvent rester, et quelles informations sont visibles pour le CDN, l'origine et l'application.
Outils liés
BrowserLeaks WebRTC
Ressource externe liée à cet article. Ouvrez-la seulement si elle correspond à votre situation et à votre modèle de menace.
Pourquoi il est listé ici: Elle peut aider sur le sujet de l’article, mais elle se situe hors d’Anonymity Sense et doit être vérifiée avant usage.
Google Search removal tools
Ressource externe liée à cet article. Ouvrez-la seulement si elle correspond à votre situation et à votre modèle de menace.
Pourquoi il est listé ici: Elle peut aider sur le sujet de l’article, mais elle se situe hors d’Anonymity Sense et doit être vérifiée avant usage.