Konfigurasikan mod_evasive Untuk Mencegah Serangan DoS dan DDoS Di CentOS

Dalam artikel ini, kita akan belajar cara memasang dan mengkonfigurasi mod_evasive untuk mencegah serangan DoS dan DDoS di CentOS.

Untuk demonstrasi ini, kami telah menggunakan pelayan berdedikasi CentOS 7 64 bit.

Mari kita mulakan.

Modul Apache mod_evasive. Ia membantu untuk mengekalkan serangan yang disebarkan (DoS & DDoS) Attack dan serangan brute force pada pelayan web Apache. Mod_evasive beroperasi dengan memantau permintaan masuk dan melaporkan penyalahgunaan melalui e-mel dan kemudahan syslog. Ini dimaksudkan untuk menjadi alat pengesanan dan pengurusan jaringan dan dikonfigurasi dengan cepat untuk berkomunikasi dengan ipchains, firewall, router, dan banyak lagi.

Mod_evasive menyaksikan permintaan yang mencurigakan dan menolak sebarang alamat IP dari mana-mana yang berikut:

  • Meminta halaman yang sama lebih daripada beberapa kali sesaat
  • Membuat lebih daripada 50 permintaan serentak pada anak yang sama sesaat
  • Membuat sebarang permintaan semasa disenaraihitamkan buat sementara waktu

Prasyarat

  • Pelayan berdedikasi 64-bit CentOS 7 atau pelayan awan (Ia juga berfungsi dengan CentOS 6)
  • Apache Webserver LAMP (Linux, Apache, MySQL, PHP) dipasang dan dikonfigurasi
  • Pelayan Mel

1. Pastikan pelayan dikemas kini:

# yum update -y

2. Pasang EPEL (Pakej Tambahan untuk Enterprise Linux):

# yum install epel-release -y

3. Pasang prasyarat mod_evasive:

# yum install httpd-devel

4. Pasang mod_evasive:

# yum install mod_evasive -y

Sekarang, mod_evasive dipasang

5. Untuk menambahkan konfigurasi mod_evasive ke fail konfigurasi Apache anda:

Secara lalai, baris LoadModule akan ditambahkan dalam mod konfigurasi mod_evasive.conf. Buka fail dan tambahkan baris berikut jika belum ada.

# vi /etc/httpd/conf.d/mod_evasive.conf

LoadModule evasive20_module modules/mod_evasive24.so

Buka fail konfigurasi mod_evasive.conf dan periksa entri berikut.

DOSHashTableSize 3097
DOSPageCount 2
DOSSiteCount 50
DOSPageInterval 1
DOSSiteInterval 1
DOSBlockingPeriod 60
DOSEmailNotify

Anda boleh mengkonfigurasi entri di atas mengikut keperluan anda. Ubah suai DOSEmailNotify ke id e-mel anda.

Untuk memasukkan alamat IP ke senarai putih, masukkan baris berikut dalam fail konfigurasi:

DOSWhitelist 127.0.0.1

DOSWhitelist 127.0.0.*

Anda juga boleh menambah banyak alamat IP.

Satu lagi entri perlu menukar DOSLogDir. Secara lalai, ia merujuk kepada / tmp untuk mekanisme penguncian.

Buat direktori baru di / var / log / :

# mkdir /var/log/mod_evasive

Tetapkan hak milik kepada pengguna apache:

# chown -R apache:apache /var/log/mod_evasive

Sekarang, edit baris berikut dalam konfigurasi mod_evasive dan ubah jalan direktori:

DOSLogDir  /var/log/mod_evasive

Simpan dan keluar dari fail konfigurasi mod_evasive.

Seterusnya, mulakan semula Apache:

# systemctl restart httpd.service

Itu sahaja, mod_evasive dipasang dan dikonfigurasi.

Ketahui lebih lanjut mengenai pilihan konfigurasi mod_evasive Deskripsi pilihan
konfigurasi ini diambil terus dari fail README.

DOSHashTableSize

Saiz jadual hash menentukan bilangan nod peringkat atas untuk jadual hash setiap anak. Menambah bilangan ini akan memberikan prestasi yang lebih pantas dengan mengurangkan jumlah lelaran yang diperlukan untuk sampai ke rakaman, tetapi menghabiskan lebih banyak memori untuk ruang meja. Anda harus meningkatkannya jika anda mempunyai pelayan web yang sibuk. Nilai yang anda tentukan secara automatik akan ditingkat hingga nombor perdana seterusnya dalam senarai bilangan prima (lihat mod_evasive.c untuk senarai primer yang digunakan).

DOSPageCount

Ini adalah ambang jumlah permintaan untuk halaman yang sama (atau URI) setiap selang halaman. Setelah ambang untuk selang tersebut telah dilampaui, alamat IP klien akan ditambahkan ke senarai penyekat.

DOSSiteCount

Ini adalah ambang untuk jumlah permintaan untuk sebarang objek oleh klien yang sama pada pendengar yang sama setiap selang laman. Setelah ambang untuk selang tersebut telah dilampaui, alamat IP klien akan ditambahkan ke senarai penyekat.

DOSPageInterval

Selang untuk ambang jumlah halaman; lalai untuk selang 1 saat.

DOSSiteInterval

Selang untuk ambang kiraan laman web; lalai untuk selang 1 saat.

Tempoh DOSBlocking

Tempoh penyekat adalah jumlah masa (dalam beberapa saat) yang akan disekat oleh pelanggan sekiranya mereka ditambahkan ke senarai penyekat. Selama ini, semua permintaan berikutnya dari klien akan menghasilkan 403 (Dilarang) dan pemasa diset semula (misalnya 10 saat lagi). Oleh kerana pemasa diset semula untuk setiap permintaan berikutnya, tidak perlu mempunyai tempoh sekatan yang panjang; sekiranya berlaku serangan DoS, pemasa ini akan terus diset semula.

DOSEmailNotify

Sekiranya nilai ini ditetapkan, e-mel akan dihantar ke alamat yang ditentukan setiap kali alamat IP disenarai hitam. Mekanisme penguncian menggunakan / tmp menghalang e-mel berterusan daripada dihantar.

Catatan:

Pastikan MAILER diset dengan betul dalam mod_evasive.c (atau mod_evasive20.c). Lalai adalah “/ bin / mail -t% s” di mana% s digunakan untuk menunjukkan alamat e-mel tujuan yang ditetapkan dalam konfigurasi. Sekiranya anda menggunakan linux atau sistem operasi lain dengan jenis mel lain, anda perlu mengubahnya.

DOSSystemCommand

Jika nilai ini ditetapkan, perintah sistem yang ditentukan akan dijalankan setiap kali alamat IP disenarai hitam. Ini dirancang untuk membolehkan panggilan sistem ke penapis ip atau alat lain. Mekanisme penguncian menggunakan / tmp menghalang panggilan sistem berterusan. Gunakan% s untuk menunjukkan alamat IP dari senarai hitam.

DOSLogDir

Pilih direktori temp alternatif
Secara lalai “/ tmp” akan digunakan untuk mekanisme penguncian, yang membuka beberapa masalah keselamatan jika sistem anda terbuka untuk pengguna shell. Sekiranya anda mempunyai pengguna shell yang tidak berkepentingan, anda ingin membuat direktori yang dapat ditulis hanya untuk pengguna yang dijalankan Apache sebagai (biasanya root), kemudian tetapkan ini di httpd.conf anda.

Dalam artikel ini, kami telah membahas bagaimana jurutera sokongan kami memasang dan mengkonfigurasi mod_evasive untuk mencegah serangan DoS dan DDoS di CentOS.


Cara Menyegarkan Semula Item Folder dalam Windows 11

Cara Menyegarkan Semula Item Folder dalam Windows 11

Dengan pilihan Muat Semula dalam menu konteks tiada, inilah cara anda boleh memuat semula item dalam File Explorer pada Windows 11.

Bagaimana untuk menetapkan Editor Klasik sebagai Editor Lalai dalam WordPress dan bukannya Gutenberg

Bagaimana untuk menetapkan Editor Klasik sebagai Editor Lalai dalam WordPress dan bukannya Gutenberg

Editor Gutenberg akan menjadi editor lalai dalam WordPress tidak lama lagi. Anda akan mempunyai pilihan untuk memilih Editor Klasik

🔧 FIX: Pemasangan PHP anda nampaknya tiada sambungan MySQL yang diperlukan oleh WordPress

🔧 FIX: Pemasangan PHP anda nampaknya tiada sambungan MySQL yang diperlukan oleh WordPress

Ingin menjalankan laman WordPress yang diurus sendiri? Hebat. Anda akan belajar berjuta-juta perkara. Salah satu bahagian penting dalam penetapan

FIX: Editor telah mengalami ralat yang tidak dijangka dalam WordPress selepas kemas kini

FIX: Editor telah mengalami ralat yang tidak dijangka dalam WordPress selepas kemas kini

Tidak dapat menulis siaran baharu menggunakan Editor Blok baharu dalam WordPress? Kemungkinan anda akan mendapat “Editor

Bagaimana untuk Membetulkan Ralat Pengumpulan utf8mb4_0900_ai_ci semasa Mengimport Pangkalan Data WordPress

Bagaimana untuk Membetulkan Ralat Pengumpulan utf8mb4_0900_ai_ci semasa Mengimport Pangkalan Data WordPress

Jika anda menukar pemasangan WordPress anda daripada pelayan MySQL 8 kepada MySQL 5.7 (atau ke bawah), kemungkinan besar anda akan menghadapi

Cara Lumpuhkan Editor Blok dan Pasang Editor Klasik dalam WordPress 5.0

Cara Lumpuhkan Editor Blok dan Pasang Editor Klasik dalam WordPress 5.0

Bermula dengan WordPress 5.0, editor lalai pada WordPress ialah editor Blok baharu. Editor baharu berbeza secara radikal

Bagaimana untuk menyelesaikan masalah WordPress 5.0

Bagaimana untuk menyelesaikan masalah WordPress 5.0

WordPress 5.0 akhirnya dilancarkan dan ia membawa bersamanya pengalaman penyuntingan serba baharu dengan Gutenberg

Cara Mengaktifkan tag pendek PHP

Cara Mengaktifkan tag pendek PHP

Dalam artikel ini, kami telah membahas cara mengaktifkan tag pendek PHP. PHP menguraikan fail menggunakan tag pembuka dan penutup, yang kelihatan seperti. Untuk mengaktifkan tag pendek PHP

Konfigurasikan mod_evasive Untuk Mencegah Serangan DoS dan DDoS Di CentOS

Konfigurasikan mod_evasive Untuk Mencegah Serangan DoS dan DDoS Di CentOS

Dalam artikel ini, kita akan belajar cara memasang dan mengkonfigurasi mod_evasive untuk mencegah serangan DoS dan DDoS di CentOS. Modul Apache mod_evasive.

Cara Memasang PHP dengan PHP-FPM Untuk NGINX di CentOS

Cara Memasang PHP dengan PHP-FPM Untuk NGINX di CentOS

cara memasang PHP dengan PHP-FPM untuk NGINX di CentOS. Konfigurasi asas pelayan web NGINX untuk memproses aplikasi PHP dan melayannya di port 80.