Wie man Passwort schützt, schützen Sie Webverzeichnisse in Nginx

Wie man Passwort schützt, schützen Sie Webverzeichnisse in Nginx

Manager von Webprojekten müssen ihre Arbeit häufig auf die eine oder andere Weise schützen. Oft fragen die Leute, wie sie ihre Website schützen, während sie noch in der Entwicklung ist.

Nginx Passwort schützen Webverzeichnis

In diesem Tutorial zeigen wir Ihnen eine einfache, aber effektive Technik zum kennwortgeschützten Webverzeichnis, wenn Sie Nginx als Webserver ausführen.

Falls Sie Apache Web Server verwenden, können Sie unser Handbuch zum Schutz eines Webverzeichnisses überprüfen:

  1. Passwort schützen Webverzeichnisse in Apache

Anforderungen

Um die Schritte in diesem Tutorial auszuführen, müssen Sie:

  • NGINX -Webserver installiert
  • Root -Zugriff auf den Server

Schritt 1: Benutzer und Passwort erstellen

1. Um unser Webverzeichnis zu schützen, müssen wir die Datei erstellen, die unsere verschlüsselten enthalten wird Nutzername Und Passwort.

Beim Benutzen Apache, du kannst den ... benutzen "htpasswd" Dienstprogramm. Wenn Sie dieses Dienstprogramm auf Ihrem System installiert haben, können Sie diesen Befehl verwenden, um die Kennwortdatei zu generieren:

# htpasswd -c/path/to/file/.Htpasswd Benutzername 

Beim Ausführen dieses Befehls werden Sie aufgefordert, ein Passwort für den obigen Benutzer festzulegen, und danach die .htpasswd Die Datei wird im angegebenen Verzeichnis erstellt.

HTPasswd: NINGINX -Benutzerkennwortdatei erstellen

2. Wenn Sie dieses Tool nicht installieren lassen, können Sie das erstellen .htpasswd manuell Datei. Die Datei sollte die folgende Syntax haben:

Benutzername: Verschlüsselter Passwort: Kommentar

Der Nutzername Das Sie verwenden werden, hängt von Ihnen ab. Wählen Sie alles, was Sie möchten.

Der wichtigere Teil ist die Art und Weise, wie Sie das Kennwort für diesen Benutzer generieren.

Schritt 2: Verschlüsselter Passwort generieren

3. Verwenden Sie, um das Passwort zu generieren, die integrierte Perls integriert "Krypta" Funktion.

Hier ist ein Beispiel für diesen Befehl:

# Perl -le 'Print Crypt ("Ihr Passwort", "Salzhash")' 

Ein Beispiel im wirklichen Leben:

# Perl -le 'Print Crypt ("# 12dfsaa $ fa", "1xzcq")' 
Generieren Sie verschlüsselte Pasword

Öffnen Sie nun eine Datei und setzen Sie Ihren Benutzernamen und den in String generierten, getrennt mit Semikolon ab.

Hier ist, wie:

# vi/home/tecmint/.htpasswd 

Geben Sie Ihren Benutzernamen und Ihr Passwort ein. In meinem Fall sieht es so aus:

Tecmint: 1xv2rdw7q6mk. 

Speichern Sie die Datei, indem Sie klicken "Esc" gefolgt von ": WQ".

Fügen Sie dem HTPasswd verschlüsselter Passwort hinzu

Schritt 3: Aktualisieren Sie die NGINX -Konfiguration

4. Öffnen und bearbeiten Sie nun die Nginx -Konfigurationsdatei und bearbeiten Sie die Site, an der Sie arbeiten. In unserem Fall verwenden wir die Standarddatei unter:

# vi/etc/nginx/conf.D/Standard.conf [für Centos basierte Systeme] oder # vi/etc/nginx/nginx.conf [für Centos basierte Systeme] # vi/etc/nginx/sites-fähig/Standard [für Debian basierte Systeme] 

In unserem Beispiel schützen wir das Verzeichnisstamm für Nginx, nämlich: /usr/share/nginx/html.

5. Fügen Sie nun den folgenden Abschnitt mit zwei Zeilen unter dem Pfad hinzu, den Sie schützen möchten.

auth_basic "Administrator Login"; auth_basic_user_file/home/tecmint/.htpasswd; 
Passwort schützen Nginx -Verzeichnis

Speichern Sie nun die Datei und starten Sie Nginx neu mit:

# SystemCTL Neustart Nginx oder # Service Nginx Neustart 

6. Kopieren Sie diese IP -Adresse nun in Ihren Browser und Sie sollten nach Passwort gefragt werden:

Nginx Passwort schützen Login

Das ist es! Ihr Haupt -Webverzeichnis ist jetzt geschützt. Wenn Sie den Passwortschutz auf der Website entfernen möchten, entfernen Sie einfach die beiden Zeilen, zu denen Sie gerade hinzugefügt haben .htpasswd Datei oder verwenden Sie den folgenden Befehl, um den hinzugefügten Benutzer aus einer Kennwortdatei zu entfernen.

# htpasswd -d/path/to/file/.Htpasswd Benutzername