Beveiligen website folders met .htpasswd bestand

Om bijvoorbeeld een WordPress site te beveiligen kun je gebruik maken van .htaccess en .htpasswd files. Beide files moeten in de folder staan die je via de webserver wil beveiligen. Voor een Worpdress site zou je deze files in de wp-admin folder kunnen plaatsen. In deze folder staan namelijk de bestanden die nodig zijn om aan te loggen naar je WordPress site.Normaal gesproken kan je via de URL “http://<naam-van-je-site>/wp-login.php” met een UserID en Password aanloggen naar het admin gedeelte van je WordPress site. Een extra beveiliging is dus het gebruik van .htaccess en .htpasswd files. Deze files komen in de wp-admin folder te staan. Het .htpasswd file bevat de naam van de userid en het password. Dit password staat versleuteld in het file door middel van MD5 encryption. Gebruik een UserID en Password dat afwijkt van de UerID en Password zoals je die al gebruikt in WordPress om aan te loggen naar de admin omgeving.
Via een online htpasswd generator kan je online je .htpassword file aanmaken. De inhoud van het .htpassword bestand komt er dan als volgt uit te zien:
testuser:$apr1$sl8g.5Hb$koqtFguyc1BNR09IcDJxm.

Als je een eigen webserver hebt met een LAMP (XAMP voor Windows) installatie, dan kan je via de commandline je eigen .htpasswd aanmaken. Ga in de folder staan waarin het .htpasswd file moet komen en type na de prompt het volgende in:
server:/srv/www/htdocs/wordpress/wp-admin # htpasswd2 -cmb testuser testpassword
Het reultaat zal zijn dat er in de folder wp-admin een bestand .htpasswd komt te staan met de volgende inhoud:
testuser:$apr1$sl8g.5Hb$koqtFguyc1BNR09IcDJxm.

Nu nog in dezelfde directory een .htaccess files aanmaken dat verwijst naar, en gebruik maakt van voornoemd .htpasswd file. De inhoud zou kunnen zijn:
AuthUserFile /srv/www/htdocs/wordpress/wp-admin/.htpasswd
AuthType Basic
AuthName “restricted area”
Order Deny,Allow
Deny from all
Require valid-user
Satisfy any

Wanneer je nu aanlogd naar je admin omgeving van je WordPress site zal er twee keer om een UserID en password gevraagd worden. De eerste is die voor de toegang tot je wp-admin folder (testuser met PW testpassword). De tweede is de reguliere WordPress authenticatie.

Het gebruik van .htpassword in combinatie met een .htaccess bestand kan in principe voor iedere folder gebruikt worden die je met een password wilt beveiligen op je website. Let op dat je niet iedere folder gaat dichttimmeren want dan wordt je site onbenaderbaar. Bovenstaande manier werkt perfect bij een WordPress installatie.
Op deze manier ben je weer een stap verder in het beveiligen van je site.