This blog talks about Computer, Security, Information technology, SEO, Video, etc. Now you can find all free things, Information Technology and Tips and Trick in this blog. JOIN ME KANG ASU

Breaking

Tuesday, 2 March 2021

Gatekeeper - Sistem Perlindungan DDoS Sumber Terbuka Pertama

 Kang Asu

Gatekeeper - Sistem Perlindungan DDoS Sumber Terbuka Pertama



Gatekeeper adalah sistem perlindungan DoS open source pertama Ini dirancang untuk menskalakan ke bandwidth puncak apa pun, sehingga dapat menahan serangan DoS baik hari ini maupun besok. Terlepas dari arsitektur Gatekeeper yang terdistribusi secara geografis , kebijakan jaringan yang menjelaskan semua keputusan yang harus diterapkan pada lalu lintas masuk bersifat terpusat. Kebijakan terpusat ini memungkinkan operator jaringan untuk memanfaatkan algoritme terdistribusi yang tidak akan dapat dijalankan di bawah latensi yang sangat tinggi (mis. Database terdistribusi) dan untuk melawan beberapa serangan DoS multi-vektor sekaligus.

Pengguna Gatekeeper yang dimaksud adalah operator jaringan institusi, penyedia layanan dan konten, jaringan perusahaan, dll. Ini tidak dimaksudkan untuk digunakan oleh pengguna Internet individu.

Untuk informasi lebih lanjut, lihat wiki Gatekeeper .




Cara Mengatur

Konfigurasi Hugepages

DPDK membutuhkan penggunaan halaman pelukan; instruksi untuk memasang hugepages tersedia dalam dokumentasi persyaratan . Pada banyak sistem, pengaturan hugepages berikut sudah cukup:

$ echo 256 | sudo tee /sys/kernel/mm/hugepages/hugepages-2048kB/nr_hugepages


Opsi 1: Dapatkan Paket

Paket Debian untuk Gatekeeper tersedia di halaman Rilis proyek .


Install

Setelah paket diunduh, mereka dapat diinstal dengan perintah di bawah ini:

$ tar -zxvf gatekeeper-ubuntu-18.04-packages.tar.gz
$ cd gatekeeper-ubuntu-18.04-packages
$ sudo dpkg -i libgkrte-*.deb \
libgkdpdk-dev_*_amd64.deb \
gatekeeper-dpdk_*_amd64.deb \
gatekeeper-dpdk-dev_*_amd64.deb \
gatekeeper-dpdk-igb-uio-dkms_*_amd64.deb \
gatekeeper-dpdk-rte-kni-dkms_*_amd64.deb \
gatekeeper-bird_*_amd64.deb \
gatekeeper_*_amd64.deb

The gatekeeper-dpdk-devpaket ketergantungan dari paket DKMS, yang membangun modul-modul kernel masing-masing selama instalasi paket dan kernel upgrade.


Konfigurasikan Adaptor Jaringan

Edit /etc/gatekeeper/envvarsfile dan masukkan nama adapter jaringan yang akan diikat ke DPDK. Sebagai contoh:

GATEKEEPER_INTERFACES="eth0 eth1"

Alternatifnya, alamat PCI antarmuka dapat ditentukan:

GATEKEEPER_INTERFACES="0000:00:07.0 0000:00:08.0"

Dalam file yang sama, Anda dapat secara opsional menentukan opsi Lapisan Abstraksi Lingkungan dalam DPDK_ARGSvariabel dan opsi khusus Gatekeeper di GATEKEEPER_ARGS.


Bagaimana cara menjalankannya

Jalankan perintah di bawah ini untuk memulai Gatekeeper dan untuk memastikannya dimulai secara otomatis saat reboot.

$ sudo systemctl start gatekeeper
$ sudo systemctl enable gatekeeper


Opsi 2: Bangun dari Ketergantungan Penginstalan Sumber


Instal dependensi perangkat lunak berikut:

$ sudo apt-get update
$ sudo apt-get -y -q install git clang devscripts doxygen hugepages \
build-essential linux-headers-`uname -r` libmnl0 libmnl-dev \
libkmod2 libkmod-dev libnuma-dev libelf1 libelf-dev libc6-dev-i386 \
autoconf flex bison libncurses5-dev libreadline-dev

Catatan: Kedua libmnl0dan libmnl-devdiperlukan untuk mengkompilasi dan menjalankan gatekeeper, tetapi hanya libmnl0diperlukan untuk hanya menjalankan gatekeeperKedua libkmod2dan libkmod-devyang diperlukan untuk mengkompilasi dan menjalankan gatekeeper, tetapi hanya libkmod2diperlukan untuk hanya menjalankan gatekeeperlibnuma-devdiperlukan untuk menyusun DPDK terbaru dan untuk mendukung sistem NUMA. Paket libelf-devdiperlukan untuk menyusun DPDK dengan dukungan membaca program BPF dari file ELF, tetapi hanya libelf1diperlukan untuk menjalankannya. Paket libc6-dev-i386tersebut diperlukan untuk mengkompilasi program BPF di dalam folder bpf/The autoconfflexbisonlibncurses5-dev, dan libreadline-devpaket adalah untuk BIRD. The devscriptspaket digunakan untuk membangun Gatekeeper Debian paket.

Untuk menggunakan DPDK, pastikan Anda memiliki semua persyaratan lingkungan .


Gandakan Repositori

Clone repositori Gatekeeper, termasuk submodul yang berisi dependensi Gatekeeper:

$ git clone --recursive http://github.com/AltraMayor/gatekeeper.git

Jika Anda tidak menggunakan --recursiveopsi klon, Anda perlu mendapatkan submodul yang berisi ketergantungan dari dalam gatekeeper direktori:

$ git submodule init
$ git submodule update


Menyusun

Bagian ini menjelaskan bagaimana membangun Gatekeeper secara manual. Jika Anda ingin membuat paket Debian, lihat bagian Cara membuat paket .

Saat berada di gatekeeperdirektori, jalankan skrip pengaturan:

$ . setup.sh

Skrip ini mengkompilasi DPDK, LuaJIT, dan BIRD, dan memuat modul kernel yang diperlukan. Selain itu, ini menyimpan nama antarmuka dan alamat PCI masing-masing di file lua/if_map.luasehingga nama antarmuka dapat digunakan di file konfigurasi Gatekeeper.

Ini juga menetapkan dua variabel lingkungan: RTE_SDKdan RTE_TARGETMereka harus diatur sebelum gatekeeperakan dikompilasi.

Setelah menjalankan skrip pengaturan, Anda mungkin ingin menyimpan variabel lingkungan di file preferensi shell Anda. Misalnya, di Bash, Anda dapat melakukan:

$ echo "export RTE_SDK=${RTE_SDK}" >> ${HOME}/.profile
$ echo "export RTE_TARGET=${RTE_TARGET}" >> ${HOME}/.profile

Jika tidak, setiap kali Anda login, Anda perlu mengatur variabel lingkungan ini lagi.

Setelah DPDK dikompilasi dan variabel ditetapkan, gatekeeperdapat dikompilasi:

$ make


Konfigurasikan Adaptor Jaringan

Sebelum gatekeeperdapat digunakan, adaptor jaringan harus terikat ke DPDK. Untuk ini, Anda dapat menggunakan skrip dependencies/dpdk/usertools/dpdk-devbind.pySebagai contoh:

$ sudo dependencies/dpdk/usertools/dpdk-devbind.py --bind=uio_pci_generic enp131s0f0

Perintah ini mengikat antarmuka enp131s0f0ke uio_pci_genericdriver sehingga frame dapat diteruskan langsung ke DPDK, bukan ke kernel. Perhatikan bahwa pengikatan ini harus dilakukan setelah Gatekeeper disiapkan dalam langkah-langkah di atas sehingga antarmuka terikat muncul di daftar antarmuka di lua/if_map.lua.


Bagaimana Menjalankan

Setelah gatekeeperdikompilasi dan lingkungan dikonfigurasi dengan benar, jalankan:

$ sudo build/gatekeeper [EAL OPTIONS] -- [GATEKEEPER OPTIONS]

Di mana [EAL OPTIONS]ditentukan sebelum tanda hubung ganda dan mewakili parameter untuk Lapisan Abstraksi Lingkungan DPDK dan [GATEKEEPER OPTIONS]ditentukan setelah tanda hubung ganda dan mewakili opsi khusus Penjaga Gerbang .

Konfigurasi awal sistem, termasuk konfigurasi perangkat dan memori di DPDK, akan dicatat ke stdout. Setelah Gatekeeper di-boot, semua informasi di-output ke log Gatekeeper.


Bagaimana membangun paket

Paket Gatekeeper Debian dapat dibangun dengan perintah di bawah ini. Mereka dimaksudkan untuk dijalankan dari root repositori dan menganggap submodul git telah ditarik, dan dependensi build telah diinstal, seperti yang diinstruksikan di atas. Gatekeeper dan submodul akan secara otomatis dikompilasi selama proses pembuatan paket.

$ tar --exclude-vcs -Jcvf ../gatekeeper_1.0.0.orig.tar.xz -C .. gatekeeper
$ debuild -uc -us

Paket Gatekeeper akan tersedia di direktori induk.




Regards

Kang Asu

No comments:

Post a Comment

# Silahkan berkomentar, bertanya dan kritik dengan sopan
# Disini anda boleh menyisipkan Link di kolom komentar
# Tetapi akan saya moderasi atau Review terlebih dahulu tiap komentar
# Jangan sampai komentar anda mengandung SPAM.

# Terima Kasih - Regards Muhammad Sobri Maulana