Vous avez toujours voulu configurer une application proxy ? Les applications proxy sont un moyen efficace d'augmenter votre confidentialité en ligne. Envoy Proxy est l'une des meilleures applications pour configurer un serveur proxy HTTP. Et la meilleure partie de celui-ci? C'est entièrement gratuit !
Dans ce didacticiel, vous apprendrez à utiliser Envoy comme serveur proxy inverse HTTP ou même comme serveur relais TCP. Configurez vos propres politiques de sécurité personnalisées en quelques clics !
Continuez à lire et laissez Envoy Proxy Server vous aider à augmenter votre confidentialité !
Prérequis
Ce tutoriel sera une démonstration pratique. Si vous souhaitez suivre, assurez-vous d'avoir les éléments suivants :
- Une machine Linux :cette démo utilise Ubuntu 20.04 LTS, mais n'importe quelle distribution Linux fonctionnera.
- Un utilisateur non root avec des privilèges sudo.
Installation du proxy Envoy
Avant de mettre des applications en proxy, vous devez d'abord installer l'application sur votre machine, de la même manière que vous le faites avec d'autres packages. Mais vous installerez également les dépendances requises avant de l'installer à partir d'un référentiel tiers.
1. Exécutez le apt update
commande ci-dessous à update
l'index du référentiel de votre machine.
sudo apt update -y
2. Ensuite, exécutez le apt install
commande ci-dessous pour récupérer des packages à partir de référentiels via le protocole HTTP Secure (HTTPS) (apt-transport-https
). La commande installe ensuite les dépendances requises (gnupg2)
La commande récupère les packages à partir des référentiels via le protocole FTP (curl
) et affiche les informations LSB (Linux Standard Base) sur la machine (lsb-release
). Les informations LSB lui permettent de savoir avec quelle version LSB votre machine est compatible.
sudo apt install apt-transport-https gnupg2 curl lsb-release -y
3. Exécutez le curl
ci-dessous commande pour importer la clé GPG depuis le développeur du serveur (gpg.8115BA8E629CC074.key
) à votre trousseau de clés APT (getenvoy-keyring.gpg
). Cette clé GPG garantit que vous obtenez la version officielle du serveur plutôt qu'une attaque man-in-the-middle.
Le trousseau de clés APT utilise GPG pour vérifier la signature du référentiel du serveur proxy Envoy avant de l'installer ou de le mettre à niveau.
curl -sL 'https://deb.dl.getenvoy.io/public/gpg.8115BA8E629CC074.key' | sudo gpg --dearmor -o /usr/share/keyrings/getenvoy-keyring.gpg
La commande n'a pas de sortie si la clé GPG est importée correctement, comme celle ci-dessous.
4. Maintenant, exécutez le echo
commande ci-dessous pour vérifier que la clé GPG est valide et fiable (sha256sum --check
). Remplacer key_ring
avec le trousseau de clés publiques du développeur.
echo key_ring /usr/share/keyrings/getenvoy-keyring.gpg | sha256sum --check
Comme vous pouvez le voir ci-dessous, la clé est valide et utilisable.
5. Exécutez le echo
ci-dessous commande pour ajouter le référentiel officiel du serveur proxy Envoy (https://deb.dl.getenvoy.io/public/deb/ubuntu $(lsb_release -cs) main
) à votre machine. Cette commande indique à APT où télécharger et installer les packages.
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/getenvoy-keyring.gpg] https://deb.dl.getenvoy.io/public/deb/ubuntu $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/getenvoy.list
Vous verrez le dl.getenvoy.io/public/deb/ubuntu chaîne dans la sortie ci-dessous, qui est l'endroit où votre serveur est hébergé, et qu'il se trouve dans la version focale canaliser. Cette sortie confirme que le référentiel du serveur est ajouté à votre machine.
6. Ensuite, réexécutez le apt update
commande pour obtenir les dernières informations sur les packages à partir des référentiels sur votre machine.
sudo apt update -y
7. Exécutez le apt-cache policy
ci-dessous pour confirmer que le serveur est disponible pour l'installation à partir du référentiel sur votre machine.
sudo apt-cache policy
Ci-dessous, vous pouvez voir que le serveur est disponible pour l'installation sur votre machine Ubuntu à partir de son canal de publication (focal channel ).
8. Enfin, exécutez le apt install
commande ci-dessous pour installer le serveur (getenvoy-envoy
).
sudo apt install getenvoy-envoy -y
Exécution du serveur proxy Envoy
Vous avez installé le serveur proxy Envoy, mais comment savez-vous qu'il fonctionne ? Vous exécuterez une instance de démonstration à partir de votre terminal.
1. Exécutez le envoy --version
commande pour vérifier la version du serveur en cours d'exécution sur votre machine.
envoy --version
Si vous avez correctement installé le serveur, vous verrez la version imprimée sur votre terminal. Dans cette démo, la version est 1.18.2, mais la vôtre peut être différente.
2. Ensuite, exécutez le envoy --help
pour répertorier toutes les options que vous pouvez utiliser lors de l'exécution du serveur proxy Envoy.
envoy --help
Vous pouvez utiliser la plupart des options répertoriées dans la sortie ci-dessous pour afficher ou modifier le comportement du serveur.
3. Exécutez le wget
commande ci-dessous pour télécharger la configuration de démonstration nommée envoy-demo.yaml
fichier à partir du site Web du serveur. Vous utiliserez ce fichier pour démarrer une démo.
wget https://www.envoyproxy.io/docs/envoy/latest/_downloads/92dcb9714fb6bc288d042029b34c0de4/envoy-demo.yaml
Le envoy-demo.yaml le contenu du fichier ressemble à celui ci-dessous. Ce fichier indique au serveur d'écouter les connexions entrantes (0.0.0.0) pour traiter les requêtes HTTP sur le port 10000.
4. Maintenant, exécutez la commande ci-dessous pour dire au serveur de lire la configuration (-c envoy-demo.yaml
) fichier, qui démarre une instance.
envoy -c envoy-demo.yaml
5. Ensuite, exécutez la commande ci-dessous pour vérifier tous les processus en cours d'exécution dans votre système (ps -ef
) et vérifiez qu'Envoy Proxy Server est en cours d'exécution (grep envoy
).
ps -ef | grep envoy
Vous verrez le processus Envoy Proxy Server répertorié dans la sortie ci-dessous. À ce stade, votre serveur proxy Envoy écoute les requêtes et le proxy sur le port 10000.
6. Exécutez le netstat
commande ci-dessous pour vérifier si le serveur proxy Envoy écoute le port 10000
.
sudo netstat -tulpn | grep :10000
Ci-dessous, vous pouvez voir le numéro de port (10000) que vous avez utilisé pour configurer Envoy Proxy Server.
7. Maintenant, exécutez le ufw
commande ci-dessous pour ouvrir le port 10000
sur votre pare-feu. Si vous utilisez un pare-feu tiers, vous devrez peut-être ajuster la commande pour ouvrir le port correspondant pour votre serveur proxy.
La commande ci-dessous ajoute une règle de pare-feu pour sécuriser votre serveur puisqu'il n'écoute que les connexions entrantes du port 10000.
sudo ufw allow 10000/tcp
8. Exécutez le ufw status
pour vérifier l'état de votre pare-feu et confirmer que le port de votre serveur proxy Envoy est ouvert.
sudo ufw status verbose
La sortie ci-dessous confirme que le port du serveur proxy Envoy (10000) est ouvert sur votre pare-feu.
9. Enfin, exécutez le curl
commande ci-dessous pour savoir si votre serveur proxy Envoy fonctionne comme prévu.
curl -v localhost:10000
Comme prévu, la commande curl est mandatée par Envoy Proxy Server, comme vous pouvez voir la page d'accueil par défaut d'Envoy Proxy ci-dessous.
Conclusion
Dans ce didacticiel, vous avez appris à installer et à exécuter Envoy Proxy Server sur votre machine Ubuntu. Vous avez également évoqué l'ajout d'une règle de pare-feu pour ouvrir le port du serveur proxy Envoy (10000 ) et vérifié que votre serveur proxy Envoy fonctionne parfaitement.
À ce stade, vous disposez d'un serveur proxy entièrement fonctionnel et vous pouvez maintenant l'utiliser pour proxy le trafic de votre application.
Maintenant, pourquoi ne pas mettre en place une infrastructure proxy évolutive et hautement disponible avec Envoy Proxy Server avec ces nouvelles connaissances ?