Hoe de wachtwoordbeveiliging van de webdirectory in Apache in te stellen
Dit artikel maakt deel uit van de Apache Server Guide-serie:
- Apache beveiligen op Ubuntu - Deel 1
- Apache beveiligen op Ubuntu - Deel 2
- Apache-prestaties optimaliseren - deel 1
- Apache-prestaties optimaliseren - deel 2
- Op naam gebaseerde Virtualhost Apache instellen
- IP en op poorten gebaseerde Virtualhost instellen in Apache
- Hoe de wachtwoordbeveiliging van de webdirectory in Apache in te stellen
- Apache-server instellen met SSL-ondersteuning op Ubuntu
- Fail2ban instellen om Apache te beschermen tegen een DDOS-aanval
- Hoe Webdav instellen met Apache op Ubuntu
- Controleer Apache Web Server met Mod_status
- Hoe te beschermen tegen DDoS met Mod_evasive op Apache Server
Apache is een van de meest gebruikte en populaire webservers ter wereld, dus het is belangrijk om uw websites privé te houden voor ongeautoriseerde gebruikers. Apache-authenticatie kan zo worden geconfigureerd dat bezoekers van de website moeten inloggen met een gebruikers-ID en wachtwoord. Er zijn veel manieren waarop u een wachtwoord kunt beveiligen om mappen te beschermen onder een Apache-webserver.
In dit artikel wordt een eenvoudige manier beschreven om een webdirectory in Apache met een wachtwoord te beveiligen met een .htaccess
bestand.
Opmerking : deze tutorial wordt gedaan op een Ubuntu-server waarop Apache is geïnstalleerd.
Het pakket met Apache-hulpprogramma's installeren
Eerst moet u het pakket apache2-utils
installeren dat een hulpprogramma met de naam htpasswd
biedt om een wachtwoordbestand te maken.
U kunt het installeren door de volgende opdracht uit te voeren:
sudo apt-get install apache2-utils
Configureer Apache om .htaccess-verificatie toe te staan
Standaard staat Apache het gebruik van een .htaccess-bestand in Ubuntu 14.04 niet toe. U moet het Apache-configuratiebestand instellen om .htacces-gebaseerde authenticatie mogelijk te maken.
U kunt dit doen door het Apache-configuratiebestand te bewerken:
sudo nano /etc/apache2/apache2.conf
Zoek de sectie die begint met de Directory "/var/www/html"
en verander de regel van AllowOverride none
naar AllowOverride AuthConfig
Opties Indexen FollowSymLinks AllowOverride AuthConfig Vereist alle verleend
Sla het bestand op en sluit het.
Maak het wachtwoordbestand aan
U kunt het opdrachtregelhulpprogramma htpasswd
gebruiken om een wachtwoordbestand te maken dat Apache kan gebruiken om gebruikers te verifiëren. Maak nu een verborgen .htpasswd-bestand in de configuratiemap "/ etc / apache2".
sudo htpasswd -c /etc/apache2/.htpasswd authuser1
Dit zal u vragen om een wachtwoord voor authuser1 in te vullen en te bevestigen.
Als u een andere gebruiker wilt toevoegen, laat dan het argument -c
met de opdracht htpasswd
.
Nu, authuser2 om een nieuwe authenticatie voor een tweede gebruiker te maken:
sudo htpasswd /etc/apache2/.htpasswd authuser2
U kunt de gebruikersnaam en het gecodeerde wachtwoord voor elk record bekijken door het volgende uit te voeren:
sudo cat /etc/apache2/.htpasswd
U moet toestemming verlenen aan de gebruiker "www-data" om het .htpasswd-bestand te kunnen lezen.
sudo chown www-data: www-data /etc/httpd/.htpasswd sudo chmod 0660 /etc/httpd/.htpasswd
Configureer Apache-wachtwoordverificatie
U moet een ".htaccess" -bestand maken in de webdirectory die u wilt beperken. In dit voorbeeld maak ik een ".htaccess" -bestand in de map "/ var / www / html /" om de hele documentroot te beperken.
sudo nano /var/www/html/.htaccess
Voeg de volgende inhoud toe:
AuthType Basic AuthName "Restricted Content" AuthUserFile /etc/apache2/.htpasswd Vereist geldige gebruiker
Dit is wat de bovenstaande code betekent:
- AuthType : deze optie definieert het type authenticatie.
- AuthName : dit is inhoud die op de webpagina wordt weergegeven wanneer om de gebruikersnaam en het wachtwoord wordt gevraagd.
- AuthUserFile : deze optie specificeert de locatie van gebruikersreferenties.
- Vereist geldige gebruiker : dit geeft aan dat alleen succesvolle geverifieerde verzoeken de pagina kunnen laden.
Sla het bestand op en sluit het en start Apache opnieuw om deze wijzigingen door te voeren.
sudo /etc/init.d/apache2 opnieuw opstarten
Testen van wachtwoordverificatie
Nu op een externe machine, toegang tot uw website in een webbrowser. U wordt gevraagd om een gebruikersnaam en wachtwoord voor toegang tot de webpagina.
Als u de juiste gebruikersreferenties opgeeft, krijgt u toegang tot de inhoud. Als u de verkeerde gebruikersreferenties invoert of op "Annuleren" klikt, ziet u de pagina Onbevoegde fout.
Conclusie
U zou nu voldoende kennis moeten hebben om basisverificatie voor uw Apache-webserver in te stellen. Onthoud ook dat wachtwoordbeveiliging moet worden gecombineerd met SSL-codering, zodat uw inloggegevens niet in platte tekst naar de server worden verzonden.