How-To-Passwort Schützen Sie eine Apache-Website mit .htaccess
Sicherheit Microsoft Apache / / March 17, 2020
Zuletzt aktualisiert am
Wenn Sie Ihre Website mit Apache ausführen, ist das Sichern der Website mit einem Kennwort ein einfacher Vorgang. Ich habe den Prozess kürzlich auf einer Windows-Box durchlaufen (die meisten der folgenden Aufnahmen), aber die Schritte sind für Windows- oder Linux-Apache-Sites ziemlich gleich.
Schritt 1: Konfigurieren Sie Ihre .htaccess-Datei
Alle Arbeiten werden mit Ihrer .htaccess-Datei ausgeführt. Sie finden diese Datei im Stammverzeichnis der meisten Apache-Websites.
Der Screenshot stammt aus einer Vanille-Installation von WordPress unter Windows 2003 Server:
Die .htaccess-Datei wird von Apache überprüft, bevor Webseiten angezeigt werden. Normalerweise wird es für ReWrites oder ReDirects verwendet. Sie können es jedoch auch verwenden, um die integrierten Sicherheitsfunktionen von Apache zu nutzen.
Der erste Schritt besteht also darin, der Datei einige Parameter hinzuzufügen. Unten finden Sie eine Beispieldatei für .htaccess. (TIPP: Ich benutze Notizblock ++ um die meisten PHP und verwandte Dateien zu bearbeiten)
AuthUserFile c: apachesecurity.htpasswd. AuthName "Bitte Benutzer & PW eingeben" AuthType Basic. erfordern einen gültigen Benutzer
Einige Erklärungen:
AuthUserFile: APACHE benötigt den Speicherort der Benutzer- / Kennwortdatei. Geben Sie einfach den vollständigen Pfad zu Ihrer Kennwortdatenbankdatei ein, wie oben gezeigt. Das obige Beispiel stammt aus meiner Windows-Box. Wenn Sie Linux verwenden, ist dies ungefähr so: AuthUserFile /full/path/to/.htpasswd
AuthName: Dieses Feld definiert den Titel und den Text für das Popup-Feld, in dem der Benutzername und die PW angefordert werden. Sie können alles machen, was Sie wollen. Hier ist ein Beispiel für meine Testbox:
Authentifizierungstyp: Dieses Feld teilt Apache mit, welche Art von Authentifizierung verwendet wird. In fast allen Fällen ist „Basic“ in Ordnung (und am häufigsten).
Erforderlichen gültigen Benutzer: Dieser letzte Befehl informiert Apache darüber, wer berechtigt ist. Durch die Nutzung "gültiger Benutzer“, Sie teilen Apache mit, dass sich JEDER authentifizieren darf, wenn er einen gültigen Benutzernamen und ein gültiges Passwort hat.
Wenn Sie es vorziehen, GENAUER zu sein, können Sie einen bestimmten BENUTZER oder BENUTZER angeben. Dieser Befehl würde folgendermaßen aussehen:
Benötigen Sie den Benutzer mrgroove groovyguest
In diesem Fall dürfen nur die Benutzer mrgroove und groovyguest die Seite / das Verzeichnis eingeben, die / das Sie schützen (natürlich nach Angabe des richtigen Benutzernamens und Passworts). Allen anderen Benutzern (einschließlich gültigen) wird der Zugriff verweigert. Wenn Sie mehr Benutzer zulassen möchten, trennen Sie sie einfach durch Leerzeichen.
Nachdem wir nun alle Konfigurationseinstellungen vorgenommen haben, sollte Ihre fertige .htaccess-Datei folgendermaßen aussehen:
Der Screenshot stammt aus einer Windows 2003 Server-Box, in der WordPress ausgeführt wird:
Schritt 2: Erstellen Sie die .htpasswd-Datei
Das Erstellen der .htpasswd-Datei ist ein einfacher Vorgang. Die Datei ist nichts anderes als eine Textdatei, die eine Liste der Benutzer und ihrer verschlüsselten Passwörter enthält. Jede Benutzerzeichenfolge sollte in ihre Zeile getrennt werden. Persönlich benutze ich nur Notizblock ++ oder Windows Notepad, um die Datei zu erstellen.
Unten sehen Sie eine beispielhafte .htpasswd-Datei mit zwei Benutzern:
Obwohl Apache nicht verlangt, dass Sie die Kennwörter verschlüsseln, ist dies sowohl für Windows- als auch für Linux-Systeme ein einfacher Vorgang.
Windows
Navigieren Sie zu Ihrem Apache BIN-Ordner (normalerweise unter C: \ Programme \ Apache Group \ Apache2bin) und führen Sie das Tool htpasswd.exe aus, um eine MD5-verschlüsselte Zeichenfolge für Benutzername / Kennwort zu generieren. Sie können das Tool auch verwenden, um die .htpasswd-Datei für Sie zu erstellen (was auch immer funktioniert…). Für alle Details führen Sie einfach den Hilfeschalter über die Befehlszeile aus (htpasswd.exe /?).
Führen Sie jedoch in fast allen Fällen einfach den folgenden Befehl aus:
htpasswd -nb Benutzername Passwort
Sobald der Befehl ausgeführt wurde, gibt das Tool htpasswd.exe die Benutzerzeichenfolge mit dem verschlüsselten Kennwort aus.
Der folgende Screenshot zeigt ein Beispiel für die Ausführung des Tools htpasswd.exe unter Windows 2003 Server
Sobald Sie die Benutzerzeichenfolge haben, kopieren Sie sie in Ihre .htpasswd-Datei.
Linux:
Gehe zu: http://railpix.railfan.net/pwdonly.html um Ihre Benutzerzeichenfolgen mit verschlüsselten Passwörtern zu erstellen. Sehr einfacher Vorgang.
Schritt 3: Stellen Sie sicher, dass Apache richtig konfiguriert ist * optional
Standardmäßig sind in Apache die richtigen Module aktiviert. Davon abgesehen schadet es nie, ein wenig proaktiv zu sein, und es ist eine schnelle "Überprüfung".
Öffnen Sie Ihre Apache httpd.conf-Datei und stellen Sie sicher, dass das AUTH-Modul aktiviert ist:
Wenn Sie feststellen, dass das Modul nicht aktiviert ist, korrigieren Sie es einfach wie oben gezeigt. Vergiss nicht; Sie müssen Apache neu starten, damit Änderungen an Ihrer httpd.conf wirksam werden.
Das sollte sich darum kümmern. Alles erledigt.
Stichworte:Apache, Verschlüsselung, htaccess, Sicherheit, Fenster