Korak 1: Instaliranje httpd-devel
Korak 2: Preuzimanje i instaliranje mod_evasive
Korak 3: Dodavanje modula u Apache
Korak 4: Konfiguriranje i izmjena postavki
Korak 5: Ponovno pokretanje web poslužitelja
Mod_evasive je modul za Apache koji automatski poduzima akciju kada se otkrije HTTP DoS napad ili napad grubom silom. Mod_evasive može se prijaviti i prijaviti zloupotrebu te obavijestiti probleme putem e-pošte. Prije nego što slijedite ovaj vodič, trebali biste već imati postavljen LAMP poslužitelj koji ispravno funkcionira.
Ovaj vodič je napisan za CentOS i njegove varijacije (kao što je RHEL) i Debian i njegove varijacije (kao što je Ubuntu).
Modul stvara tablicu IP adresa i URL-ova. Ako su uvjeti postavljeni u konfiguraciji (kao što je opisano kasnije u ovom dokumentu) ispunjeni, korisnici koji zlostavljaju dobit će 403 (zabranjena) pogrešku. Također, IP adresa se bilježi, a ako je opcija postavljena, na navedenu email adresu će biti poslana e-mail adresa.
Korak 1: Instaliranje httpd-devel
Paket httpd-devel sadrži potrebne datoteke koje su vam potrebne za izgradnju dinamičkih zajedničkih objekata za Apache. Ovaj paket nam je potreban za instalaciju modula, jer ćemo ga sami sastaviti u sljedećim koracima.
Na CentOS/RHEL, izvršite:
yum install httpd-devel
Na Debian/Ubuntu, pokrenite:
apt-get install apache2-utils
Nakon što je ovaj paket uspješno instaliran, prijeđite na sljedeći korak. Ako instalacija nije ispravno dovršena, sljedeći korak (najvjerojatnije) neće uspjeti.
Korak 2: Preuzimanje i instaliranje mod_evasive
Metoda 1: Sastavljanje
Preuzmite modul:
cd /usr/src
wget http://www.zdziarski.com/blog/wp-content/uploads/2010/02/mod_evasive_1.10.1.tar.gz
Izdvoj modul:
tar xzf mod_evasive*.tar.gz
Idite do imenika:
cd mod_evasive
Zatim ćemo koristiti apxs2, alat stvoren za izgradnju i instalaciju modula koji proširuju funkcionalnost Apachea. Apxs2gradi Dynamic Shared Object, zbog čega smo instalirali httpd-develu koraku #1.
Izvršiti:
apxs2 -cia mod_evasive20.c
Metoda 2: instalacija pomoću yum(preporučeno)
Kada imate epel-releaseinstalirano spremište, mod_evasivedostupno je putem yum.
Dodajte spremište:
yum install epel-release
Instalirajte modul pomoću yum:
yum install mod_evasive
Korak 3: Dodavanje modula u Apache
Općenito, Apache učitava sve module iz mods-enabled, tako da kad god se modul doda u tu mapu, ne treba ga ručno dodati u konfiguraciju Apachea. Otvorite svoju konfiguracijsku datoteku da provjerite je li to slučaj.
Na CentOS-u je relevantna datoteka: /etc/httpd/conf/httpd.conf
Na Ubuntuu je relevantna datoteka: /etc/apache2/apache2.conf
Potražite Include. Linija poput Include mods-enabled/*.confApachea govori da učita sve module. Ako ga nema, dodajte taj redak na vrh datoteke i ponovno pokrenite Apache.
Za Ubuntu, dodajte sljedeći sadržaj na dno datoteke:
LoadModule evasive20_module /usr/lib/httpd/modules/mod_evasive20.so
Korak 4: Konfiguriranje i izmjena postavki
Dodajte sljedeći blok u konfiguracijsku datoteku. Putevi su isti kao oni u koraku #3.
<IfModule mod_evasive20.c>
DOSHashTableSize 3097
DOSPageCount 2
DOSSiteCount 50
DOSPageInterval 1
DOSSiteInterval 1
DOSBlockingPeriod 60
DOSEmailNotify <william@williamdavidedwards.com>
</IfModule>
Brzi pregled ovih parametara možete pronaći u README. Datoteku README možete pročitati na sljedeći način:
cat /usr/src/cd mod_evasive/README
Najvjerojatnije ćete s vremena na vrijeme morati podesiti ove postavke kako biste bili sigurni da su prikladne za vaš poslužitelj i web-mjesta. Uostalom, neki poslužitelji imaju više aktivnosti i prometa od drugih.
Korak 5: Ponovno pokretanje web poslužitelja
Ponovno pokrenite Apache web poslužitelj kako bi promjene stupile na snagu i kako bi se modul učitao:
service httpd restart
Provjerite je li modul učitan u Apache:
httpd -M | grep evasive
Ovo bi se trebalo vratiti evasive20_module (shared). Ako nije, modul nije ispravno učitan i preporučujemo da ponovno provjerite konfiguracijske datoteke i da li su ispravno spremljene.
Imajte na umu da ovaj modul nije zamjena za DDoS zaštitu jer ne može funkcionirati kada se iskoristi kapacitet poslužitelja. Zapravo, Vultr nudi DDoS zaštitu koja je vrlo korisna za bolju zaštitu poslužitelja (kao i korištenje ovog modula). Za jednostavnije prijetnje, posebno napade temeljene na skriptama, modul radi svoj posao i svakako je koristan.
Sada ste instalirali mod_evasivemodul u Apacheu i time svoju web aplikaciju učinili sigurnijom.