Zurück zum Blog

Konfigurieren der einfachen HTTP-Authentifizierung mit Nginx auf Ubuntu 20.04

Konfigurieren der einfachen HTTP-Authentifizierung mit Nginx auf Ubuntu 20.04

Nginx ist ein kostenloser Open-Source-Webserver, der für Lastverteilung, Pufferung und Caching. Seit seiner Einführung im Jahr 2004 hat Nginx an Beliebtheit für die Skalierung von Webservern und das Reverse-Proxying gewonnen. Aufgrund seiner hohen Leistung und seiner hervorragenden Fähigkeiten zur Bewältigung einer großen Anzahl von Verbindungen wird er zur Verwaltung und Steuerung des eingehenden Datenverkehrs eingesetzt.

Wie funktioniert die HTTP-Authentifizierung?

Bei der Basis-HTTP-Authentifizierung sind alle Routen auf dem Server blockiert und erfordern die entsprechenden Anmeldedaten zur Authentifizierung. Wann immer ein Benutzer versucht, auf eine geschützte Ressource zuzugreifen, sendet der Server dem Benutzer einen WWW-Authenticate-Header und eine 401 Unauthorized-Antwort. Wenn der vom Benutzer verwendete Benutzername und das Passwort korrekt sind und mit der Schlüsseldatei übereinstimmen, wird die Verbindung hergestellt, andernfalls wird sie verweigert.

In dieser Anleitung führen wir Sie durch die Schritte zur Einrichtung der Basis-HTTP-Authentifizierung mit Nginx auf Ubuntu 20.04.

Voraussetzungen

Um dieser Anleitung zu folgen, benötigen Sie Folgendes:

Schritt 1: Software-Repositories aktualisieren

Bevor Sie neue Software oder ein API-Paket auf Ihrem System installieren, aktualisieren Sie die Repositories, um Fehler oder Paketkonflikte zu vermeiden. Zunächst aktualisieren wir die Software mit dem Befehl sudo Befehl:

Nachdem wir nun die Software-Repositories aktualisiert haben, installieren wir die erforderlichen apache2-Pakete.

Schritt 2: Erforderliche Pakete installieren

Da wir die HTTP-Authentifizierung für ein Verzeichnis einrichten, verwenden wir den Befehl htpasswd, um ein verschlüsseltes Passwort zu erstellen. Installieren Sie das apache2-utils-Paket mit dem folgenden Befehl:

Schritt 3: Benutzer und Passwort erstellen

In diesem Schritt richten wir die Anmeldedaten für die Basis-HTTP-Authentifizierung ein. Erstellen Sie im Stammverzeichnis eine .htpasswd-Datei, die dem Benutzer zugeordnet ist. Das Passwort wird verschlüsselt, und der Dateiname kann frei gewählt werden. Verwenden Sie den folgenden Befehl, um die Datei zu erstellen und den Benutzer mit einem verschlüsselten Passwort hinzuzufügen:

User and Password

Überprüfen Sie als Nächstes die neu erstellte Datei mit dem folgenden Befehl:

newly-created file

Schritt 4: Nginx-Konfiguration aktualisieren

Sobald wir unsere Anmeldedaten für die HTTP-Basisauthentifizierung haben, richten wir Nginx ein und verwenden es auf unserer Ziel-Website. Wir benötigen die Direktiven auth_basic und auth_basic_user_file, um die HTTP-Basisauthentifizierung einzurichten. Der Wert der Direktive auth_basic ist ein String-Format, während der Wert von auth_basic_user_file der Pfad zu der in Schritt 3.

erstellten Passwortdatei ist. Es ist wichtig, die beiden Direktiven in die Konfigurationsdatei der Ziel-Website aufzunehmen. Sie finden den Speicherort der Ziel-Website im Verzeichnis /etc/nginx/sites-available. Öffnen Sie die Konfigurationsdatei mit dem Nano-Editor:

Fügen Sie dann beide Direktiven im Abschnitt location hinzu:

Speichern und schließen Sie die Konfigurationsdatei nach dem Hinzufügen der Direktive.

Schritt 5: Nginx neu starten

Laden Sie als Nächstes die Nginx-Dienste neu oder starten Sie sie neu, um die Änderungen auf unserem virtuellen Host anzuwenden. Danach versuchen wir, über unsere grundlegende HTTP-Authentifizierung auf die gesicherte Domain zuzugreifen. Verwenden Sie den folgenden Befehl, um die Nginx-Dienste zu aktivieren:

Schritt 6: Sicherer Webzugriff

Sobald Sie Nginx neu gestartet haben, besteht der nächste Schritt darin, zu versuchen, auf die IP-Adresse oder den Domainnamen in Ihrem bevorzugten Browser zuzugreifen. Beim Klicken auf die IP-Adresse http://your_domain_name/ in Ihrem Browser öffnet sich eine Aufforderung, die Sie zur Eingabe der Anmeldedaten zur Authentifizierung auffordert. Sobald Sie den richtigen Benutzernamen und das richtige Passwort eingegeben haben, sehen Sie die Standard-Nginx-Startseite.

Fazit

In dieser Anleitung haben wir gelernt, wie man eine grundlegende HTTP-Authentifizierung mit Nginx konfiguriert. Die grundlegende Authentifizierung über Benutzername/Passwort ist nur eine von vielen Authentifizierungsoptionen, um eine sichere Verbindung in Nginx herzustellen.

Es gibt andere leistungsstarke Optionen, die für die Serverauthentifizierung verwendet werden. Zu den beliebten Methoden, die Sie verwenden können, gehören beispielsweise API-Integrationen, JSON Web Tokens, SSH-Schlüssel-basierte Authentifizierungen. Auch wenn die Einrichtung robuster Sicherheitsmechanismen anfangs schwierig erscheinen mag, sind sie äußerst effektiv, um Ihre Privatsphäre zu schützen.

Darüber hinaus gibt es viele weitere Lernmaterialien und Tutorials zu Nginx, auf die Sie über unsere Blogs:

Viel Spaß beim Computing!

author

Shreyas Patil

Autor · CloudSigma

Preslav Dobrev ist ein kreativer Designer bei CloudSigma und konzentriert sich auf eine konsistente Unternehmensidentität durch traditionelle und innovative Marketingkanäle. Er versteht es meisterhaft, künstlerische Vision mit strategischem Marketing zu verbinden, um wirkungsvolle Markengeschichten zu schaffen.

Kommentare

Noch keine Kommentare. Schreiben Sie den ersten.