Denne artikel er en del af Apache Server Guide serien:

  • Sikring af Apache på Ubuntu - Del 1
  • Sikring af Apache på Ubuntu - Del 2
  • Optimering af Apache Performance - Del 1
  • Optimering af Apache Performance - Del 2
  • Opsætning af navnebaseret Virtualhost Apache
  • Opsætning af IP og portbaseret Virtualhost i Apache
  • Sådan oprettes adgangskodebeskyttet webkatalog i Apache
  • Opsætning af Apache Server med SSL-support på Ubuntu
  • Opsætning af Fail2ban for at beskytte Apache fra et DDOS-angreb
  • Sådan opsættes Webdav med Apache på Ubuntu
  • Overvåg Apache Web Server ved hjælp af Mod_status
  • Sådan beskytter du mod DDoS med Mod_evasive på Apache Server

Apache er en af ​​de mest anvendte og populære webservere i verden, så det er vigtigt at holde dine websites private fra uautoriserede brugere. Apache-godkendelse kan konfigureres til at kræve, at besøgende på webstedet logger ind med et bruger-id og en adgangskode. Der er mange måder, du kan passwordbeskytte mapper under en Apache webserver.

Denne artikel beskriver en nem måde at kodeordbeskytte et webkatalog i Apache ved hjælp af en .htaccess fil.

Bemærk : Denne vejledning udføres på en Ubuntu-server med Apache installeret.

Installation af Apache Utilities Package

For det første skal du installere apache2-utils pakken, som indeholder et værktøj, der hedder htpasswd at oprette en adgangskodefil.

Du kan installere det ved at køre følgende kommando:

 sudo apt-get install apache2-utils 

Konfigurer Apache til Tillad .htaccess-godkendelse

Apache tillader ikke som standard en .htaccess-fil i Ubuntu 14.04. Du skal konfigurere Apache config-filen for at tillade .htacces-baseret godkendelse.

Du kan gøre dette ved at redigere Apache config filen:

 sudo nano /etc/apache2/apache2.conf 

Find den sektion, der begynder med Directory "/var/www/html" og ændre linjen fra AllowOverride none til AllowOverride AuthConfig

 Valg Indekser FølgSymLinks TilladOverride AuthConfig Kræv alle tildelte 

Gem og luk filen.

Opret adgangskodefilen

Du kan bruge kommandolinjeprogrammet htpasswd til at oprette en adgangskodefil, som Apache kan bruge til at godkende brugere. Opret nu en skjult .htpasswd-fil i konfigurationsmappen "/ etc / apache2".

 sudo htpasswd -c /etc/apache2/.htpasswd authuser1 

Dette vil bede dig om at levere og bekræfte et kodeord til authuser1.

Hvis du vil tilføje en anden bruger, skal du forlade -c argumentet med htpasswd kommandoen.

Nu, for at oprette en anden godkendelse til en anden bruger, authuser2:

 sudo htpasswd /etc/apache2/.htpasswd authuser2 

Du kan se brugernavnet og det krypterede kodeord for hver post ved at køre:

 sudo cat /etc/apache2/.htpasswd 

Du skal give tilladelse til "www-data" -brugeren for at kunne læse .htpasswd-filen.

 sudo chown www-data: www-data /etc/httpd/.htpasswd sudo chmod 0660 /etc/httpd/.htpasswd 

Konfigurer Apache Password Authentication

Du skal oprette en ".htaccess" -fil i det webkatalog, du ønsker at begrænse. I dette eksempel vil jeg oprette en ".htaccess" -fil i mappen "/ var / www / html /" for at begrænse hele dokumentrotten.

 sudo nano /var/www/html/.htaccess 

Tilføj følgende indhold:

 AuthType Basic AuthName "Begrænset indhold" AuthUserFile /etc/apache2/.htpasswd Kræv gyldig bruger 

Her er hvad ovennævnte kode betyder:

  • AuthType : Denne indstilling definerer typen af ​​godkendelse.
  • AuthName : Dette er indhold, der vises på websiden, når du bliver bedt om brugernavn og adgangskode.
  • AuthUserFile : Denne indstilling angiver placeringen af ​​brugeroplysninger.
  • kræve gyldig bruger : Dette indikerer, at kun succesfulde autentiske anmodninger kan indlæse siden.

Gem og luk filen, og genstart Apache for at gøre disse ændringer gældende.

 sudo /etc/init.d/apache2 genstart 

Testing af adgangskode godkendelse

Nu på en fjernmaskine, få adgang til dit website i en webbrowser. Du bliver bedt om at få et brugernavn og adgangskode for at få adgang til websiden.

Hvis du indtaster de korrekte brugeroplysninger, får du adgang til indholdet. Hvis du indtaster de forkerte brugeroplysninger eller klikker på "Cancel", vil du se den uautoriserede fejlside.

Konklusion

Du skal nu have tilstrækkelig viden til at oprette grundlæggende godkendelse til din Apache webserver. Husk også, at adgangskodebeskyttelse skal kombineres med SSL-kryptering, så dine referencer ikke sendes til serveren i almindelig tekst.