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, og den har næsten 40% af alle serverne i verden. Hvis du er en webmaster eller administrator, der opretholder en Apache-server, er det vigtigt for dig at vide, hvordan du sikrer Apache og forhindrer det i at blive hacket. I denne artikel beskriver vi nogle tips og tricks, som du kan bruge til at sikre din Apache-server.

Bemærk : Vi bruger Ubuntu 14.04 til denne vejledning.

Installer og opdater Apache

For det første skal du opdatere og installere Apache til dit system.

Kør herfor følgende kommando:

 sudo apt-get opdatering sudo apt-get install apache2 

Skjul Apache Version

Apache viser som standard den version af din Apache webserver, der er installeret på dit system med navnet på operativsystemet på din server.

I skærmbilledet ovenfor kan du se Apache-versionen og operativsystemet installeret på din server. Dette kan være et stort sikkerhedsproblem for din webserver. For at skjule disse oplysninger skal du redigere Apaches hovedkonfigurationsfil ("/etc/apache2/conf-enabled/security.conf").

 sudo nano /etc/apache2/conf-enabled/security.conf 

Tilføj / rediger følgende linje:

 Server Signatur Off ServerTokens Prod 

Gem filen og genstart apache-tjenesten.

 sudo /etc/init.d/apache2 genstart 

Sluk katalogbrowsing og deaktiver symbolske links

Som standard er biblioteksliste aktiveret på Apache-serveren. Katalogoversigt viser hele mappen med alle filerne fra Apache-serveren. Hvis dette er aktiveret, kan en angriber let se enhver fil, analysere den og få følsomme oplysninger om et program.

Du kan se standardkataloglisten i billedet nedenfor.

Du kan deaktivere denne indstilling ved at redigere Apache-konfigurationsfilen.

 sudo nano /etc/apache2/apache2.conf 

Tilføj / rediger følgende linje:

 Valg -FølgSymLinks TilladOvertride None Kræv alle tildelte 

Bemærk : Ovenstående kode forudsætter, at dine websider serveres fra mappen "/ var / www / html". Hvis du har ændret den offentlige mappe til en brugerdefineret placering, skal du ændre adressepaden i ovennævnte kode.

Linjen Options -FollowSymLinks deaktiverer også symbolske links. Hvis du vil aktivere symbolske links, skal du fjerne "-" tegnet foran FollowSymLinks, så det bliver Options FollowSymLinks.

Gem filen og genstart Apache-serveren.

Prøv derefter at besøge internettet i en browser, og du får en forbudt fejl, der vises i nedenstående billede.

Deaktiver unødvendige moduler

Apache leveres som standard med flere installerede moduler, der ikke er nødvendige til normal brug. Det anbefales at trimme fedtet og deaktivere alle de unødvendige moduler. Du kan liste alle aktiverede moduler på din server ved hjælp af følgende kommando:

 sudo ls / etc / apache2 / mods-enabled / 

Dette viser output som vist i nedenstående billede.

Fra de ovenstående moduler er nogle moduler som "status" og "autoindex" aktiveret, men ikke nødvendige.

Du kan deaktivere disse moduler ved hjælp af følgende kommando:

 sudo a2dismod autoindex sudo a2dismod status sudo /etc/init.d/apach2 genstart 

Gør brug af ModSecurity

Mod-sikkerhed er et gratis Apache-modul, der bruges til at beskytte din webserver mod forskellige angreb som SQL-indsprøjtning, cross-site scripting, session kapring, brute force og mange andre udbytter. Det giver dig også mulighed for at overvåge trafikken i realtid.

Du kan installere mod sikkerhed ved hjælp af følgende kommando:

 sudo apt-get install libapache2-modsecurity 

For at kontrollere om mod_security-modulet kører, skal du bruge følgende kommando:

 sudo apachectl -M | grep - farve sikkerhed 

Billedet vist nedenfor indikerer at modulet blev indlæst.

For at aktivere mod_security reglerne skal du omdøbe og redigere den mod sikkerhed anbefalede konfigurationsfil og indstille SecRuleEngine til On .

For dette køre følgende kommando:

 sudo mv /etc/modsecurity/modsecurity.conf-recommended /etc/modsecurity/modsecurity.conf sudo nano /etc/modsecurity/modsecurity.conf 

Tilføj / rediger følgende linje:

 SecRuleEngine On 

Genstart nu Apache for ændringerne træder i kraft.

Der er mange sikkerhedsregler, der følger med Modesecurity (kaldet Core Rule Set), der er placeret i mappen "/ usr / share / modsecurity-crs". Nu skal du aktivere disse regler for at få det til at fungere med Apache.

Du kan gøre dette ved at redigere filen "/etc/apache2/mods-enabled/security2.conf".

 sudo nano /etc/apache2/mods-enabled/security2.conf 

Tilføj / rediger følgende linje:

 IncludeOptional /etc/modsecurity/*.conf IncludeOptional "/usr/share/modsecurity-crs/*.conf" IncludeOptional "/usr/share/modsecurity-crs/base_rules/*.conf 

Gem filen og genstart Apache.

Sluk server side omfatter og CGI udførelse.

Det anbefales at deaktivere server side inkluderer og CGI udførelse, hvis det ikke er nødvendigt.

For at gøre dette skal du redigere Apache main config-filen.

 sudo nano /etc/apache2/apache2.conf 

Tilføj / rediger følgende linje:

 Valg -FølgSymLinks -Includes -ExecCGI AllowOverride None Kræv alle tildelte 

Gem filen og genstart Apache.

Du kan også gøre dette til en bestemt mappe. For eksempel for at slukke for server side indeholder og cgi fil henrettelser for mappen "/ var / www / html / webdir1" ddd / rediger følgende linje:

 Indstillinger -Inkluderer -ExecCGI 

Gem filen og genstart Apache.

Begrænsning af store anmodninger

Apache har som standard ingen grænse for størrelsen af ​​HTTP-anmodningen. Dette gør det muligt for en hacker at sende en stor mængde data. Apache har flere direktiver, der giver dig mulighed for at angive en ordentlig forespørgselsstørrelse. Dette vil beskytte din webserver mod et nægtelse af tjenesteangreb.

Du kan indstille værdien fra 0 (ubegrænset) til 2147483647 (2 GB) i Apache main config-filen.

For eksempel begrænse forespørgselsstørrelsen for mappen "/ var / www / html / webdir1" til 200K.

 sudo nano /etc/apache2/apache2.conf 

Tilføj / rediger følgende linje:

 LimitRequestBody 204800 

Gem filen og genstart Apache.

Tillad browsing uden for dokumentroten

Det anbefales, at Apache kun har adgang til dokumentets rodmappe. Du kan sikre rodmappen (/) ved at indstille følgende linje:

 sudo nano /etc/apache2/apache2.conf 

Tilføj / rediger følgende linje:

 Valg Ingen Bestil benægt, lad nægte fra alle 

Dette er hvad koden gør:

  • Options None : Dette vil deaktivere alle indstillinger.
  • Order deny, allow : Den rækkefølge, i hvilken kommandoen tillades og nægtes.
  • Deny from all : Dette vil nægte en anmodning fra alle til rodmappen.

Gem filen og genstart Apache.

Hold Apache opdateret

Nye Apache-opdateringer vil indeholde nye rettelser og patches, der reducerer sårbarheden af ​​din Apache-server, så det anbefales at bruge den nyeste version af Apache-serveren.

Du kan opdatere din Apache til den nyeste version ved hjælp af følgende kommando:

 sudo apt-get install apache2 - reinstall 

Konklusion

Jeg håber, at dette indlæg vil hjælpe dig med at sikre din Apache-server. Du finder flere advarsels tips og tricks til at sikre Apache-serveren i mit næste indlæg. Du er velkommen til at kommentere nedenfor, hvis du har spørgsmål.