Startseite » Wie man » So schützen Sie eine Apache-Website mit .htaccess mit einem Kennwort

    So schützen Sie eine Apache-Website mit .htaccess mit einem Kennwort

    Wenn Sie Ihre Website mit Apache betreiben, ist das Sichern der Website mit einem Kennwort ein einfacher Vorgang. Ich habe vor kurzem den Prozess auf einer Windows-Box durchgearbeitet (Mehrheit der Einstellungen unten), jedoch sind die Schritte für Windows- oder Linux-Apache-Sites ziemlich gleich.

    Schritt 1: Konfigurieren Sie Ihre .htaccess-Datei

    Alle Arbeiten werden mit Ihrer .htaccess-Datei erledigt. Sie finden diese Datei im Stammverzeichnis der meisten Apache-Websites.

    Der Screenshot stammt von einer Vanilla-Installation von WordPress unter Windows 2003 Server:

    Die .htaccess-Datei wird von Apache geprüft, bevor Webseiten angezeigt werden. Normalerweise wird es für ReWrites oder ReDirects verwendet. Sie können jedoch auch die integrierten Sicherheitsfunktionen von Apache nutzen.

    Der erste Schritt besteht also darin, der Datei einige Parameter hinzuzufügen. Unten finden Sie eine Beispieldatei für .htaccess. (TIPP: Ich verwende Notepad ++, um die meisten PHP- und verwandten Dateien zu bearbeiten.)

    AuthUserFile c: apachesecurity.htpasswd AuthName "Bitte geben Sie User & PW ein" AuthType Basic erfordert gültigen Benutzer

    Einige Erklärung:

    AuthUserFile: APACHE benötigt den Ort der Benutzer- / Passwortdatei. Geben Sie einfach den vollständigen Pfad zu Ihrer Kennwort-Datenbankdatei ein, wie oben gezeigt. Das obige Beispiel stammt aus meiner Windows-Box. Wenn Sie mit Linux arbeiten, würde es ungefähr so ​​aussehen: AuthUserFile /full/path/to/.htpasswd

    AuthName: Dieses Feld definiert den Titel und den Text für das Popup-Feld, in dem Benutzername und PW abgefragt werden. Sie können dies ALLES machen, was Sie wollen. Hier ist ein Beispiel auf meiner 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).

    Gültiger Benutzer erforderlich: Dieser letzte Befehl teilt Apache mit, wer erlaubt ist. Durch die Nutzung "gültiger Benutzer“, Sie sagen Apache ANYONE darf sich authentifizieren, wenn sie einen gültigen Benutzernamen und ein gültiges Passwort haben.

    Wenn Sie mehr EXACT bevorzugen, können Sie einen bestimmten USER oder USERS angeben. Dieser Befehl würde folgendermaßen aussehen:

    Erfordert den Benutzer mrgroove groovyguest

    In diesem Fall dürfen nur die Benutzer mrgroove und groovyguest die Seite / das Verzeichnis eingeben, das Sie schützen (nachdem Sie natürlich den richtigen Benutzernamen und das richtige Kennwort angegeben haben). Allen anderen Benutzern (einschließlich der gültigen Benutzer) wird der Zugriff verweigert. Wenn Sie mehr Benutzer zulassen möchten, trennen Sie diese einfach durch Leerzeichen.

    Nun, da wir alle Konfigurationseinstellungen vorgenommen haben, sollte Ihre fertige .htaccess-Datei folgendermaßen aussehen:

    Der Screenshot stammt von einer Windows 2003 Server-Box mit WordPress:

    Schritt 2: Erstellen Sie die .htpasswd-Datei

    Das Erstellen der .htpasswd-Datei ist ein einfacher Vorgang. Die Datei ist nichts weiter als eine Textdatei mit einer Liste von Benutzern und ihren verschlüsselten Passwörtern. Jede Benutzerzeichenfolge sollte in ihrer Zeile getrennt werden. Ich persönlich benutze einfach Notepad ++ oder Windows Notepad, um die Datei zu erstellen.

    Unten sehen Sie eine .htpasswd-Beispieldatei mit zwei Benutzern:

    Obwohl Apache nicht verlangt, dass Sie die Kennwörter verschlüsseln, ist dies ein einfacher Vorgang für Windows- und Linux-Systeme.

    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 Benutzername / Kennwort-Zeichenfolge zu generieren. Sie können das Tool auch verwenden, um die .htpasswd-Datei für Sie zu erstellen (was auch immer funktioniert). Um alle Details zu erfahren, führen Sie einfach den Hilfeschalter über die Befehlszeile aus (htpasswd.exe /?).

    In fast allen Fällen führen Sie jedoch einfach den folgenden Befehl aus:

    htpasswd -nb Benutzername Kennwort

    Sobald der Befehl ausgeführt wird, 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:

    Gehen Sie zu http://railpix.railfan.net/pwdonly.html, um Ihre Benutzerzeichenfolgen mit verschlüsselten Passwörtern zu erstellen. Sehr einfacher Prozess.

    Schritt 3: Vergewissern Sie sich, dass Apache ordnungsgemäß konfiguriert ist * optional

    In Apache sind die korrekten Module aktiviert. Davon abgesehen, es schadet nie, etwas proaktiv zu sein, und es ist ein schneller „Check“..

    Öffnen Sie Ihre Apache-Datei httpd.conf 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. Nicht vergessen Sie müssen Apache neu starten, damit die Änderungen an Ihrer httpd.conf wirksam werden.

    Das sollte sich darum kümmern. Alles erledigt.

    Stichworte: Apache, Verschlüsselung, Zugriff, Sicherheit, Fenster