GNU/Linux >> Belajar Linux >  >> Linux

Haruskah saya membatasi paket dengan iptables?

Batas kecepatan bukanlah pencegahan melainkan undangan untuk DoS - terutama dalam rasa yang disajikan di atas di mana paket akan dijatuhkan jika tingkat tertentu dari paket yang tidak diautentikasi tanpa informasi negara telah terlampaui. Karena setiap orang dapat memalsukan paket (termasuk alamat IP sumber) pada status koneksi ini tanpa upaya yang lebih besar, vektor serangan DoS baru yang memanfaatkan fasilitas batas kecepatan Anda akan muncul.

Batas tarif biasanya hanya masuk akal jika Anda memiliki

  1. batas koneksi keras atau lunak yang dapat diprediksi dalam konfigurasi Anda
  2. tetapkan batas kecepatan untuk lalu lintas umum di bawah batas ini agar dapat menyiapkan koneksi untuk lalu lintas prioritas atau administratif terlepas dari bebannya

Meskipun 1. seringkali cukup sulit untuk ditentukan bahkan mengganggu, 2. jelas hanya akan berfungsi jika Anda dapat membedakan lalu lintas "prioritas atau administratif" dengan andal dari yang lain setelah pengaturan koneksi - mis. jika datang melalui antarmuka jaringan yang berbeda.

Dalam kasus lain, ini lebih baik mengurangi ketahanan sistem Anda daripada menambahnya.


Masalah dengan -m limit adalah batasan semua paket TCP apa pun alamat IP sumbernya. Jadi, jika Anda memiliki batasan rendah untuk paket syn seperti

-A INPUT -p tcp  --syn -m limit --limit 30/s --limit-burst 30 -j ACCEPT
-A INPUT -p tcp --syn -j DROP

hanya satu klien dengan baris perintah hping yang dapat menghapus server Anda dengan mengirimkan sebanyak mungkin paket tcp dengan bendera SYN karena aturan batas akan cocok dan akan menjatuhkan banyak paket apa pun alamat IP sumbernya. limit tidak membuat perbedaan antara lalu lintas yang baik dan lalu lintas yang buruk. Ini juga akan menurunkan lalu lintas masuk yang bagus.

hping bisa jadi seperti:

hping thetargetedhostip -p 80 -S -c 1000 -i u20000

Lebih baik menggunakan hashlimit untuk membatasi koneksi tcp masuk per alamat IP . Aturan berikut akan cocok hanya jika 30 paket per detik akan diterima mengurangi jumlah paket resmi per IP hingga 15 paket per detik.

-A INPUT -p tcp --syn -m hashlimit --hashlimit 15/s --hashlimit-burst 30 --hashlimit-mode srcip --hashlimit-srcmask 32 --hashlimit-name synattack -j ACCEPT 
-A INPUT -p tcp --syn -j DROP

Nyatanya, saya YAKIN bahwa banyak server yang dimatikan hari ini tidak diambil karena kehabisan sumber daya selama serangan tetapi karena modul batas menghentikan semua lalu lintas yang masuk.


Linux
  1. Bagaimana cara mengkompilasi file .c dengan menyertakan OpenSSL?

  2. Teruskan lalu lintas http ke alamat ip lain dengan iptables

  3. Batasi akses SSH ke klien tertentu berdasarkan alamat IP

  1. Blokir rentang IP dari negara-negara dengan GeoIP dan iptables

  2. Mengizinkan FTP dengan IPTables

  3. Cara Mengatur Server Linux Sebagai Router dengan NAT

  1. Tangkap paket dengan tcpdump

  2. Gunakan iptables dengan CentOS 7

  3. Linux IPTables:Cara Menambahkan Aturan Firewall (Dengan Contoh Izinkan SSH)