Htaccess-beveiligde mappen: verschil tussen versies
(4 tussenliggende versies door dezelfde gebruiker niet weergegeven) | |||
Regel 22: | Regel 22: | ||
* Kopiëer deze regel naar het clipboard. | * Kopiëer deze regel naar het clipboard. | ||
− | === Voeg | + | === Voeg hash-regel toe aan .htpasswd === |
− | + | Voeg de nieuwe hash-regel toe aan het <code>.htpasswd</code>-bestand, of maak eerst een nieuw leeg bestand aan. | |
− | + | Voorbeeld van een .htpasswd-bestand met drie hash-regels: | |
<pre> | <pre> | ||
testsite:vP1G4AlavcJho | testsite:vP1G4AlavcJho | ||
wittekippen:./FRbXa69pKmk | wittekippen:./FRbXa69pKmk | ||
+ | welcome:vDQWD2ZSKoUHk | ||
</pre> | </pre> | ||
− | Als je voor meerdere sites dezelfde loginnaam-wachtwoord-combinaties gebruikt (dat heb ik vaak, omdat ik alleen een simpele drempel behoef), dan heb je maar één regel in het .htpasswd-bestand nodig. | + | * Merk op dat elke hash-regel van toepassing is op elke site! |
+ | * Als je voor meerdere sites dezelfde loginnaam-wachtwoord-combinaties gebruikt (dat heb ik vaak, omdat ik alleen een simpele drempel behoef), dan heb je maar één regel in het .htpasswd-bestand nodig | ||
+ | * Wil je niet dat hash-regels op meerdere sites van toepassing zijn: Gebruik dan per site een apart <code>.htpasswd</code>-bestand. | ||
− | === .htaccess-bestand | + | === Creëer .htaccess-bestand === |
Maak een ''.htaccess''-bestand aan in de ''root'' van de betreffende site (bv. <code>/var/www/example.com/.htaccess</code>). Voorbeeld: | Maak een ''.htaccess''-bestand aan in de ''root'' van de betreffende site (bv. <code>/var/www/example.com/.htaccess</code>). Voorbeeld: | ||
Regel 42: | Regel 45: | ||
AuthName "I am so glad that you are here" | AuthName "I am so glad that you are here" | ||
AuthType Basic | AuthType Basic | ||
− | AuthUserFile /var/.htpasswd | + | AuthUserFile /var/www/.htpasswd |
require valid-user | require valid-user | ||
</pre> | </pre> | ||
Regel 63: | Regel 66: | ||
</Directory> | </Directory> | ||
</pre> | </pre> | ||
+ | |||
+ | == Ongedaan maken == | ||
+ | |||
+ | .htaccess-beveiliging ongedaan maken? | ||
+ | |||
+ | Open het .htaccess-bestand en commentariseer de betreffende regels uit - Of verwijder ze. | ||
== Deny from all (feb. 2019) == | == Deny from all (feb. 2019) == |
Huidige versie van 19 jun 2023 om 17:25
Regelmatig maak ik gebruik van .htaccess om mappen met een wachtwoord te beveiligen. Het doel is om bots buiten de deur te houden, en om een eenvoudige privacy-gerelateerde drempel op te werpen. Dit artikel is beperkt tot deze use case.
Hoe het werkt
Bepaal pad naar .htpasswd-bestand
Alle wachtwoorden worden in één .htpasswd-bestand opgeslagen, dat bij voorkeur buiten de boom staat wat door de webserver geserveerd wordt.
Locatie die ik hanteer:
/var/www/.htpasswd
Kies loginnaam & wachtwoord
Meestal kies ik een standaard loginnaam en wachtwoord, omdat ik deze manier van beveiliging doorgaans alleen gebruik om Google buiten de deur te houden.
Genereer hash
- Ga naar http://www.tools.dynamicdrive.com/password
- Vul in: Gebruikersnaam & wachtwoord, klik op Submit
- In het veld
.htpasswd
verschijnt een regel met zoiets alswelcome:vDQWD2ZSKoUHk
- Kopiëer deze regel naar het clipboard.
Voeg hash-regel toe aan .htpasswd
Voeg de nieuwe hash-regel toe aan het .htpasswd
-bestand, of maak eerst een nieuw leeg bestand aan.
Voorbeeld van een .htpasswd-bestand met drie hash-regels:
testsite:vP1G4AlavcJho wittekippen:./FRbXa69pKmk welcome:vDQWD2ZSKoUHk
- Merk op dat elke hash-regel van toepassing is op elke site!
- Als je voor meerdere sites dezelfde loginnaam-wachtwoord-combinaties gebruikt (dat heb ik vaak, omdat ik alleen een simpele drempel behoef), dan heb je maar één regel in het .htpasswd-bestand nodig
- Wil je niet dat hash-regels op meerdere sites van toepassing zijn: Gebruik dan per site een apart
.htpasswd
-bestand.
Creëer .htaccess-bestand
Maak een .htaccess-bestand aan in de root van de betreffende site (bv. /var/www/example.com/.htaccess
). Voorbeeld:
AuthName "I am so glad that you are here" AuthType Basic AuthUserFile /var/www/.htpasswd require valid-user
Hostconfiguratie-bestand moet correct zijn
In het bestand waarin je voor Apache een domeinnaam specificeert, moet toegestaan worden dat je middels .htaccess mappen beveiligt. Ik geloof dat het gaat om de regel Require all granted
:
<Directory /home/flup/public/example.com/public> AllowOverride All Require all granted RewriteEngine on RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ index.php?q=$1 [L,QSA] </Directory>
Ongedaan maken
.htaccess-beveiliging ongedaan maken?
Open het .htaccess-bestand en commentariseer de betreffende regels uit - Of verwijder ze.