Comment configurer Apache Traffic Server en tant que proxy inverse sur Ubuntu 14.04

introduction

Apache Traffic Server est un serveur proxy de mise en cache hautement évolutif, capable de traiter de gros volumes de demandes simultanées tout en maintenant une latence très faible. Comparé à d’autres serveurs proxy populaires, tels que Varnish ou Squid, il consomme généralement moins de mémoire et répond plus rapidement. Il est également conçu pour tirer le meilleur parti des processeurs multicœurs modernes. Selon vos besoins, vous pouvez l’utiliser comme proxy inverse ou comme proxy direct.

Ce didacticiel explique comment installer Apache Traffic Server sur Ubuntu 14.04 et le configurer pour qu’il se comporte comme un proxy inverse en cache.

Conditions préalables

Pour suivre ce tutoriel, vous aurez besoin de:

Étape 1 - Installation de Traffic Server

Traffic Server étant disponible sur les référentiels par défaut d’Ubuntu 14.04, vous pouvez l’installer à l’aide de + apt-get +. Assurez-vous de mettre à jour vos fichiers d’index de package avant de le faire.

sudo apt-get update && sudo apt-get install trafficserver

Traffic Server écoute par défaut le port 8080. Vous pouvez utiliser un navigateur pour visiter + http: //: 8080 / + maintenant. Cependant, vous verrez une erreur car vous ne l’avez pas encore configurée.

Étape 2 - Installation d’un serveur Web

Par définition, un serveur proxy agit en tant qu’intermédiaire entre des utilisateurs externes et un serveur Web. Par conséquent, avant de commencer à configurer Traffic Server, vous devez installer un serveur Web tel que Apache HTTP Server sur votre ordinateur.

Installez et démarrez Apache en utilisant + apt-get.

sudo apt-get install apache2

Vous pouvez maintenant utiliser un navigateur et visiter + http: /// + pour voir la page d’accueil d’Apache.

Étape 3 - Désactivation de l’accès à distance au serveur Web

Apache accepte les connexions sur toutes les interfaces réseau par défaut. En le configurant pour accepter les connexions uniquement sur l’interface de bouclage, vous pouvez vous assurer qu’il est inaccessible aux utilisateurs distants.

Ouvrez + ports.conf + en utilisant + nano + ou votre éditeur de texte préféré.

sudo nano /etc/apache2/ports.conf

Recherchez la ligne contenant la directive + Listen 80 + et remplacez-la par:

ports.conf

Listen

Enregistrez et quittez le fichier.

Ensuite, ouvrez + apache2.conf +.

sudo nano /etc/apache2/apache2.conf

Ajoutez la ligne suivante à la fin du fichier:

apache2.conf

ServerName localhost

Enregistrez et fermez le fichier.

Pour appliquer les modifications de configuration, redémarrez Apache à l’aide de la commande suivante:

sudo service apache2 restart

Essayez d’utiliser un navigateur pour visiter à nouveau + http: /// +. Votre navigateur devrait maintenant afficher une erreur, car vous avez bloqué l’accès distant au serveur.

Étape 4 - Configuration de Traffic Server en tant que proxy inverse

Dans cette étape, nous allons configurer Traffic Server en tant que proxy inverse. Pour ce faire, ouvrez + remap.config +, qui est le fichier que vous devez éditer pour définir les règles de mappage de Traffic Server.

sudo nano /etc/trafficserver/remap.config

Créons une règle simple selon laquelle toutes les demandes adressées à l’adresse IP du serveur sur le port 8080 sont mappées sur l’adresse locale et le port du serveur Web. Vous pouvez le faire en ajoutant la ligne suivante à la fin du fichier:

remap.config

map http://:8080/ http://127.0.0.1:80/

Enregistrez le fichier et quittez.

Pour activer la nouvelle règle de mappage, utilisez la commande + reread_config + de + traffic_line +:

sudo traffic_line --reread_config

Ouvrez un navigateur et visitez + http: //: 8080 / +. Si vous pouvez voir la page d’accueil d’Apache maintenant, vous avez correctement configuré Traffic Server en tant que proxy inverse.

Étape 5 - Configuration de Traffic Server pour qu’il mette tout en cache

Par défaut, Traffic Server mettra en cache une réponse HTTP uniquement s’il contient un en-tête + Cache-Control + ou + Expires + spécifiant explicitement la durée pendant laquelle l’élément doit être stocké dans le cache. Cependant, notre serveur Web ne servant que des fichiers statiques, il est prudent de mettre en cache toutes ses réponses.

Pour configurer Traffic Server de telle sorte qu’il mette en cache toutes les réponses HTTP, vous devez modifier la valeur d’une variable de configuration appelée + proxy.config.http.cache.required_headers + en * 0 *. Cela peut être fait en utilisant la commande + set_var + de + traffic_line +.

sudo traffic_line --set_var proxy.config.http.cache.required_headers --value 0

Appliquez la modification à l’aide de l’indicateur + reread_config +.

sudo traffic_line --reread_config

Ouvrez un navigateur et visitez à nouveau + http: //: 8080 / +. Ceci stockera la page d’accueil Apache dans le cache de Traffic Server.

Étape 6 - Inspection du cache

Pour afficher le contenu du cache de Traffic Server, vous pouvez utiliser un outil appelé Cache Inspector, doté d’une interface Web.

Pour activer l’outil, définissez la valeur de la variable + proxy.config.http_ui_enabled + config sur * 1 *.

sudo traffic_line --set_var proxy.config.http_ui_enabled --value 1

Créez ensuite une règle de mappage spécifiant le chemin que vous souhaitez utiliser pour y accéder. Ouvrez + remap.config + encore en utilisant + nano +.

sudo nano /etc/trafficserver/remap.config

Rendons l’inspecteur de cache disponible sur + / inspect +. Pour ce faire, ajoutez la ligne suivante en haut du fichier:

remap.config

map http://:8080/inspect http://{cache}

Enregistrez le fichier et quittez.

Pour appliquer les modifications, redémarrez Traffic Server.

sudo service trafficserver restart

L’inspecteur de cache est maintenant prêt à être utilisé. Ouvrez un navigateur et visitez + http: //: 8080 / inspect / +. Vous verrez une page qui ressemble à ceci:

image: https: //assets.digitalocean.com/articles/traffic_server/ajEXtig.png [page d’accueil de Cache Inspector]

Ensuite, cliquez sur le lien * Lookup url *.

Vous pouvez maintenant taper une URL dans le champ de texte et cliquer sur le bouton * Lookup * pour vérifier si elle est stockée dans le cache.

Par exemple, vous pouvez taper + http: //: 8080 / + pour vérifier si la page d’accueil de votre serveur Web est en cours de traitement à partir du cache. Si c’est le cas, vous verrez une page qui ressemble à ceci:

image: https: //assets.digitalocean.com/articles/traffic_server/VFzMcc3.png [Détails du document mis en cache]

Conclusion

Vous savez maintenant comment installer Apache Traffic Server sur Ubuntu 14.04 et le configurer en tant que proxy inverse de mise en cache. Bien que nous ayons utilisé Apache comme serveur Web dans ce didacticiel, vous pouvez tout aussi facilement utiliser n’importe quel autre serveur Web. Pour en savoir plus sur Traffic Server, vous pouvez consulter son Guide de l’administrateur.