Yazılara geri dön
Yazı

Linux Köprüsünde DHCP Aşırı Yüküne Karşı ebtables ile Hız Sınırlama

Linux köprüsünde DHCP solicit paketlerini ebtables ile hız sınırlayarak IP tükenmesini ve ağ kesintilerini önleyin.

NetworkebtablesDHCPLinux bridgerate limiting

DHCP aşırı yükü saldırıları, sahte DISCOVER paketleriyle DHCP sunucusunu overleyerek adres havuzunu tüketir ve geçerli istemcileri engeller. Benim ortamımda, VM ve konteynır ağları için Linux köprüleri kullanıyorum, bu yüzden bu risk gerçek ve önlenmesi gereken bir tehdit. Çözüm karmaşık değil: ebtables kullanarak köprü seviyesinde DHCP solicit paketlerini hız sınırlayarak aşırı trafiği DHCP sunucusuna ulaşmadan önce düşürebiliriz, böylece kullanılabilirlik korunur.

İlk adım, köprü arayüzünü belirlemek—genellikle br0 veya benzeri bir isim kullanılır. Ben örnek olarak br0 kullanacağım. Hedefim, DHCPv4 solicit paketlerini (hedef port 67, kaynak port 68) güvenli bir hızla sınırlamaktır. Ben 5 paket/saniye hızında ve 10 paketlik patlama ile sınır koyuyorum; bu, normal DHCP değişimini engellemeden aşırı yükü etkili bir şekilde bloke eder.

Kullanıyorum ebtables kuralı şu şekildedir:

ebtables -A INPUT -p IPv4 --ip-protocol udp --ip-destination-port 67 --ip-source-port 68 \
  -j limit --limit 5/second --limit-burst 10

Bu komut, köprü tablosunun INPUT zincirine bir kural ekler. Kaynak portu 68 (istemci) ve hedef portu 67 (sunucu) olan UDP paketlerini eşleştirir ve ardından hız sınırını uygular. Sınır aşılırsa, varsayılan olarak paket DROP edilir.

Bu kuralların yeniden başlatmalar boyunca kalıcı olmasını sağlamak için, kuralları kaydetmem gerekir. Debian/Ubuntu sistemlerinde şu şekilde yaparım:

ebtables-save > /etc/ebtables/rules

Ardından, sistem önyüklemesinde bu kuralların yüklenmesini sağlar; systemd tabanlı sistemlerde ebtables.service’i etkinleştirmek genellikle yeterli olur.

Kuralın aktif olup olmadığını kontrol etmek için şu komutu kullanabilirim:

ebtables -L INPUT -v

Çıktıda limit eşleşmesini ararım. Eğer sınır tarafından eşleşen paketler görüyorsam, kural çalışıyor demektir.

İpucu: Mümkünse, anahtarlarınızda DHCP snooping ile birleştirin. ebtables ana bilgisayar seviyesinde koruma sağlarken, anahtar seviyesindeki DHCP snooping kötü niyetli DHCP sunucularını durdurur—bu farklı ama ilgili bir tehdidi önler.

İlk olarak IPv6 komşu keşfi saldırılarıyla ilgili yazımda da belirttiğim gibi, birden fazla noktada savunma katmanlamak kritik öneme sahiptir. Benzer şekilde, burada ebtables'i ana bilgisayar tabanlı bir koruma olarak kullanıyorum ve altyapının kaynak sahtekarlığını kenarda ele geçirmesini bekliyorum.

Bu yaklaşım, çekirdek yaması veya ek yazılım gerektirmez. Sadece zaten bulunan netfilter araçlarını kullanır, bu da onu hafif ve güvenilir yapar. Kamu sektörü veya e-ticaret ortamlarında çalışıyorsanız ve süreklilik kritikse, DHCP aşırı yükünü köprü seviyesinde durdurmak basit ve etkili bir adımdır—kesinlikle öneririm.


Kapak görseli: Unknown · CC0 (Openverse / kamu malı) · https://www.rawpixel.com/image/6038427/photo-image-public-domain-technology-line