Tutorials  /  Ubuntu

So richten Sie Nginx als Reverse Proxy auf Ubuntu ein

Ccentron Redaktion · Dezember 2024 ·4 Min. Lesezeit ·Ubuntu, Tutorial

Einführung für die Konfiguration von Nginx als Reverse Proxy

Ein Reverse Proxy ist die empfohlene Methode, um einen Anwendungsserver im Internet bereitzustellen. Egal ob Sie eine Node.js-Anwendung in der Produktion betreiben oder einen minimalen integrierten Webserver mit Flask verwenden, diese Anwendungsserver binden oft an localhost mit einem TCP-Port. Das bedeutet, dass Ihre Anwendung nur lokal auf dem Computer zugänglich ist, auf dem sie sich befindet. Die Verwendung eines Reverse Proxys in der Produktion bietet Sicherheitsvorteile, zentralisierten Firewall-Schutz und eine minimierte Angriffsfläche für häufige Bedrohungen wie Denial-of-Service-Angriffe.

Dieses Tutorial zeigt, wie Sie einen Reverse Proxy mit Nginx einrichten. Sie installieren Nginx, konfigurieren es mit der proxy_pass-Direktive und leiten Header aus Client-Anfragen weiter. Optional richten Sie eine Testanwendung mit dem WSGI-Server Gunicorn ein.

VM

Passende Infrastruktur bei centron

Ubuntu-Server ohne eigene Hardware: ccloud³ VMs mit vollem Root-Zugriff ab 3,12 € im Monat, stundengenau abgerechnet und in Sekunden bereit. Cloud Server mieten →

Voraussetzungen für die Konfiguration von Nginx als Reverse Proxy

Um dieses Tutorial abzuschließen, benötigen Sie:

  • Einen Ubuntu 22.04-Server mit einem nicht-root sudo-fähigen Benutzer und einer Firewall. Folgen Sie unserem Leitfaden zur ersten Serverkonfiguration.
  • Die Adresse des Anwendungsservers, den Sie proxen möchten, bezeichnet als app_server_address. Dies kann eine IP-Adresse mit einem TCP-Port oder ein Unix-Domain-Socket sein.
  • Einen Domainnamen, der auf die öffentliche IP Ihres Servers zeigt und mit Nginx konfiguriert ist, um Ihren Anwendungsserver zu proxen.

Schritt 1 — Nginx als Reverse Proxy installieren

Nginx kann mit apt über die Standard-Repositories installiert werden. Führen Sie die folgenden Befehle aus:

Code

sudo apt update
sudo apt install nginx
sudo ufw allow 'Nginx HTTP'
systemctl status nginx
  

Stellen Sie sicher, dass Nginx läuft und über die Firewall zugänglich ist.

Schritt 2 — Konfiguration Ihres Serverblocks

Erstellen Sie eine benutzerdefinierte Konfigurationsdatei für Ihre neuen Serverblock-Erweiterungen:

Code

sudo nano /etc/nginx/sites-available/your_domain
  

Fügen Sie die folgende Konfiguration ein, wobei Sie your_domain und app_server_address ersetzen:

Code

server {
    listen 80;
    listen [::]:80;

    server_name your_domain www.your_domain;

    location / {
        proxy_pass app_server_address;
        include proxy_params;
    }
}
  

Speichern und schließen Sie die Datei, aktivieren Sie dann die Konfiguration:

Code

sudo ln -s /etc/nginx/sites-available/your_domain /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl restart nginx
  

Schritt 3 — Testen Ihres Reverse Proxys mit Gunicorn (Optional)

Falls Sie keinen Anwendungsserver haben, richten Sie Gunicorn zum Testen ein:

Code

sudo apt update
sudo apt install gunicorn
nano test.py
  

Fügen Sie für die Konfiguration von Nginx als Reverse Proxy den folgenden Code in test.py ein:

Python

def app(environ, start_response):
    start_response("200 OK", [])
    return iter([b"Hello, World!"])
  

Starten Sie den Server:

Code

gunicorn --workers=2 test:app
  

Navigieren Sie zu your_domain in Ihrem Browser, um den Reverse Proxy zu testen.

Fazit zur Konfiguration von Nginx als Reverse Proxy

Mit diesem Tutorial haben Sie Nginx als Reverse Proxy konfiguriert, um den Zugriff auf Ihre Anwendungsserver zu ermöglichen, die sonst nur lokal zugänglich wären. Außerdem haben Sie das Weiterleiten von Anforderungsheadern konfiguriert. Für weitere Beispiele sehen Sie sich Tutorials zum Bereitstellen von Flask-Anwendungen mit Gunicorn und Nginx oder zum Ausführen einer Meilisearch-Frontend-Anwendung mit InstantSearch auf Ubuntu 22.04 an.

Jetzt 200 € Guthaben sichern

Testen Sie Ihr Setup auf ccloud³

Registrieren Sie sich in der ccloud³ und erhalten Sie 200 € Startguthaben für Ihr Projekt – z. B. für eine PostgreSQL-VM mit automatischen Backups.

centron Redaktion Technische Redaktion

Das Redaktionsteam von centron schreibt Anleitungen aus dem Betriebsalltag: getestet auf unserer eigenen Plattform, betrieben im Rechenzentrum in Hallstadt bei Bamberg.

Kategorie Ubuntu
Teilen
Noch offene Fragen?

Our team will help you with your specific setup - in German or English, by people who run the platform themselves.

War dieses Tutorial hilfreich?

Your answer is stored anonymously and helps us improve our tutorials.

Kommentare

No comments yet - be the first to ask a question about this tutorial.

Sign in to comment

Comments are open to centron customers. Sign in to your account to ask a question about this tutorial.

Weiterlesen

Das könnte Sie auch interessieren

Jetzt kostenlos anfangen

Melden Sie sich an und erhalten Sie in den ersten 60 Tagen ein Guthaben von 200 € bei centron.

Dieses Werbeangebot gilt nur für neue Konten. Angebot ausschließlich für Gewerbetreibende.

Jetzt loslegen Sales kontaktieren