Hur man löser Skydda en Apache-webbplats med .htaccess
Steg 1: Konfigurera .htaccess-filen
Allt arbete kommer att göras med din .htaccess-fil. Du kan hitta den här filen i roten till de flesta Apache-webbplatser.
Skärmdumpen togs från en vaniljinstallation av WordPress som körs på Windows 2003 Server:
.Htaccess filen kontrolleras av Apache innan du visar webbsidor. Vanligtvis används den för ReWrites eller ReDirects men du kan också använda den för att utnyttja de inbyggda säkerhetsfunktionerna i Apache.
Så det första steget är att lägga till några parametrar i filen. Nedan är ett exempel .htaccess-fil. (TIPS: Jag använder anteckningsblock ++ för att redigera de flesta PHP och relaterade filer)
AuthUserFile c: apachesecurity.htpasswd AuthName "Vänligen ange User & PW" AuthType Basic kräver giltig användare
Några förklaringar:
AuthUserFile: APACHE behöver platsen för användar- / lösenordsfilen. Ange bara den fullständiga sökvägen till din lösenordsdatafil som visas ovan. Exemplet ovan är hämtat från min Windows-ruta. Om du kör Linux, skulle det vara något som: AuthUserFile /full/path/to/.htpasswd
AuthName: Det här fältet definierar titeln och texten för popup-rutan som kommer att kräva användarnamnet och PW. Du kan göra detta någonting du vill ha. Här är ett exempel på min testlåda:
AuthType: Detta fält berättar Apache vilken typ av Autentisering som används. I nästan alla fall är "Basic" bara bra (och det vanligaste).
Kräv giltig användare: Det här sista kommandot låter Apache veta WHO är tillåtet. Genom att använda "valid-user”, du berättar Apache Någon får autentisera om de har ett giltigt användarnamn och lösenord.
Om du föredrar att vara mer EXAKT kan du ange en specifik USER eller ANVÄNDARE. Detta kommando skulle se ut:
Kräv användaren mrgroove groovyguest
I det här fallet får bara användarna mrgroove och groovyguest komma in på den sida / katalog du skyddar (efter att du har fått rätt användarnamn och lösenord förstås). Alla andra användare (inklusive giltiga) kommer att nekas åtkomst. Om du vill tillåta fler användare kan du bara skilja dem med mellanslag.
Så nu när vi har alla config-inställningar gjorda, här är vad din färdiga .htaccess-fil ska se ut:
Skärmdump tas från en Windows 2003 Server-låda som kör WordPress:
Steg 2: Skapa .htpasswd-filen
Skapa en .htpasswd-fil är en enkel process. Filen är inget annat än en textfil som innehåller en lista över användare och deras krypterade lösenord. Varje användarsträng ska separeras på sin linje. Personligen använder jag bara anteckningsblankett ++ eller Windows Anteckningsblock för att skapa filen.
Nedan visas ett exempel .htpasswd-fil med två användare:
Även om Apache inte "kräver" dig att kryptera lösenordet, är det en enkel process för både Windows och Linux-system.
Windows
Navigera till din Apache BIN-mapp (vanligtvis i C: \ Program Files \ Apache Group \ Apache2bin) och kör htpasswd.exe-verktyget för att generera en MD5-krypterad användarnamn / lösenordsträng. Du kan också använda verktyget för att skapa .htpasswd-filen för dig (vad som helst ...). För alla detaljer, exekvera bara hjälpväxeln från kommandoraden (htpasswd.exe /?).
I nästan alla fall, exekverar du bara följande kommando:
htpasswd -nb användarnamn lösenord
När kommandot exekveras kommer verktyget htpasswd.exe att mata ut användarsträngen med krypterat lösenordet.
Skärmbilden nedan är ett exempel på att utföra htpasswd.exe-verktyget på Windows 2003 Server
När du har användarsträngen, kopiera den till din .htpasswd-fil.
Linux:
Gå till: http://railpix.railfan.net/pwdonly.html för att skapa dina användarsträngar med krypterade lösenord. Mycket enkel process.
Steg 3: Verifiera Apache är konfigurerad korrekt * valfritt
Apache har som standard rätt moduler aktiverade. Det sägs att det aldrig gör ont för att vara lite proaktivt plus det är en snabb "check".
Öppna din Apache httpd.conf-fil och verifiera att AUTH-modulen är aktiverad:
Om du upptäcker att modulen inte är aktiverad, bara korrigera den som visas ovan. Glöm inte; du måste starta om Apache för att ändringar i din httpd.conf ska träda i kraft.
Det ska ta hand om det. Klart.
Tags: apache, kryptering, htaccess, säkerhet, windows