frame

Sveiki apsilankę!

Jei forume lankaisi pirmą kartą, kviečiame registruotis ir prisijungti prie diskusijų.

Prisijungti Registruotis

mod_evasive įdiegimas CentOS 6 aplinkoje

IV_RomanLIV_RomanL Interneto vizija
edited spalio 15 Į Web serveriai
Mod_evasive tai Apache modulis suteikiantis galimybę išvengti DoS bei Brute Force tipo atakų. Modulis lengvai konfigūruojamas ir pritaikomas konkrečiai situacijai.
Pamoka sukurta naudojant CentOS 6 64-bit operacinę sistemą.


0. Patogesniam failų redagavimui naudojama "nano" aplikacija. Ją galite įdiegti įvykdę komandą SSH konsolėje:
yum install nano -y

1. Įdiegiame rekiamą paketą mod_evasive įdiegimui:
yum install httpd-devel -y

2. Parsiunčiame mod_evasive aplikacijos archyvą ir jį išskleidžiame:
wget http://www.zdziarski.com/blog/wp-content/uploads/2010/02/mod_evasive_1.10.1.tar.gz
tar zxvf mod_evasive*

3. Pridedame modulį prie Apache tarnybos:
cd mod_evasive
/usr/sbin/apxs -i -a -c mod_evasive20.c

4. Sukuriame mod_evasive konfigūracinį failą:
nano /etc/httpd/conf/httpd-evasive.conf
įklijuojame pavyzdinį turinį:
<IfModule mod_evasive20.c>
DOSHashTableSize 3097
DOSPageCount 2
DOSSiteCount 50
DOSPageInterval 1
DOSSiteInterval 1
DOSBlockingPeriod 3600
DOSEmailNotify root
</IfModule>

5. Konfigūruojam httpd.conf failą:
nano /etc/httpd/conf/httpd.conf
ties 227 eilute įklijuojam:
Include conf/httpd-evasive.conf

6. Perkrauname Apache tarnybą ir ištestuojame modulio veikimą:
service httpd restart
Naudojame mod_evasive testavimo įrankį esantį kataloge mod_evasive:
cd

cd mod_evasive
perl test.pl
Turėtumėte pamatyti pavyzdines eilutes:
HTTP/1.1 403 Forbidden
HTTP/1.1 403 Forbidden
HTTP/1.1 403 Forbidden
HTTP/1.1 403 Forbidden
HTTP/1.1 403 Forbidden
HTTP/1.1 403 Forbidden
HTTP/1.1 403 Forbidden
HTTP/1.1 403 Forbidden
HTTP/1.1 403 Forbidden
HTTP/1.1 403 Forbidden
HTTP/1.1 403 Forbidden
HTTP/1.1 403 Forbidden
HTTP/1.1 403 Forbidden
HTTP/1.1 403 Forbidden
HTTP/1.1 403 Forbidden
<...>
Sveikiname, mod_evasive modulis sėkmingai įdiegtas.

---
Modulio konfigūracijos aprašui bei pavyzdinėms konfigūracijos reikšmėms perskaitykite README failą esantį mod_evasive archyve.
Pažymėtos temos:

Komentarai

  • ApocalApocal Naujokas (-ė)
    edited 2012 liepos 27
    Jei pas mano po testo rašo:

    "HTTP/1.1 404 Not Found"

    Tai gerai ar blogai ?
  • ApocalApocal Naujokas (-ė)
    edited 2012 liepos 27
    MiXFiX parašė: »
    Juk aiškiai tau rašo:

    Turėtumėte pamatyti pavyzdines eilutes:


    Tai tu ir skaityk aiškiai, pas mane eina 404 error, turi eiti 403.
  • IV_RomanLIV_RomanL Interneto vizija
    edited 2012 liepos 27
    Sveiki,

    atverkite etc/httpd/conf/httpd-evasive.conf failą ir pridėkite eilutę
    DOSWhitelist 127.0.0.1
    

    perkraukite apache ir atlikite testą.
  • MiXFiXMiXFiX Dalyvis (-ė)
    edited 2012 rugpjūčio 3
    dar maža klaidelė:
    4. Sukuriame mod_evasive konfigūracinį failą:

    Kodas:

    nano etc/httpd/conf/httpd-evasive.conf

    trūksta prieš etc /
  • MiXFiXMiXFiX Dalyvis (-ė)
    edited 2012 rugpjūčio 4
    Yra gan didelė problema, naudojant mod_rewrite modulį su šiuo moduliu. Jei tinklapis naudoja .htaccess su mod rewrite nustatymais, apsauga pradeda neveikti. Tik būnant pagrindiniame puslapyje apsauga veikia.
    tiksliau: puslapis.lt - apsauga veikia.
    puslapis.lt/straipsnis-apie-betka - apsauga neveikia, nes adresas yra sukuriamas naudojant rewrite modulį.

    .htaccess turinys:
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>
    
  • ApocalApocal Naujokas (-ė)
    edited 2012 rugpjūčio 4
    O, jei .htaccess faile tiesiog yra, kad iš domenas.lt nukreiptu į www.doemnas.lt ? Irgi neveiks ?
  • MiXFiXMiXFiX Dalyvis (-ė)
    edited 2012 rugpjūčio 4
    Apocal parašė: »
    O, jei .htaccess faile tiesiog yra, kad iš domenas.lt nukreiptu į www.doemnas.lt ? Irgi neveiks ?

    Veiks. Bet gal yra kažkoks būdas, kad veiktų su rewrite nustatymais :confused:
  • IV_RomanLIV_RomanL Interneto vizija
    edited 2012 rugpjūčio 6
    Sveiki,

    deja, mod_evasive yra ganėtinai senas (tačiau vis dar efektyvus). Net pats modulio kūrėjas negali pasakyti kaip išspręsti šią problemą.
  • MiXFiXMiXFiX Dalyvis (-ė)
    edited 2012 rugpjūčio 6
    O gal jau yra kitų variantų, keičiančių mod evasive į kažka panašaus?
  • IV_RomanLIV_RomanL Interneto vizija
    edited 2012 rugpjūčio 6
    Panašus sprendimas būtų http://opensource.adnovum.ch/mod_qos/ , tačiau veikiantis Debian operacinėje sistemoje.
  • velnioadvokatasvelnioadvokatas Naujokas (-ė)
    edited 2012 lapkričio 11
    [root@server mod_evasive]# /usr/sbin/apxs -i -a -c mod_evasive20.c
    /usr/lib64/apr-1/build/libtool --silent --mode=compile gcc -prefer-pic -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -Wformat-security -fno-strict-aliasing  -DLINUX=2 -D_REENTRANT -D_GNU_SOURCE -pthread -I/usr/include/httpd  -I/usr/include/apr-1   -I/usr/include/apr-1   -c -o mod_evasive20.lo mod_evasive20.c && touch mod_evasive20.slo
    /usr/lib64/apr-1/build/libtool: line 970: gcc: command not found
    apxs:Error: Command failed with rc=65536
    .
    
    Help? Neprisideda modulis?
  • IV_RomanLIV_RomanL Interneto vizija
    edited 2012 lapkričio 11
    Sveiki,

    įvykdykite komandą:
    yum install gcc -y
    
Norėdami palikti komentarą, turite prisijungti arba registruokis.