Wollten Sie schon immer eine Proxy-Anwendung einrichten? Proxy-Anwendungen sind eine effektive Möglichkeit, Ihre Privatsphäre online zu erhöhen. Envoy Proxy ist eine der besten Anwendungen zum Einrichten eines HTTP-Proxy-Servers. Und das Beste daran? Es ist völlig kostenlos!
In diesem Lernprogramm erfahren Sie, wie Sie Envoy als HTTP-Reverse-Proxy-Server oder sogar als TCP-Relay-Server verwenden. Konfigurieren Sie Ihre eigenen benutzerdefinierten Sicherheitsrichtlinien mit nur wenigen Klicks!
Lesen Sie weiter und lassen Sie Envoy Proxy Server dabei helfen, Ihre Privatsphäre zu schützen!
Voraussetzungen
Dieses Tutorial wird eine praktische Demonstration sein. Wenn Sie mitmachen möchten, stellen Sie sicher, dass Sie Folgendes haben:
- Eine Linux-Maschine – Diese Demo verwendet Ubuntu 20.04 LTS, aber jede Linux-Distribution funktioniert.
- Ein Nicht-Root-Benutzer mit sudo-Berechtigungen.
Installieren von Envoy Proxy
Bevor Sie Anwendungen als Proxy verwenden, installieren Sie zunächst die Anwendung auf Ihrem Computer, ähnlich wie Sie dies bei anderen Paketen tun. Aber Sie installieren auch die erforderlichen Abhängigkeiten, bevor Sie es aus einem Drittanbieter-Repository installieren.
1. Führen Sie apt update
aus Befehl unten zu update
den Repository-Index Ihrer Maschine.
sudo apt update -y

2. Führen Sie als Nächstes apt install
aus Befehl unten, um Pakete aus Repositorys über das sichere HTTP-Protokoll (HTTPS) abzurufen (apt-transport-https
). Der Befehl installiert dann die erforderlichen Abhängigkeiten (gnupg2)
Der Befehl holt Pakete aus Repositorys über das FTP-Protokoll (curl
) und zeigt LSB-Informationen (Linux Standard Base) über die Maschine an (lsb-release
). Die LSB-Informationen teilen ihm mit, mit welcher LSB-Version Ihr Gerät kompatibel ist.
sudo apt install apt-transport-https gnupg2 curl lsb-release -y

3. Führen Sie den folgenden curl
aus Befehl zum Importieren des GPG-Schlüssels vom Entwickler des Servers (gpg.8115BA8E629CC074.key
) an Ihren APT-Schlüsselbund (getenvoy-keyring.gpg
). Dieser GPG-Schlüssel stellt sicher, dass Sie die offizielle Version des Servers erhalten und keinen Man-in-the-Middle-Angriff.
Der APT-Schlüsselbund verwendet GPG, um die Signatur des Repositorys des Envoy-Proxyservers zu prüfen, bevor er installiert oder aktualisiert wird.
curl -sL 'https://deb.dl.getenvoy.io/public/gpg.8115BA8E629CC074.key' | sudo gpg --dearmor -o /usr/share/keyrings/getenvoy-keyring.gpg
Der Befehl hat keine Ausgabe, wenn der GPG-Schlüssel korrekt importiert wird, wie unten gezeigt.

4. Führen Sie nun echo
aus Befehl unten, um zu überprüfen, ob der GPG-Schlüssel gültig und vertrauenswürdig ist (sha256sum --check
). Ersetzen Sie key_ring
mit dem öffentlichen Schlüsselbund des Entwicklers.
echo key_ring /usr/share/keyrings/getenvoy-keyring.gpg | sha256sum --check
Wie Sie unten sehen können, ist der Schlüssel gültig und kann verwendet werden.

5. Führen Sie den folgenden echo
aus Befehl zum Hinzufügen des offiziellen Repositorys des Envoy-Proxyservers (https://deb.dl.getenvoy.io/public/deb/ubuntu $(lsb_release -cs) main
) zu Ihrer Maschine. Dieser Befehl teilt APT mit, wo Pakete heruntergeladen und installiert werden sollen.
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
Sie sehen dl.getenvoy.io/public/deb/ubuntu string in der unten gezeigten Ausgabe, wo Ihr Server gehostet wird, und dass er sich in der Focal-Version befindet Kanal. Diese Ausgabe bestätigt, dass das Repository des Servers zu Ihrem Computer hinzugefügt wurde.

6. Führen Sie als Nächstes apt update
erneut aus Befehl, um die neuesten Paketinformationen aus den Repositorys auf Ihrem Computer abzurufen.
sudo apt update -y

7. Führen Sie apt-cache policy
aus Befehl unten, um zu bestätigen, dass der Server für die Installation aus dem Repository auf Ihrem Computer verfügbar ist.
sudo apt-cache policy
Unten können Sie sehen, dass der Server für die Installation auf Ihrem Ubuntu-Rechner über seinen Veröffentlichungskanal (Fokuskanal) verfügbar ist ).

8. Führen Sie abschließend apt install
aus Befehl unten, um den Server zu installieren (getenvoy-envoy
).
sudo apt install getenvoy-envoy -y

Ausführen des Envoy-Proxyservers
Sie haben den Envoy Proxy Server installiert, aber woher wissen Sie, dass er funktioniert? Sie führen eine Demoinstanz von Ihrem Terminal aus.
1. Führen Sie envoy --version
aus Befehl, um die auf Ihrem Computer ausgeführte Serverversion zu überprüfen.
envoy --version
Wenn Sie den Server korrekt installiert haben, sehen Sie die Version auf Ihrem Terminal gedruckt. In dieser Demo ist die Version 1.18.2, aber Ihre kann anders sein.

2. Führen Sie als Nächstes envoy --help
aus Befehl, um alle Optionen aufzulisten, die Sie beim Ausführen des Envoy-Proxyservers verwenden können.
envoy --help
Sie können die meisten der in der Ausgabe unten aufgeführten Optionen verwenden, um das Verhalten des Servers anzuzeigen oder zu ändern.

3. Führen Sie wget
aus Befehl unten, um die Demokonfiguration mit dem Namen envoy-demo.yaml
herunterzuladen Datei von der Website des Servers. Sie werden diese Datei verwenden, um eine Demo zu starten.
wget https://www.envoyproxy.io/docs/envoy/latest/_downloads/92dcb9714fb6bc288d042029b34c0de4/envoy-demo.yaml

Die envoy-demo.yaml Der Inhalt der Datei sieht wie folgt aus. Diese Datei weist den Server an, auf eingehende Verbindungen (0.0.0.0) zu lauschen, um HTTP-Anforderungen in Port 10000 zu verarbeiten.

4. Führen Sie nun den folgenden Befehl aus, um dem Server mitzuteilen, dass er die Konfiguration lesen soll (-c envoy-demo.yaml
)-Datei, die eine Instanz startet.
envoy -c envoy-demo.yaml

5. Führen Sie als Nächstes den folgenden Befehl aus, um alle laufenden Prozesse in Ihrem System zu überprüfen (ps -ef
) und vergewissern Sie sich, dass Envoy Proxy Server ausgeführt wird (grep envoy
).
ps -ef | grep envoy
Sie sehen den Envoy Proxy Server-Prozess, der in der Ausgabe unten aufgeführt ist. An diesem Punkt lauscht Ihr Envoy-Proxyserver auf Anfragen und Proxys auf Port 10000.

6. Führen Sie netstat
aus Befehl unten, um zu prüfen, ob der Envoy-Proxyserver auf Port 10000
lauscht .
sudo netstat -tulpn | grep :10000
Unten sehen Sie die Portnummer (10000), die Sie zum Konfigurieren von Envoy Proxy Server verwendet haben.

7. Führen Sie nun ufw
aus Befehl unten, um Port 10000
zu öffnen auf Ihrer Firewall. Wenn Sie eine Drittanbieter-Firewall verwenden, müssen Sie möglicherweise den Befehl anpassen, um den entsprechenden Port für Ihren Proxy-Server zu öffnen.
Der folgende Befehl fügt eine Firewall-Regel hinzu, um Ihren Server zu schützen, da er nur eingehende Verbindungen von Port 10000 abhört.
sudo ufw allow 10000/tcp

8. Führen Sie ufw status
aus Befehl, um Ihren Firewall-Status zu überprüfen und zu bestätigen, dass Ihr Envoy Proxy Server-Port offen ist.
sudo ufw status verbose
Die folgende Ausgabe bestätigt, dass der Port (10000) des Envoy-Proxyservers in Ihrer Firewall geöffnet ist.

9. Führen Sie schließlich curl
aus Befehl unten, um zu erfahren, ob Ihr Envoy-Proxyserver wie vorgesehen funktioniert/proxyt.
curl -v localhost:10000
Wie erwartet wird der Curl-Befehl von Envoy Proxy Server weitergeleitet, wie Sie unten die Standard-Willkommensseite von Envoy Proxy sehen können.

Schlussfolgerung
In diesem Lernprogramm haben Sie gelernt, wie Sie Envoy Proxy Server auf Ihrem Ubuntu-Computer installieren und ausführen. Sie haben auch das Hinzufügen einer Firewall-Regel zum Öffnen des Ports von Envoy Proxy Server (10000 ) und verifiziert, dass Ihr Envoy Proxy Server einwandfrei funktioniert.
An diesem Punkt haben Sie einen voll funktionsfähigen Proxy-Server und können ihn jetzt verwenden, um den Datenverkehr Ihrer Anwendung zu proxieren.
Warum also nicht mit diesem neu gewonnenen Wissen eine skalierbare und hochverfügbare Proxy-Infrastruktur mit Envoy Proxy Server einrichten?