Vérifier comment une ressource HTTP est servie par le CDN Akamai
Mais que vois-je ?
Akamaï est le CDN - Content Delivery Network - le plus célèbre au monde.
Ce service vous permet d'assurer une haute disponibilité et une bonne performance à votre site Web en s'intercalant entre Internet et vos serveurs et en assurant la distribution de vos contenus.
Encore faut-il que la configuration de votre CDN soit efficace pour vos différentes ressources.
Cet article vous présente une méthode de contrôle de votre configuration Akamaï active en ligne de commande sous Linux.
Contrôler les en-têtes HTTP
Installez le programme curl.
# aptitude install curl
curl permet d'afficher les entêtes d'une URL avec l'option -I. Par exemple, pour le site du constructeur Audi :
$ curl -I http://www.audi.com
HTTP/1.1 302 Moved Temporarily
Server: Apache
Location: http://www.audi.com/com/brand/en.html
Content-Type: text/html; charset=iso-8859-1
Date: Tue, 20 Apr 2010 12:03:22 GMT
Proxy-Connection: Keep-Alive
Connection: Keep-Alive
Set-Cookie: countryselector=FR; path=/; domain=.audi.com
Contrôler la configuration Akamaï pour une URL
Pour récupérer les en-têtes Akamaï, il suffit d'ajouter des headers HTTP spécifiques à Akamaï. Les serveurs de celui-ci vont alors laisser apparaître les entêtes techniques spécifiques qui sont habituellement effacés.
Les attributs akamai-x-get-cache-key et akamai-x-cache-on sont les plus intéressants.
$ curl -I -H "Pragma:akamai-x-get-cache-key,akamai-x-cache-on" http://www.audi.com
HTTP/1.1 302 Moved Temporarily
Server: Apache
Location: http://www.audi.com/com/brand/en.html
Content-Type: text/html; charset=iso-8859-1
Date: Tue, 20 Apr 2010 12:06:21 GMT
X-Cache: TCP_MEM_HIT from a92-122-216-148.deploy.akamaitechnologies.com (AkamaiGHost/5.9.2.1-6233892) (-)
X-Cache-Key: /L/1805/8596/1h/origin-www.audi.com/
Proxy-Connection: Keep-Alive
Connection: Keep-Alive
Set-Cookie: countryselector=FR; path=/; domain=.audi.com
Les en-têtes X-Cache dans la réponse HTTP indique que le site www.audi.com est caché par Akamaï.
Ceci est d'ailleurs confirmé par une étude DNS.
$ dig www.audi.com
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 52638
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 2
;; QUESTION SECTION:
;www.audi.com. IN ANY
;; ANSWER SECTION:
www.audi.com. 900 IN CNAME www.audi.com.edgesuite.net.
Le domaine edgesuite.net est utilisé par Akamaï pour nommer ses fermes de serveurs caches.
X-Cache: TCP_MEM_HIT indique que le résultat est issu du cache Akamaï. Les serveurs d'Audi n'ont pas été interrogés. C'est le serveur a92-122-216-148.deploy.akamaitechnologies.com qui a trouvé le résultat de la requête en mémoire.
X-Cache-Key, appelé clé de cache, permet d'aller plus loin. La valeur 1h indique que ce résultat est caché une heure par Akamaï ; m signifie minute, d jour et s seconde.
Enfin, le vrai nom du serveur d'Audi est origin-www.audi.com. Ce dernier est d'ailleurs accessible directement, ce qui représente une faille de sécurité pour qui voudrait attaquer les serveurs Audi par une attaque DDOS.
Récupérer tous les en-têtes HTTP Akamaï
Pour récupérer tous les en-têtes HTTP spécifiques aux serveurs Akamaï, il faut ajouter d'autres paramètres dans la requête.
Toujours pour le même exemple :
$ curl -I -H "Pragma:akamai-x-cache-on, akamai-x-cache-remote-on, akamai-x-check-cacheable, \
akamai-x-get-cache-key, akamai-x-get-extracted-values, akamai-x-get-nonces, \
akamai-x-get-ssl-client-session-id, akamai-x-get-true-cache-key, akamai-x-serial-no" http://www.audi.com
HTTP/1.1 302 Moved Temporarily
Server: Apache
Location: http://www.audi.com/com/brand/en.html
Content-Type: text/html; charset=iso-8859-1
Date: Tue, 20 Apr 2010 12:31:11 GMT
X-Cache: TCP_MEM_HIT from a92-122-126-230.deploy.akamaitechnologies.com (AkamaiGHost/5.9.2.1-6233892) (-)
X-Cache-Key: /L/1805/8596/1h/origin-www.audi.com/
X-True-Cache-Key: /L/origin-www.audi.com/
X-Akamai-Session-Info: name=COUNTRY_CODE; value=FR; full_location_id=country_code
X-Akamai-Session-Info: name=PARENT_SETTING; value=SR4F
X-Serial: 1805
X-Check-Cacheable: YES
Proxy-Connection: Keep-Alive
Connection: Keep-Alive
Set-Cookie: countryselector=FR; path=/; domain=.audi.com
- Ajouter un commentaire
- 2597 lectures

