Hoe een Apache-website met een wachtwoord te beveiligen met .htaccess
Stap 1: configureer uw .htaccess-bestand
Al het werk zal worden gedaan met behulp van uw .htaccess-bestand. Je vindt dit bestand aan de basis van de meeste Apache-websites.
De schermafbeelding is genomen van een vanilla-installatie van WordPress op Windows 2003 Server:
Het .htaccess-bestand wordt gecontroleerd door Apache voordat webpagina's worden weergegeven. Meestal wordt het gebruikt voor ReWrites of ReDirects, maar u kunt het ook gebruiken om gebruik te maken van de ingebouwde beveiligingsfuncties van Apache.
Dus, de eerste stap is om een paar parameters toe te voegen aan het bestand. Hieronder staat een voorbeeld .htaccess-bestand. (TIP: ik gebruik notepad ++ om de meeste PHP en gerelateerde bestanden te bewerken)
AuthUserFile c: apachesecurity.htpasswd AuthName "Please Enter User & PW" AuthType Basic vereist geldige gebruiker
Enige uitleg:
AuthUserFile: APACHE heeft de locatie van het gebruikers- / wachtwoordbestand nodig. Voer gewoon het volledige pad naar uw wachtwoorddatabase in zoals hierboven getoond. Het bovenstaande voorbeeld is afkomstig uit mijn Windows-venster. Als je Linux gebruikt, zou het ongeveer zoiets zijn als: AuthUserFile /full/path/to/.htpasswd
AuthName: Dit veld definieert de titel en tekst voor het pop-upvenster dat de gebruikersnaam en PW zal aanvragen. Je kunt dit ALLES maken wat je wilt. Hier is een voorbeeld van mijn testbox:
AuthType: Dit veld vertelt Apache welk type verificatie wordt gebruikt. In bijna alle gevallen is "Basic" prima (en de meest gebruikelijke).
Vereist geldige gebruiker: Met dit laatste commando weet Apache WIE is toegestaan. Door het gebruiken van "valid-user“, je vertelt Apache DAT IEMAND zich mag authenticeren als hij een geldige gebruikersnaam en wachtwoord heeft.
Als u liever EXACT bent, kunt u een specifieke GEBRUIKER of GEBRUIKERS opgeven. Dit commando zou er als volgt uitzien:
Vereist gebruiker mrgroove groovyguest
In dit geval zouden alleen de gebruikers mrgroove en groovyguest de pagina / map die u beschermt mogen betreden (uiteraard na het verstrekken van de juiste gebruikersnaam en wachtwoord). Alle andere gebruikers (inclusief geldige) krijgen geen toegang. Als u meer gebruikers wilt toestaan, scheidt u ze met spaties.
Dus nu we alle configuratie-instellingen hebben gemaakt, is hier wat het voltooide .htaccess-bestand er als volgt uitziet:
Screenshot is genomen vanuit een Windows 2003 Server-box met WordPress:
Stap 2: Maak het .htpasswd-bestand
Het maken van het .htpasswd-bestand is een eenvoudig proces. Het bestand is niets meer dan een tekstbestand met een lijst met gebruikers en hun versleutelde wachtwoorden. Elke gebruikersreeks moet op zijn regel worden gescheiden. Persoonlijk gebruik ik gewoon Kladblok ++ of Windows Kladblok om het bestand te maken.
Hieronder is een voorbeeld .htpasswd-bestand met twee gebruikers gemaakt:
Hoewel Apache niet "vereist" dat je de wachtwoorden codeert, is het een eenvoudig proces voor zowel Windows als Linux-systemen.
ramen
Navigeer naar je Apache BIN-map (meestal te vinden op C: \ Program Files \ Apache Group \ Apache2bin) en voer het hulpmiddel htpasswd.exe uit om een met MD5 gecodeerde gebruikersnaam / wachtwoord-string te genereren. Je kunt de tool ook gebruiken om het .htpasswd-bestand voor je te maken (wat werkt ...). Voor alle details, voer gewoon de hulpschakelaar uit vanaf de commandoregel (htpasswd.exe /?).
In bijna alle gevallen voert u gewoon het volgende commando uit:
htpasswd -nb gebruikersnaam wachtwoord
Nadat de opdracht is uitgevoerd, voert het hulpprogramma htpasswd.exe de gebruikerstekenreeks uit met het versleutelde wachtwoord.
Schermafbeelding hieronder is een voorbeeld van het uitvoeren van het hulpprogramma htpasswd.exe op Windows 2003 Server
Zodra u de gebruikersstring hebt, kopieert u deze naar uw .htpasswd-bestand.
Linux:
Ga naar: http://railpix.railfan.net/pwdonly.html om uw User-strings te maken met gecodeerde wachtwoorden. Heel eenvoudig proces.
Stap 3: Controleer of Apache correct is geconfigureerd * optioneel
Standaard heeft Apache de juiste modules ingeschakeld. Dat gezegd hebbende, het doet nooit pijn om een beetje proactief te zijn en het is een snelle "check".
Open uw Apache httpd.conf-bestand en controleer of de AUTH-module is ingeschakeld:
Als u vindt dat de module niet is ingeschakeld, corrigeert u deze zoals hierboven weergegeven. Vergeet niet; je moet Apache herstarten om wijzigingen in je httpd.conf door te voeren.
Dat zou ervoor moeten zorgen. Helemaal klaar.
Tags: apache, codering, htaccess, beveiliging, windows